Desert Ant Labs

Schemer.

Structured extractionClosed beta

Extract typed fields from any text against your own schema, on the device, with a field left empty where the text says nothing.

Demo

Schemer is in closed beta. The model card and weights are public. Early access on request.

Extract typed JSON from any text.

Write "Lunch with Priya next Thursday at 1" and the event is typed: the date resolved against the device clock, the duration a number, the title a string. No parsing step, no schema validation, no retry loop.

Nothing is invented either. Schemer leaves a missing field empty 91% of the time; prompted LLMs manage 18-43%. Extracted strings are verbatim substrings of the input with character offsets, so auditing is a substring check. Schemer works from plain JSON Schema, the shape OpenAI and Gemini accept, in any of 13 languages.

0.800 on schemas it has never seen.

Schemer scores 0.800 on schemas it has never seen, at 211M parameters and 111MB. The only models that score higher are 40 times its size or larger.

0.800
Accuracy
schemas it has never seen, internal eval
0.911
Absence detection
vs 0.18-0.43 for LLMs
8.1ms
Per forward
Apple Neural Engine, 256-token shape
111MB
On disk
int4 AWQ; 211M params

Internal evaluation on 9,021 held-out records; competitors run on the same held-out set.

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 arrive decoded to their real type, a missing field arrives as null, and the record is ready to save without a parsing step.

On-device agents and form-fill

Give a local agent a JSON Schema and free text, and the typed JSON it gets triggers an action or prefills a form. No cloud LLM, no per-call cost.

What the model does

  • Works from plain JSON Schema, the one OpenAI and Gemini accept, and writes typed JSON that matches it.
  • 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

Model
211M (pruned mmBERT-base encoder)
Accuracy
0.800 (int8), 0.911 absence detection
On-device size
111MB (int4 AWQ), 218MB (int8)
Formats
Core ML and ONNX, cross-platform

Schemer copies what the text states; Schemer does not write. Ask for an abstractive title or a judgment that needs world knowledge and a much larger model will beat it.

Schemer is not an entity extractor either: it fills the fields you declared, and does not enumerate every name in the paragraph. Nested schemas are handled by the harness rather than the model, and quality there is measured on internal templates rather than messy real-world prose.

FAQ

What is Schemer?

Extract typed fields from any text against your own schema, on the device, with a field left empty where the text says nothing.

Does Schemer run on device?

Yes. Schemer runs on the device, with no server call, so the data stays with the user.

Is Schemer available yet?

Schemer is in closed beta. Request early access on this 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?

Schemer scores 0.800 on schemas it has never seen, at 211M parameters and 111MB. The only models that score higher are 40 times its size or larger.

Early access

Tell us what you are building and we will get you set up.