Skip to content

SYSTEM Cited by 1 source

Clairic

Clairic is Cloudflare's first System One extraction model — a fast, typed, cheap model that extracts, computes, estimates, and forecasts values from unstructured inputs in a single forward pass. Launched as a preview on 2026-10-19, hosted on Workers AI as @cf/cloudflare/clairic, with open weights promised "soon." It is the regression/extraction sibling of Cloudflare's decision models Clef / Clef-flash and of TypeSafe's Jev, and the name is Cloudflare's own: clerical (bookkeeping extraction) + clairvoyance (prediction) + [Cl]oudflare [AI R]egression.

"Clairic is an extraction model that is able to extract, compute, estimate, and forecast values from unstructured inputs — all at a significantly higher accuracy, faster latency, and cheaper cost than traditional LLMs."

(Source: sources/2026-10-19-cloudflare-introducing-clairic-extraction-model)

System One vs System Two — where extraction models sit

Named after Kahneman's Thinking, Fast and Slow, System One models answer in a single parallel pass without reasoning or generating tokens; System Two models (GPT, Claude, Gemini) reason one token at a time. Within System One there are now two shapes:

System One: Extract System One: Decide System Two
Example Clairic Jev, Clef GPT / Claude / Gemini
ML framing Regression + extraction Classification Generation
Output Typed values (spans, numbers, dates, lists, distributions) + calibrated probabilities Options with calibrated probabilities Free-form strings
Output space Continuous but typed + bounded by your schema A finite set of options you list Anything
Always valid? Yes — a value of the declared type (or null), inside your bounds Yes — one of your options No — strings must be parsed + checked

The three compose: "Extraction models turn raw input into typed values, decision models turn values into decisions, and LLMs turn decisions into words."

How a request works

A request is a state (the text to read, plus up to four optional images) and a map of typed fields. Each field is named and given a type plus optional plain-language instructions; one typed answer comes back per field "from one parallel pass. There is no reasoning and no output tokens — everything computes in a single forward pass," so Clairic is billed for input only. Like a decision model it is "designed differently than an LLM... it only processes input tokens with a single forward pass, and thus has no charge for output tokens" (concepts/hot-path, concepts/latency-critical-vs-latency-tolerant-workload).

Unlimited fields. "If they don't fit beside the input in one pass, the server splits them into parallel passes that each see the whole input, then merges the answers," so asking for thirty fields "costs about the same as asking for three" — a server-side parallel-field-pass merge.

Field types

Type Returns
text A specific span of the input, with its character offsets
number A number read or computed, honoring integer / decimals
date / time / datetime Calendar dates and valid times, in ISO form
duration A length of time in the unit you choose
list Matching text / number / date, in input order
estimate A distribution inside your [min, max], on your step grid, linear or log scale
forecast One estimate per future step of a series

Four kinds of answer

  • Extracted — text copied from the input (a name, order ID), returned as a character-offset span + confidence so you can highlight the source.
  • Computed — numbers / dates / durations / lists read from the input or worked out from it (e.g. summing a price + tax into amount_paid, or differencing two dates into days_since_delivery), formed under their type's rules (cents → two decimals).
  • Estimated — a value the input doesn't state but gives evidence for, returned as a distribution inside your declared bounds with a median + 80% interval (p10–p90), all 99 percentiles on request. Interval width reflects data confidence — narrow = certain, wide = uncertain, a signal to route another check.
  • Forecasted — future values of a series, one estimate per step ahead, each with its own 80% interval, inside declared bounds.

Typed-or-null — the anti-hallucination property

Because Clairic generates no tokens, "it can't produce a mistyped answer or 'hallucinate' in the same way as an LLM." Every answer is a value of the asked-for type or null when the model fails to find it. Each scalar carries:

  • p_null — the probability the value isn't in the inputs;
  • confidence — how sure the model is;
  • guess — what it would have picked, even when it returns null.

