Liquid AI released d1-3B on 7 October 2026. It's an open-weight decision model with 3.12 billion parameters. You give it a state and a set of typed questions, and it returns calibrated answers in one forward pass without generating a single output token. Two days later Cloudflare cut the hosted price of its own decision model, Clef-Flash, from $0.09 to $0.038 per million input tokens and shrank its hosted context window from 64K to 24K tokens.
So there are now two cheap ways to run the same kind of job: a ticket router, a moderation check, a guardrail in front of an agent. You can rent Clef-Flash per token on Workers AI, or you can run d1-3B on a GPU you already own. This post costs both at 100,000, 1 million and 10 million decisions a month, works out what d1-3B needs in VRAM, and covers the license line that decides whether you can use it at all.
Table of Contents
- What a decision model returns
- The two options side by side
- Clef-Flash after the 9 October price cut
- d1-3B on your own GPU
- The monthly bill at three volumes
- VRAM: d1-3B fits almost anything
- The license line at $10 million revenue
- A setup you can copy
- Which one to pick
- FAQ
- Conclusion
- Sources
What a decision model returns
An LLM classifier writes its answer token by token, and you parse the JSON and hope the label is one you allowed. A decision model skips that step. Both d1-3B and Clef use the Decision Index question schema, with three question types:
type | What you define | What comes back |
|---|---|---|
noul | a yes/no question | the probability of yes |
choice | named options with descriptions | the chosen option, its confidence, every option's probability |
score | 2 to 10 ordered levels, lowest first | the expected level, confidence, probabilities |
You can ask several questions about one state in a single call. Every answer is a probability, so you can set your own confidence threshold and send the unsure cases to a person.
Because both models accept the same type / instructions / criteria shape, a question set written for one runs on the other with little or no change. That makes this a real either/or choice. You aren't committing to an API when you pick one.
The two options side by side
| Liquid d1-3B | Cloudflare Clef-Flash | |
|---|---|---|
| Released | 7 October 2026 | 1 October 2026 |
| Parameters | 3.12B (LFM2.5-VL-3B base) | 9B (Qwen3.5-9B base) |
| Input | text, JSON, images | text, JSON, images, video |
| Context | 32,768 tokens | 24,576 hosted, 256K self-hosted |
| Hosted price | none, you run it | $0.038 per M input tokens, no output charge |
| Latency | 8 ms per question on an RTX 4090 | 38.8 ms median in Cloudflare's testing |
| License | LFM Open License v1.0 | Apache 2.0 |
The two models don't share a benchmark table. Liquid reports a 48.57 on the Decision Index 0.2.1 public split, scored by Liquid with the official scorer rather than as a leaderboard submission, and says that puts d1-3B ahead of every decision model under 10B. Cloudflare reports per-task results from its own internal run of the same suite but no single index score for Clef-Flash. Neither side has tested against the other, so I can't tell you which is more accurate on your labels. Run both on a few hundred of your own labelled examples before you decide.
Clef-Flash after the 9 October price cut
Cloudflare's changelog entry from 9 October has two changes that matter here:
- Clef-Flash dropped from $0.09 to $0.038 per million input tokens, a 58% cut. In neurons, it went from 8,182 to 3,455 per million tokens.
- To get there, the hosted context window went from 64K to 24K tokens. Cloudflare says only 0.24% of requests went over 24K. The Hugging Face weights didn't change, and they still support 256K if you host them yourself.
Long text state gets truncated to fit the window. Images count toward it at one token per 32x32-pixel patch, capped at 1,024 tokens per image. A support ticket with a long email thread and two screenshots can now get cut where it used to fit. If your states run long, send them to Clef at $0.24, which keeps its 64K window, or check usage.input_tokens against what you sent.
The free tier also stretches further now. Workers AI gives every account 10,000 neurons a day. At 3,455 neurons per million tokens, that's about 2.89 million Clef-Flash input tokens a day. At 1,200 tokens per decision, it covers about 2,400 decisions a day, roughly 72,000 a month.
d1-3B on your own GPU
Liquid's numbers for d1-3B on an RTX 4090 in BF16:
| Workload | RTX 4090 | Apple M5 Pro | Jetson Orin Nano |
|---|---|---|---|
| One question | 8 ms | 30 ms | 50 ms |
| Three questions, one pass | 21 ms | 41 ms | 73 ms |
| A 3,400-token state | 102 ms | 640 ms | 1,640 ms |
| 64 states packed together | 475 per second | 78 per second | 38 per second |
The 8 ms figure uses model.compile(mode="reduce-overhead"), which runs single questions as CUDA graphs. Without it Liquid measures 16 ms. The first call with a new input shape also pays for kernel selection, so warm up the shapes you serve before you time anything.
Three questions take 21 ms against 8 ms for one, because the state is read once and the questions share that pass. Ask your routing, urgency and severity questions in the same call rather than in three calls.
The monthly bill at three volumes
The workload is the same one from our Clef cost breakdown: each decision sends about 1,200 input tokens (the ticket, some customer context and the question schema) and asks three questions.
For Clef-Flash the cost is 1,200 tokens × $0.038 per million = $0.0000456 a decision, or $0.0456 per thousand.
For d1-3B there is no token bill, so the running cost is electricity. I've assumed the worst case: the 4090 draws its full 450 W rated board power for the entire time, and every decision takes 102 ms, the latency Liquid measured for a 3,400-token state. A 1,200-token state is shorter, so real numbers should come in lower. Electricity is priced at ₹8 per kWh.
| Decisions per month | Clef-Flash (list) | Clef-Flash after free tier | Clef ($0.24/M) | d1-3B GPU time | d1-3B electricity |
|---|---|---|---|---|---|
| 100,000 | $4.56 | $1.26 | $28.80 | 2.8 hours | 1.3 kWh, about ₹10 |
| 1,000,000 | $45.60 | $42.30 | $288.00 | 28.3 hours | 12.8 kWh, about ₹102 |
| 10,000,000 | $456.00 | $452.70 | $2,880.00 | 283 hours | 127.5 kWh, about ₹1,020 |
The free tier takes 72,000 decisions off the top, so it matters a lot at 100,000 and hardly at all above that.
Here's how I'd read the table:
- At 100,000 decisions a month, Clef-Flash costs $1.26 after the free tier. You won't save anything that matters by running your own GPU, and Cloudflare handles uptime for you. Rent it.
- At 1 million a month, it's $45.60 against about ₹100 of electricity. If you already own a 24 GB card that sits idle, d1-3B saves around $45 a month. That won't pay for a new GPU, but it's a good use of one you already have.
- At 10 million a month, you're paying $456 against about ₹1,000 of power, and 283 GPU-hours fits inside a 720-hour month on a single card even at the worst-case latency. At this volume a self-hosted d1-3B box pays for itself.
The table leaves out what the GPU costs to buy and what your time costs to keep it running. Those decide the question at 1 million a month. Hosting is also the only way to get Clef-Flash's 9B quality without a 24 GB card, and the only way to get video input.
VRAM: d1-3B fits almost anything
d1-3B's language backbone has 30 layers, and only 8 of them are full-attention layers. The other 22 are short convolution blocks that keep no growing cache. With 8 KV heads of dimension 64, the KV cache is 16 KiB per token at BF16, so even the full 32,768-token context needs just 512 MiB. A 1,200-token ticket uses about 19 MiB.
| File | Size | What it's for |
|---|---|---|
model.safetensors (BF16) | 6.25 GB / 5.82 GiB | transformers, with the vision encoder |
d1-3B-Q8_0.gguf | 2.87 GB / 2.68 GiB | llama.cpp |
d1-3B-Q4_K_M.gguf | 1.67 GB / 1.56 GiB | llama.cpp, smallest |
mmproj-d1-3B-Q8_0.gguf | 0.58 GB / 0.54 GiB | vision projector, only needed for images |
So the Q8 GGUF plus the vision projector is 3.22 GiB, and the BF16 weights at full context come to about 6.3 GiB before runtime overhead. That fits an 8 GB laptop GPU. Clef-Flash at BF16 needs 17.5 GiB of weights alone, which is a 24 GB card. Both models are presets in the AI VRAM Calculator, with only the full-attention layers counted for the cache.
Quantization does affect a decision model differently than a chat model. The answer comes from probabilities, not from sampled text, so a quant that shifts the probabilities a little can move borderline cases across your threshold without anything visibly breaking. Liquid publishes no accuracy numbers for the Q4 and Q8 files. If you go below BF16, re-check calibration on your labelled set.
The license line at $10 million revenue
The Hugging Face tag says license: other. The actual license is the LFM Open License v1.0. It's Apache-style for copying, modification and redistribution, with one extra section:
- Commercial use is licensed only if you or your legal entity have annual revenue below $10,000,000.
- Above that threshold, commercial use "is not licensed under this Agreement". In practice that means you'd have to talk to Liquid.
- The threshold doesn't apply to qualified non-profits using the model for non-commercial or research purposes.
"Legal entity" includes anything that controls you, is controlled by you or is under common control, counting 50% ownership. A small team inside a large group counts as the group. Most Indian startups and freelancers are well under the line. A subsidiary of a large company isn't.
Clef-Flash is Apache 2.0 with no revenue limit, which can decide the question before cost even comes up.
A setup you can copy
Liquid's GGUF card runs d1-3B with one llama.cpp command. It serves a /v1/systemone endpoint:
llama-server -hf LiquidAI/d1-3B-GGUF:Q8_0curl http://127.0.0.1:8080/v1/systemone \
-H "Content-Type: application/json" \
-d '{
"state": "I was charged twice this month, please refund one of them.",
"questions": {
"refund": {"type": "noul", "instructions": "Is the customer asking for a refund?"},
"team": {"type": "choice", "instructions": "Which team should handle this?",
"criteria": {"billing": "Charges, refunds, invoices",
"technical": "App or site faults",
"fraud": "Suspected unauthorised use"}},
"urgency": {"type": "score", "instructions": "How urgent is this?",
"criteria": ["Can wait", "Today", "Blocking the customer now"]}
}
}'For Python, the transformers path needs transformers>=5.14 and trust_remote_code=True, because the model ships its own modeling_d1.py. Read that file before you load it on a production box. Remote code runs with your permissions.
The same questions object works against Clef-Flash on Workers AI. You call env.AI.run("@cf/cloudflare/clef-flash", { model: "clef-flash", state, questions }), and the answers come back under the same IDs. That lets you start with a hybrid router:
- Run d1-3B locally for every request.
- If the top
choiceconfidence is under your threshold (start at 0.8 and tune it), send the same request to Clef at $0.24 per million, which scored 97.4 on CLINC150+OOS against Clef-Flash's 66.8 in Cloudflare's testing, the benchmark that includes inputs fitting no label. - If Clef is unsure too, send it to a person.
Log every answer's probabilities as JSON and check them in the JSON Formatter while you tune. Then work out what the hosted share costs with the API Cost Calculator, which has the new Clef-Flash rate and a Clef-Omni entry.
Which one to pick
Choose Clef-Flash if:
- you make fewer than about a million decisions a month
- you have no spare GPU
- your company is over $10M in revenue
- you need video input
Remember that the hosted window is now 24K tokens.
Choose d1-3B if:
- you already own a GPU, even an 8 GB one
- the data can't leave your network
- you need answers in under 10 ms, or on a Jetson at the edge
- you're running millions of decisions a month and are under the revenue threshold
Choose Clef at $0.24 if your inputs often fit none of your labels, or you need hallucination checks on RAG answers. Clef-Flash scored 35.6 on RAGTruth against Clef's 79.4 in Cloudflare's own testing.
FAQ
How much does Clef-Flash cost now? $0.038 per million input tokens since 9 October 2026, down from $0.09. Workers AI doesn't charge for output tokens on Clef models. The hosted context window is 24,576 tokens.
How much VRAM does Liquid d1-3B need? About 1.56 GiB at Q4_K_M, 3.22 GiB at Q8_0 with the vision projector, and 5.82 GiB at BF16. The KV cache is 16 KiB per token, so 512 MiB at the full 32K context.
Is d1-3B free for commercial use? Only if your organisation, counting parents and affiliates, has annual revenue under $10 million. Above that, the LFM Open License v1.0 doesn't cover commercial use.
Can d1-3B write text or chat? No. Liquid says it's not a chat model and doesn't write text. It answers yes/no, choice and score questions, and its usage field always reports zero output tokens.
Does d1-3B work with llama.cpp?
Yes. Liquid publishes LiquidAI/d1-3B-GGUF with BF16, F16, Q8_0 and Q4_K_M files. Running llama-server -hf LiquidAI/d1-3B-GGUF:Q8_0 serves the /v1/systemone endpoint.
Is d1-3B more accurate than Clef-Flash? Nobody has published a head-to-head. Liquid scored d1-3B at 48.57 on the Decision Index 0.2.1 public split, and Cloudflare published per-task results for Clef-Flash but no index total. Test both on your own labelled data.
Conclusion
Cloudflare's price cut makes Clef-Flash the cheapest way to get decisions without owning hardware: $4.56 for 100,000 ticket decisions a month, or $1.26 once the free tier is taken out. Above about a million decisions a month, d1-3B on a GPU you already own costs about ₹1 per 10,000 decisions in electricity, fits in about 3 GiB and answers in 8 to 21 ms. The open questions are the license, which ends at $10 million in annual revenue, and accuracy on your own labels, which neither vendor has measured against the other. Since both use the same question schema, you can run d1-3B for the confident cases and send the rest to Clef.
Sources
- Liquid AI, "Open d1: Edge decision models for text, vision, and audio" (liquid.ai/blog/open-d1, 7 October 2026): release, Decision Index 48.57, architecture, edge and GPU latency tables, llama.cpp support.
- Hugging Face,
LiquidAI/d1-3Bmodel card,config.jsonandLICENSE: 3.12B parameters, 32,768-token context, question schema,model.compilenote, layer types, KV heads, LFM Open License v1.0 and its $10M revenue threshold. - Hugging Face,
LiquidAI/d1-3B-GGUFmodel card and file list: GGUF and mmproj file sizes,llama-servercommand and the/v1/systemoneendpoint. - Cloudflare Docs changelog, "Clef-omni adds audio and video input, Clef-flash is now cheaper, and Clef is faster" (9 October 2026): $0.038 price, 24K hosted context, 0.24% figure, self-hosted 256K, Clef-Omni at $0.15.
- Cloudflare Docs, Workers AI pricing and the
clef-flashmodel page: $0.038 and 3,455 neurons per M tokens, $0.011 per 1,000 neurons, 10,000 free neurons per day, image tokenization rules, truncation behaviour. - Hugging Face,
Cloudflare/clef-flashmodel card: Qwen3.5-9B base, Apache 2.0, Decision Index 0.2.1 per-task results and latency. - Costs, free-tier coverage, GPU-hours, electricity and VRAM figures are calculated by ToolMintX from those sources. Electricity assumes a 450 W draw, 102 ms per decision and ₹8 per kWh.
