Catalog / Cloudflare Developer Platform
Workers AI - Introducing Clairic: an extraction model for typed values, now on Workers AI
@cf/cloudflare/clairic is now available on Workers AI as a preview. Clairic is the first extraction model: a System One model that answers with values instead of text. We intend to release the model with open weights soon.
Decision models such as Clef choose among options you define up front. Many structured-output tasks do not have answers you can list in advance: an invoice total, a delivery date, the number of days a shipment is late, or what a repair will cost. Clairic handles these. You send a state and a schema of typed fields, and it returns one typed value per field. A value is read from the input, computed from it, or predicted beyond it.
Clairic does not generate tokens. It reads your input in one pass and decodes each answer under the rules of its type, so every answer is a valid value of the type you asked for, or null when the input does not determine it.
Typed fields
Define as many fields as you need. Fields that do not fit beside the input in one pass are split across parallel passes, so there is no upper limit.
| Type | Returns |
|---|---|
text |
An exact span of the input, with its character offsets |
number |
A number read or worked out from the input, honoring integer and decimals |
date, time, datetime |
Real calendar dates and valid times, in ISO form |
duration |
A length of time in the unit you choose |
list |
Every matching text, number, or date, in input order |
estimate |
A distribution inside your min and max, on your step grid, on a linear or log scale |
forecast |
One estimate per future step of a series, up to 64 steps |
Every scalar answer includes p_null, the probability that the input does not determine the value, and a confidence score. Estimates and forecasts include a median and an 80% interval (p10 to p90). Set options.include_quantiles to also get all 99 percentiles. Use these to decide what to automate and what to send to review.
You can also pass up to four images alongside the state.
const response = await env.AI.run("@cf/cloudflare/clairic", {
model: "clairic",
state:
"Invoice INV-2291 from Northwind Supply, issued 2026-09-02, net 30. 4 pallets at $250.00 each, shipping $80.00. Contact: Dana Ruiz, Priya Shah.",
fields: {
invoice_number: { type: "text" },
issued: { type: "date" },
due_date: {
type: "date",
instructions: "Issue date plus the net payment days",
},
total: {
type: "number",
decimals: 2,
unit: "USD",
instructions: "Amount due including shipping",
},
contacts: { type: "list", items: "text" },
},
});
// response.answers.invoice_number.value -> "INV-2291", with its span in the state
// response.answers.total.value -> the amount due, with p_null and confidenceconst response = await env.AI.run("@cf/cloudflare/clairic", {
model: "clairic",
state:
"Invoice INV-2291 from Northwind Supply, issued 2026-09-02, net 30. 4 pallets at $250.00 each, shipping $80.00. Contact: Dana Ruiz, Priya Shah.",
fields: {
invoice_number: { type: "text" },
issued: { type: "date" },
due_date: {
type: "date",
instructions: "Issue date plus the net payment days",
},
total: {
type: "number",
decimals: 2,
unit: "USD",
instructions: "Amount due including shipping",
},
contacts: { type: "list", items: "text" },
},
});
// response.answers.invoice_number.value -> "INV-2291", with its span in the state
// response.answers.total.value -> the amount due, with p_null and confidence
Preview
The current endpoint is an early checkpoint, and we expect it to improve:
- Arithmetic: One- and two-step calculations, such as totals, differences, conversions, and date arithmetic, are reliable. Long chains of dependent steps and aggregations across many table rows are not yet. Extract the inputs with Clairic and do the math in code.
- Estimates: Clairic estimates best when the input contains evidence such as comparables, history, or descriptive text. Without evidence, the interval is wide.
- Forecasts: Forecasting is basic. Next-step forecasts follow recent patterns, but forecasts several steps out flatten toward the average, and Clairic does not anticipate events the series does not show, such as holidays. It does not replace a time-series model trained on your data.
- Calibration: Intervals are trained to be calibrated and are on most held-out sets, but they can run narrow on unfamiliar data.
- Confidence: Every answer is well formed, not necessarily correct. Use
confidence,p_null, and the intervals to decide what to automate and what to send to review. - Dates: Dates without a year are resolved from context. If a field depends on the current date, set
reference_dateor add a line such asToday: 2026-10-19to the state.
Pricing
Clairic costs $0.10 per million input tokens. Because it generates no tokens, there is no output token charge.
Get started
Use Clairic through the Workers AI binding (env.AI.run()) or the REST API at /ai/run. You can also use AI Gateway with these endpoints.
For more information, refer to the Clairic model page, extraction models, pricing, and the blog post ↗︎.