In the worked support-email example a non-present tracking_number comes back value: null with p_null: 1 (and a low-confidence guess), rather than a plausible-looking fabrication. This is the structural form of concepts/structured-output-reliability (a consumer can always parse the output) and a hard answer to concepts/llm-hallucination — though Cloudflare is explicit the design makes answers well-formed, not necessarily correct, so callers should gate automation on confidence / p_null / interval width (concepts/human-in-the-loop).

Serving on Workers AI

Clairic runs on Workers AI (env.AI.run("@cf/cloudflare/clairic", …) from a Worker, or the REST API anywhere) — Cloudflare's edge GPUs, so it sits in the agent hot path at sub-second latency. It is a specialized, non-generative stand-in for a general LLM on extraction/regression tasks (concepts/knowledge-distillation-adjacent in spirit, like Clef's frozen-backbone decision classifier).

The extract → decide → act cascade

Clairic is positioned as the first stage of a System One + System Two pipeline: Clairic (extract typed values) → Clef (decide) → LLM (write/act). Each step gets cleaner input than the one before:

  • Clef decides from a five-line summary of typed values, not a free-form email.
  • The LLM "never sees the email, only the decision and the predictions it needs," which reduces concepts/prompt-injection surface and the number of values it can misuse.
  • Every step is typed and auditable; only the final step generates text.

Canonical instance of cheap specialist stages gating an expensive generalist and of typed-stage decomposition.

Measured on a damage-claim workflow (Clairic → Clef → GLM-5.3 vs all GLM-5.3): 19.3 s vs 61.7 s end-to-end (3.2× / −69%), $6,032 vs $11,740 per million claims (−49%). Clairic extracted in 0.46 s + Clef decided in 0.22 s, where GLM-5.3 took 16.1 s + 21.9 s for the same two steps. Clairic's repair estimate was identical on every run; GLM-5.3's varied. Gemma 4 and Qwen failed the all-LLM version — "unable to deduce values like repair_cost from the inputs."

Examples

  • Extraction + computation (support email): order_id as a span, delivered_on as an ISO date, amount_paid = price + tax summed in one pass, days_since_delivery differenced from two dates, damage as a list of two spans, tracking_number → null.
  • Images: a photographed (imperfect, angled) receipt → order number, datetime, quantity, unit price, subtotal, sales tax, tip, each with confidence; a non-present discount correctly returned null (patterns/multimodal-content-understanding).
  • Estimation: comparable home sales → sale_price {value 418000, median 415000, p10 370000, p90 470000} inside the declared [50000, 5000000] log-scale bounds.
  • Forecasting: 21 days of TSA traveler counts → next-day forecast with 80% interval; off 3.3% on average, 17/21 inside the interval; misses were holiday-weekend days the series didn't signal.

Caveats

  • Preview / early checkpoint; open weights are a future release. Benchmarks are Cloudflare-reported (one damage-claim workflow + one public TSA series), no independent reproduction.
  • Weak spots named by Cloudflare: multi-step/dependent arithmetic and many-row table aggregation are unreliable in one pass ("have Clairic predict the value and let code do the math"); estimates need in-input evidence; calibration is measured-not-guaranteed (intervals can run narrow on unfamiliar data); forecasting is basic (non-critical pattern matching, no holiday/ long-horizon awareness).
  • The architecture guarantees well-formed, not correct — use the confidence/null/interval signals to decide automate-vs-review.

Seen in

  • sources/2026-10-19-cloudflare-introducing-clairic-extraction-model — canonical wiki introduction. First System One extraction model; single-pass, no-output-token typed extraction/computation/estimation/forecasting with confidence + p_null + calibrated intervals; unlimited fields via server-side parallel passes; images; the Clairic → Clef → LLM cascade (3.2× faster, 49% cheaper than all-LLM on a damage-claim workflow); preview on Workers AI, open weights soon.
Last updated · 854 distilled / 2,448 read