Schemer: On-device Free-form Text to Structured JSON
On-device extraction that turns free-form text into a typed JSON object matching your JSON Schema, without inventing values for missing fields.
Schemer takes free text and a developer-supplied JSON Schema and returns a JSON object that matches it, with type guarantees instead of generative text. Plain JSON Schema in (OpenAI and Gemini compatible), typed JSON out. The edge is absence detection: knowing when a field is simply not in the text, at 0.91 against 0.18 to 0.43 for prompted LLMs, which is exactly where generative extractors fail. The model is general; the launch reference is task creation.
Demo
Performance
At 211M parameters and 111 MB, the only models more accurate than Schemer are 40 times its size or larger. When the text does not mention a field, Schemer leaves it empty 91% of the time instead of inventing a value, against 18 to 43% for prompted LLMs.
9,021 held-out records across seven usage slices, 13 languages (internal)
| Model | Accuracy | Absence | Params | Disk |
|---|---|---|---|---|
| Gemma 4 26B A4B | 0.834 | 0.428 | 26.6B | 17.2 GB |
| Claude Haiku 4.5 | 0.816 | 0.431 | n/a | API |
| Qwen 3.5 9B | 0.812 | 0.434 | 9.1B | 9.1 GB |
| Schemer (int8) | 0.800 | 0.911 | 211M | 218 MB |
| Schemer (int4) | 0.793 | 0.908 | 211M | 111 MB |
| Ministral 3 8B | 0.790 | 0.430 | 8.0B | 17.8 GB |
| Gemma 4 E2B | 0.780 | 0.427 | 5.1B | 8.3 GB |
| Qwen 3.5 0.8B | 0.651 | 0.351 | 0.87B | 1.75 GB |
| NuExtract-2.0-2B | 0.643 | 0.393 | 2.2B | 4.4 GB |
| GLiNER2-multi | 0.585 | 0.374 | 307M | 309 MB |
| GLiNER2-base | 0.524 | 0.368 | 205M | 834 MB |
| NuExtract-tiny-v1.5 | 0.334 | 0.222 | 0.5B | 954 MB |
| FunctionGemma 270M | 0.288 | 0.181 | 0.27B | 540 MB |
Internal evaluation on 9,021 held-out records; competitors run on the same held-out set.
Use cases
Natural language to calendar entry
Turn "Lunch with Priya next Thursday at 1, about an hour" into a typed event: title, start datetime, duration, and recurrence. Runs in a keyboard or notes app, on device and offline.
Messages into structured records
Turn a chat message, email, or scanned note into a CRM lead, order, or invoice: names, emails, amounts, and dates, each decoded to its real type, with missing fields returned as null instead of guessed.
Cleaner input for on-device LLMs
Pre-structure messy text into validated, typed fields before it reaches an on-device LLM. Clean structured input instead of raw prose cuts hallucination and token cost and lifts accuracy, all without leaving the device.
On-device agents and form-fill
Hand a local agent a JSON Schema and free text and get typed JSON back to trigger an action or prefill a form, with no cloud LLM and no per-call cost.
Reviews and feedback into ratings
Score a free-text review into a typed star rating, a sentiment label (positive, mixed, negative), and flags like would-repurchase, ready to sort or route without reading each one.
Normalize messy records
Batch-convert inconsistent free-text records, notes, logs, or exported spreadsheets into one clean typed schema, with absent fields flagged rather than invented, on device.
What it does
- Plain JSON Schema in (OpenAI and Gemini compatible), typed JSON out.
- Decodes strings, numbers, booleans, datetimes, labels, and arrays to their real types.
- Explicit absence detection: reports a field as missing instead of inventing a value.
- Works across 13 languages from a single model, with no per-language setup.
Specs
- Parameters
- 211M (pruned mmBERT-base encoder)
- Accuracy
- 0.800 (int8), 0.911 absence detection
- Size
- 111 MB (int4 AWQ), 218 MB (int8)
- Formats
- Core ML and ONNX, cross-platform
FAQ
What is Schemer?
On-device extraction that turns free-form text into a typed JSON object matching your JSON Schema, without inventing values for missing fields.
Does Schemer run on device?
Yes. Schemer runs entirely on device: inference happens locally with no server call, so data never leaves the device.
Is Schemer available yet?
Schemer is in closed beta. You can request early access from its page.
How much does Schemer cost?
Every model is free up to 100k monthly active devices per SDK. Unlimited inference per user. Contact us for custom licenses.
How accurate or fast is Schemer?
At 211M parameters and 111 MB, the only models more accurate than Schemer are 40 times its size or larger. When the text does not mention a field, Schemer leaves it empty 91% of the time instead of inventing a value, against 18 to 43% for prompted LLMs.
Early access
Tell us what you are building and we will get you set up.