A decision model takes a state (the material to judge) plus a typed question whose options are listed in advance. It computes over the input once and returns a probability for every option, with no free text and nothing for the caller to parse. If the job needs writing, summarizing, open-ended reasoning, or options that cannot be listed yet, it is the wrong tool.
Part 1 of the series | This part answers: what is a decision model, how does it differ from asking an LLM for JSON, and when should you not use one?
What a decision model is
A decision model returns a probability for each pre-listed option, not a passage of free text.
One real example: on 2026-10-11, Clef-flash (4-bit) on a Mac read the title and abstract of a PubMed paper (PMID 40019529) and scored the nine study types; review got 0.91 and the runner-up, systematic_review, only 0.04, followed by computational 0.014, original_research 0.009 and clinical_study 0.007, with the rest lower. The gold label is also review.
The documentation defines three question types: noul asks for the probability that a statement is true, choice picks one named option, and score gives an ordered grade. Think of reading the score in every box of a printed form rather than asking the model to write a recommendation. There is no text in the response, so code can branch, sort or threshold on the probabilities directly.
TypeSafe calls this class of model System One, and states: "System One models do not write replies, produce code, or generate explanations of their reasoning."
"No hallucination" here means the output space is bounded in advance by a schema (the fixed fields and allowed values), so a type error cannot occur. Whether the chosen option is right is still a matter of probability, handled with calibration (whether the model's probabilities match how often things actually happen) and a confidence threshold. That last point is our reading.
How it differs from LLM structured output
Structured output is still generated token by token, with a format constraint or parser holding the shape; a decision model generates no answer and reads a probability for each listed option instead.
The single forward pass that reads the input before any token is generated is called prefill. A decision model stops there, reads the logits (raw scores before they become probabilities) of the options, and converts them into probabilities. Asking an LLM to "reply only in JSON" still generates the answer and constrains its shape afterwards, and its confidence is usually a number the model writes itself. A decision model has no text to parse; its confidence comes from the option probabilities.
Where things stand in October 2026: Jev and Clef
Jev, announced by TypeSafe AI on 2026-09-15, is the first System One model and is offered as an early-access hosted API; Clef and Clef-flash are Cloudflare's open-weight decision models, which accept requests and return responses in the same shape as Jev.
Jev is called with POST https://api.typesafe.ai/v1/systemone, and the documented default model is jev-latest. Choice allows up to 255 options, each adding only a few tokens; Noul returns a value from 0 to 1 without a confidence field; Choice and Score return probabilities and confidence. The state and questions share a budget of about 32,000 tokens, which TypeSafe puts at roughly 150,000 English characters. Vendor-reported: several questions can share one state in isolation, and adding questions barely increases latency.
TypeSafe calls its training method RLCD (Reinforcement Learning for Calibrated Decisions), aimed at returning calibrated decision probabilities; the architecture, training data and loss function are not public. The announcement also says Jev is "neither small nor an LLM" and that the data is "all ourselves." Pricing and speed are vendor-reported too: $0.042 per million input tokens, free output, 70–500 ms end to end; the "193.6× faster, 444.6× cheaper" headline comes from in-house workflow evals that the announcement itself says may be optimistic, and TypeSafe chose not to publish public benchmark scores. The privacy policy says user input is not used to train or fine-tune models, but input is still processed by the hosted service.
Cloudflare's Clef is a 27B multimodal decision model post-trained from Qwen3.8-27B; Clef-flash is the 9B version, post-trained from Qwen3.5-9B. Both add a joint schema head to the backbone, are licensed Apache-2.0, and publish weights on Hugging Face. They support noul, choice (2–255 options) and score (2–10 levels), 1–64 questions per call, and text, JSON or image input; as of October 2026 they can be called on Cloudflare Workers AI with a 65,536-token context.
| Spec | Jev | Clef | Clef-flash |
|---|---|---|---|
| Access | Hosted API, early access | Open weights, Apache-2.0 | Open weights, Apache-2.0 |
| Size | Not disclosed | 27B | 9B |
| Choice options | Up to 255 | 2–255 | 2–255 |
| Length | About 32,000 tokens for state and questions | Workers AI context 65,536 tokens | Same as Clef |
| Input | Text state | Text, JSON, images | Text, JSON, images |
In the Decision Index 0.2.1 internal run on Cloudflare's model card (H200, vendor-reported), median latency is 209.3 ms for Clef, 38.8 ms for Clef-flash and 524.1 ms for Jev; BFCL is 98.8 for Clef-flash and 95.8 for Jev; GPQA Diamond is 78.3 for Jev and 48.0 for Clef; MMLU-Pro is 82.7 for Jev and 65.9 for Clef. Our reading: broadly, Clef is stronger on tool and API tasks and Jev on hard reasoning. TypeSafe's 70–500 ms and this table's 524.1 ms come from two different vendors, not one measurement. We have no Jev credentials and ran no head-to-head comparison; every Jev number here is the vendor's.
What we measured
On 2026-10-11 we used open-weight Clef-flash to classify the study type of 77 PubMed abstracts: the decision model was right 92.2% of the time, regex rules 71.4%, and a local 35B chat model 50.6%.
We chose not to send data to hosted Jev and ran it on our own machines instead: a Mac with MLX at 4-bit and an NVIDIA workstation with llama.cpp and the GGUF Q4_K_M build, because the state would otherwise leave the machine and the service is still early access.
| Approach (2026-10-11, 77 PubMed abstracts) | Accuracy |
|---|---|
| Decision model (Clef-flash) | 92.2% |
| Regex rules | 71.4% |
| Local 35B chat model, answering only at self-reported confidence ≥ 0.75 | 50.6% |
The chat model's low score is not about wrong answers: it answered only 51.9% of the papers and was about 97.5% right when it did. The question has nine options, but this gold set covers only four of them, so the result speaks for those four classes and is not a general accuracy of decision models. Part 3 covers calibration, confidence thresholds and this limitation (see the series index).
When not to use one
Do not use a decision model for writing, summarizing, extraction, open-ended reasoning, multi-step planning or explaining a decision, or when the options cannot be listed in advance.
The docs cap a choice at 255 options; splitting a longer list into two stages (narrow the range, then ask again) is our suggestion. Two more points are our inference: Jev's Noul has no confidence field, so a threshold that reads only confidence will miss noul questions; and calibrating each judgment separately does not make a chain of judgments calibrated as a whole.
How to read this series
This part covers what a decision model is, how it differs from structured output, and when not to use one; the next four parts cover mechanism, calibration, local deployment and agent guardrails.
Part 2 explains why probabilities need no generation and four ways to build a decision model. Part 3 tests calibration on 77 PubMed papers and comes with the calibration checker, which computes Brier, ECE and a reliability diagram in your browser without sending data. Part 4 runs a decision model on a Mac: question design and local deployment. Part 5 has agents ask before they act: guardrails and model choice.