← all posts
// agents · decision-models

Decision models went mainstream in three weeks. Most of the value is the schema

On October 22, 2026, OpenAI made its Decisions API generally available. That closed a three-week run in which Cloudflare, AWS, Microsoft and Perplexity all shipped "decision models": small models that take a state plus typed questions and return a probability per allowed answer, with no text generation. TypeSafe's Jev created the category in September.

This matters if you run agents in production. Many agent steps are choices, not generation: which tool to call, whether a ticket is urgent, whether to stop. Today a frontier model makes each one at frontier prices and latency. Below: what shipped, what it costs, and where it's a real architectural change versus a reranker with better marketing. What happens when you hand agent control to one is in the companion piece, what the decision-model papers actually measured.

What actually shipped

Cloudflare Clef and Clef-flash (Oct 1). Clef is post-trained from Qwen3.8-27B, and Clef-flash from Qwen3.5-9B, both using rank-256 adapters. Apache 2.0 weights are on Hugging Face; Clef accepts text, JSON, images and video and outputs one logit per allowed option. Cloudflare reports median latency of 209 ms for Clef and 39 ms for Clef-flash, against 524 ms for Jev. These figures are self-reported.

AWS Strands Decider 2B (Oct 1). AWS took Qwen3.5-2B-Base, removed the LM head, and added a pointer head of about 1M parameters plus a rank-16 LoRA. It's Apache 2.0, and AWS published the training data and scripts alongside the weights. The repo reports 180/231 on public JevBench for v1 and a median of 115 ms on an RTX 3090.

Microsoft-Decision-1 (Oct 9). It's built on Qwen3.5-9B, available in Foundry (preview) and on OpenRouter, with a 32K context. Microsoft claims top accuracy in its own 36-benchmark comparison and p50 latency about 35x faster than GPT-6 Sol. No license is listed.

OpenAI Decisions API (preview at DevDay Sep 29, GA Oct 22). It runs on gpt-6-luna, at POST /v1/decisions, and accepts up to 400 questions per request. TechCrunch reports it is "plain old Luna" reconfigured for speed; the docs claim about 10x faster than the Responses API.

Perplexity pplx-decider (v1 around Oct 1, v1.2 by Oct 19). It's 27B, fine-tuned from Qwen3.8-27B, with Apache 2.0 weights on Hugging Face. The API also offers a 4B pplx-decider-flash-v1.2. Ollama v0.40.7 (tagged Oct 18) added pplx-decider as a 17 GB download that exposes a local /v1/systemone endpoint.

All converged on three question types (yes/no, called noul or predicate; choice; score) and input-only billing.

Numbers that matter

ModelBase / sizeLicenseAccessInput $/MOutput
ClefQwen3.8-27BApache 2.0Workers AI, HF0.24free
Clef-flashQwen3.5-9BApache 2.0Workers AI, HF0.09 (aggregator only)free
Strands Decider 2B~1.9B, Qwen3.5-2BApache 2.0HF, self-hostself-hostn/a
Microsoft-Decision-1Qwen3.5-9Bnot statedFoundry, OpenRouter0.042free
OpenAI Decisionsgpt-6-lunaclosedAPI (GA)0.10 uncachedfree
pplx-decider v1.227B, Qwen3.8-27BApache 2.0API, HF, Ollama0.02free

Illustrative cost example (my assumptions, not vendor figures). Take an agent task with N = 20 routine decisions, each carrying 3,000 tokens of context, so 60,000 decision-input tokens per task. For a frontier model, assuming $5/M input and $25/M output with 150 output tokens per decision, that is 60,000 × $5/M = $0.30, plus 3,000 × $25/M = $0.075, for $0.375 per task. The deciders come out like this:

Per task (60,000 input tokens)ArithmeticCost
Frontier model$0.30 + $0.075$0.375
Microsoft-Decision-160,000 × $0.042/M$0.0025
OpenAI Decisions60,000 × $0.10/M$0.006
Clef60,000 × $0.24/M$0.0144
pplx-decider v1.260,000 × $0.02/M$0.0012

At 100,000 tasks a month: $37,500 versus $120 to $1,440.

This assumes the decider is always right and ignores frontier prompt caching. Non-routine steps stay on the frontier model, so whole-task savings are far smaller; in the one harness study I've read closely, about half of steps stayed on the strong model.

The model is mostly rebranding. The interface is the real change.

Where it's real and where it's rebranding

My read: the model is mostly rebranding. The interface is the real change.

Technically, a decision model is a cross-encoder classifier whose label set and criteria are defined in natural language at request time. AWS's own description of the architecture (remove the LM head, add a pointer head) is classic reranker and classifier design. With a fixed label set and plenty of labeled data, a fine-tuned classifier is still cheaper and probably more accurate. Cloudflare's own table shows Jev ahead of both Clef models on When2Call, the benchmark closest to "should the agent call a tool now".

What's actually new comes down to three things. First, a shared schema. Clef says it is "fully compatible with Jev and SystemOne". Ollama's local endpoint is driven by TypeSafe's SDK. OpenAI and Perplexity use the same three question types. For the first time, "classify this agent state" is a portable API call, not a bespoke model per decision point.

Second, calibrated probabilities as the product. You get a distribution, not a parsed string. That's what makes confidence-threshold escalation possible: the decider handles easy cases and the frontier model handles the rest. Strands reports that answers at confidence 0.9 or higher were right about 95% of the time, but only on short, unseen classification tasks. Third, prefill-only economics: one scoring pass, free output, so cost scales with context, not reasoning.

What I'd do

I'd count my agent's decision points per task from real traces before trusting any cost slide. Then I'd run an open-weight decider (Strands 2B, or pplx-decider via Ollama) in shadow mode next to the frontier model. On hosted price, Perplexity and Microsoft undercut OpenAI by 2.5x to 5x per input token. And I'd code against the noul/choice/score schema behind my own interface, so I can switch vendors.

Evaluation and escalation design are in the research companion. The routing logic is the same idea as cost routing across providers, applied one level down.

What I couldn't verify

Clef-flash pricing: the $0.09/M figure comes only from an aggregator, and Cloudflare's docs page lists only Clef's $0.24/M. For Microsoft-Decision-1, I found no license and no parameter count beyond the Qwen3.5-9B base, and its benchmarks are self-reported. On OpenAI latency, the 100 to 180 ms figure and the claim that this is plain Luna come from TechCrunch, not an OpenAI page I could load; openai.com/index/decisions-api failed to fetch. On the MLX path in Ollama, the "mlx: add PPLX Decider v1.2 support" changelog line comes via Releasebot, and Ollama's library page states no platform requirement. All accuracy and latency figures are vendor-reported; I've seen no independent reruns.

I'll revisit when an independent benchmark covers all six on identical hardware.

Sources

Primary: Cloudflare blog: Clef decision models; Cloudflare Workers AI docs: Clef; Hugging Face: Cloudflare/clef model card; GitHub: strands-labs/strands-decider; Microsoft Command Line: Introducing Microsoft-Decision-1; Microsoft Foundry catalog: Microsoft-Decision-1; OpenAI API docs: Decisions guide; Perplexity docs: Decisions quickstart; Hugging Face: perplexity-ai/pplx-decider-v1-27b; Ollama v0.40.7 release notes; Ollama library: pplx-decider. Reporting: The New Stack: AWS Strands Decider model; TechCrunch: OpenAI makes its Jev competitor widely available. Aggregators: Releasebot: Ollama updates; Local AI Zone: October 2026 model updates.

#decision-models#agents#pricing#open-weights