Skip to content

Decision models

Typed judgments — a choice, a score or a yes/no — from a model built for deciding, not writing.

Guide · Providers and models · Tasks and subthreads

A decision model reads a short state and answers typed questions with probabilities. Synoec uses decision models three ways: directly in a chat with Mode → Decisions, as a Decision companion your chat model can consult, and optionally to pick Specialists and tools. Decision models (System One, Jev, Clef, or the local Julia-1 and GLiNER2.5-Decide) are separate from generative chat models and never grant tools or permissions.

  1. In Settings → Profiles & Providers, choose New Provider, then the SystemOne compatible card. Choose API key or No key, enter the service address, and name the connection.
  2. On the Models step, tick the decision models Synoec found and choose Activate. Then include the connection in a Profile.
  3. In the composer’s model picker, open Decision model and choose it.
Terminal window
synoec setup --provider systemone-compatible --connection decisions \
--base-url https://server.example --credential-mode api-key --api-key-stdin --connect-only
synoec decision models --connection decisions --json
synoec decision configure --connection decisions --model jev
synoec decision status --json
synoec decision probe --json

For a self-hosted server with a private certificate, see Private HTTPS endpoints.

With a decision model chosen, open the mode pill under the composer (it reads, for example, Agent · Auto) and choose Decisions. The composer changes to a form: a Question, an Answer type (Yes / No, Choice or Score), the options or score levels one per line, and the state to evaluate. Switching back to Agent, Ask, Plan, Debug or Goal restores the ordinary composer and your draft.

Requests and results are saved in the thread like any chat message. An interrupted evaluation is marked and never resent automatically.

Terminal window
synoec decision run --connection decisions --model jev --input request.json --json
{
"state": "The export button crashes, but CSV export still works.",
"questions": {
"team": {
"type": "choice",
"instructions": "Which team should handle this report?",
"criteria": { "billing": "Invoices and payments", "technical": "Bugs and outages" }
},
"severity": {
"type": "score",
"instructions": "How severe is the issue?",
"criteria": ["Cosmetic", "Workaround available", "Blocking"]
},
"urgent": { "type": "noul", "instructions": "Does this require immediate action?" }
}
}

--input - reads from stdin. Inputs hold 1–64 questions within 16 KiB; Choice takes 1–255 options and Score 2–10 ordered levels. Requests time out after 60 seconds by default (--timeout accepts 1,000–60,000 ms).

Keep your normal chat model and choose a Decision model from the same Profile in the model picker. The agent can then call DecisionEvaluate for bounded judgment steps — classifying rows, comparing debugging hypotheses, scoring risks or checking acceptance criteria — while still using ordinary tools for facts and edits. Choose Off to disable it; with no decision model in the Profile the menu is hidden.

Terminal window
synoec --print --profile Offline --decision-connection offline-jev --decision-model jev \
"Classify the rows in requests.csv"

The choice is saved with the draft and thread; changing Profile clears it. Batches carry up to 32 items with four questions each, and a Choice here takes up to 32 options. Under Approve for me, a decision model you put in the Profile runs without asking, like a pinned image model; Strict still asks. Each request takes a slot in its connection’s Simultaneous AI requests; a 429 or 503 with Retry-After waits and tries again, twice at most, 30 seconds each. Decisions report no usage, so budgets ignore them.

Decision-based Specialist and tool selection

Section titled “Decision-based Specialist and tool selection”

Decision models can also rank which Specialist expertise or which tools fit a request. Both are off by default. Open Settings → Decision model; the page applies to the whole workspace, not to one Profile.

Context recall always uses GLiNER2.5-Decide on this computer, whichever model you pick here, so recalled text never leaves it. Synoec downloads the model once in the background, and the page shows whether it’s downloading, ready or failed; a failed download is retried a day later. It sees only items the Profile may already recall and can only narrow or reorder them. See recall.

Section Controls
Use it to Choose Specialists and Choose tools switches, and the Context recall model’s status
Model GLiNER2.5-Decide, Julia-1 or System One endpoint cards; Download Model / Verify Model, or Edit Endpoint / Verify Endpoint
Accuracy & resource limits Minimum model score, Minimum score separation, Search deadline, Unload after idle, MiniLM shortlist assist

A switch stays off until its model is ready; the warning icon next to it says why and opens the fix. Choose a model: GLiNER2.5-Decide (local, about 1.95 GB), Julia-1 (local, experimental, about 577 MB), or a System One endpoint such as Jev, Clef or a compatible service. Local models download when you choose Download Model (or, for GLiNER2.5-Decide, once automatically for Context recall) and then run offline on the CPU. Verify Model checks that it loads; it is not an accuracy test.

Terminal window
synoec discovery status --json
synoec discovery install gliner
synoec discovery set model gliner
synoec discovery set specialists true
synoec discovery set tools true
synoec discovery probe gliner --json

When a score is low, too close to the runner-up, or the model is unavailable, the choice falls back to the assistant. An endpoint receives the request and the shortlisted descriptions; saving a different endpoint turns both switches off again. Settings are shared by the CLI and desktop app.

  • Results are probabilities over a shortlist, not calibrated certainty.
  • Failed or cancelled evaluations are not retried automatically.
  • Decision results never invoke tools or grant permissions.
  • Recommendations do not replace Learning acceptance or ordinary verification.

Decisions behind this page: 0118, 0153, 0207, 0256, 0266 — see the decisions index.