ollama d1 vs d3 — which decision model do you need?
Two decision models shipped into ollama five days apart: d3 (2b-27b, runs on Linux CPU today) and d1 (2b, Apple-only this week). Which one to call.
decision models · 28 oct 2026 · release lane
ollama d1 vs d3
Two decision-model families shipped into ollama five days apart. d3 came first (v0.40.9): four sizes, it scores the options you name and refuses to chat. d1 landed this week (v0.40.12): one 2B size so far, built on the new LFM3 base, reads text and images — but Apple-only in this release. Deciding today on a Linux box? Call d3. d1 goes on the watchlist until the Linux build ships.
01 what actually shipped
Two releases, two families, one job: answer a question that only needed a score.
v0.40.9 (22 Oct) — d3. The vLLM Semantic Router project's decision models, wrapped as d3:2b through d3:27b, Apache-2.0. You hand it text, structured state, or an image, name the options, and it returns probabilities. Ask it to summarize and it hands you the manual instead — its longest utterance is its refusal.
$ ollama run d3:2b --ask "Is a refund being requested?" < ticket.txt
yes 97%
v0.40.12 (27 Oct) — d1, riding the new LFM3 base. Liquid AI's d1 models "now come in a 2B size, built on LFM3" — the same tri-hybrid family as lfm3, the 1.7B text model with a 256K-token context window that shipped in the same release. d1 makes decisions about text and images; the Omni variants add audio. And then the release note that decides our whole comparison: "lfm3 and d1 2b are supported on Apple hardware in this release. Support for Linux/Windows coming soon."
Pattern, named: decision models are becoming a shelf. Perplexity put pplx-decider up in v0.40.7, the Semantic Router crew put d3 up in v0.40.9, Liquid put d1 up in v0.40.12. Three vendors in two weeks. The classifier tax — paying a chat model to emit prose you parse and throw away — now has a queue of replacements fighting for the job.
last tested 2026-10-28
02 the differences that matter
Both families grade instead of chat. The columns that actually pick a winner: sizes, inputs, and — this week — whether your operating system is invited.
| d3 | d1:2b | |
|---|---|---|
| landed in ollama | v0.40.9 · 22 Oct | v0.40.12 · 27 Oct |
| from | vLLM Semantic Router | Liquid AI (LFM3 base) |
| sizes | 2b · 4b · 9b · 27b | 2b (600M & 3B exist on Hugging Face, not in ollama) |
| reads | text · structured state · images | text · images (Omni adds audio) |
| answers with | --ask yes/no + --choice labels, confidence % | decisions about text and images |
| runs on Linux today | yes — benched on CPU | no — Apple-only in v0.40.12 |
| GGUF | ships in ollama | exists on Hugging Face — untested by us |
| context story | 262k claimed, pinned to 4096 at the door | LFM3 lineage: 256k on the 1.7B text base |
The context row deserves its own sentence: d3's card advertises 262,144 tokens and then pins num_ctx to 4096 at the door — the claim never ships. lfm3's 256K window is the headline feature of its release. Whether d1:2b inherits a usable slice of it is exactly the kind of question a bench answers, and we haven't found that bench yet.
03 the two rules
The Apple gap: the days between a model's announcement and the build that runs on your machine. A decision model you cannot run is a press release.
04 the receipts, and the honest gap
Everything first-person here belongs to d3, because d3 is the one we ran — the 2026-10-24 CPU bench, re-checked today against the release notes. The ladder: 2b stamps in 0.8 s warm (3.7 GB loaded), 4b in about 2 s (7.1 GB). Clear tickets earn 97–99% confidence. Two fine-print wounds from the same ledger: the ask door hard-fuses input at 64 KiB, and the same ticket once scored "no 53%" and then "yes 99%" — the verdict wobble, and the CLI ships no dial for it.
d1 gets no numbers from us, on purpose. It is Apple-gated in this ollama release, the bench here is Linux, and a record-read is not a test. What the record does say, from Liquid AI's own model cards: d1 comes in 600M, 2B and 3B on Hugging Face, with GGUF and MLX builds already published — so llama.cpp runners on Linux may beat ollama to it. If someone ships that bench first, the comparison above gets a new row.
Somewhere a 600M-parameter model is already deciding a refund claim, and honestly, support queues have never moved faster.
the shelf is filling. the benches are the moat.