jevson-4b-01

The first public adapter behind asjson. You send a JSON Schema and a document; you get back a schema-valid JSON record with a calibrated probability on every field, from one parallel pass over the document. No generated text to parse, no retries, no invalid JSON. The same adapter also answers Jev / System One style typed questions (yes/no, choice, score) with probabilities, which is the shape most decision-model benchmarks use.

This release is a LoRA over Qwen/Qwen3-4B plus small readout heads and fitted calibration temperatures.

What it does

Schema mode (asjson). The schema is compiled into decisions: enums, booleans and discriminators become choices; nullable fields get a presence decision; arrays get a length decision and slots; strings are extracted as a choice among candidate spans found in the document, cast to the declared type (date-time, integer, email...), with an explicit "absent" option; fields that depend on other fields (a chosen tool's arguments, a present field's value) run in a second pass conditioned on the first; a field may opt into free-text generation. Every field comes back with its value, its probability distribution, and the evidence span it was read from.

Decision mode (jevson). System One compatible questions over a piece of state:

type you send you get back
noul a yes/no question with criteria P(yes)
choice options with one-line criteria a probability for every option
score ordered levels a probability for every level and the expected level

Both modes score every decision in the same pass over one shared read of the document, so ten fields cost about the same as one. Probabilities are calibrated and meant to be thresholded: accept the confident, route the uncertain.

Results

Schema mode, real documents, this adapter (per-field categorical accuracy / calibration error / whole-record exact):

document type fields acc ECE whole record ms / request
JSON webhook events (GH Archive) 3 spans + enums 1.000 0.000 0.974 292
task-oriented dialogue (tool requests) 8 typed slots 0.952 0.012 0.422 219
app reviews category + complaint span 0.925 0.008 0.426 262
GitHub issues / releases component, version, flags 0.922 / 0.938 0.003 / 0.014 556 / 139
consumer complaints (CFPB, long) company, date, category 0.889 0.016 2883
a 12-tool RPC catalog it never saw (zero-shot) 61 decisions 0.907 0.054 0.571 311

On the unseen tool catalog, tool routing is 0.92 and 11 of 26 argument spans are extracted at >= 0.90 exact (URLs, emails, ids, timezones, subjects); prose-valued arguments are the weak ones.

Decision mode, JevBench v1.3 public items (231 decisions), scored with the public harness:

easy standard hard Intelligence (chance-corrected) top-label ECE
1.00 0.97 0.54 69.6 0.071 with the shipped calibration (0.089 raw)

Kev transfer-v4 (764 out-of-domain decisions, never seen in training): accuracy 0.760, Brier 0.339, ECE 0.040 calibrated. Timings above are server-side on one H200 including the document prefill; requests with several hundred tokens of document return in a few hundred milliseconds.

Files

  • adapter_model.safetensors, adapter_config.json: LoRA weights for Qwen/Qwen3-4B (loadable with PEFT).
  • pointer.pt (and other *_head.pt where present): readout heads used by the asjson runtime for span extraction.
  • asjson_config.json: the inference settings the runtime needs.
  • calibration.json: temperatures per question type and option count; divide option logits by the matching temperature before the softmax for calibrated probabilities.

The adapter is the model; base weights stay at Qwen/Qwen3-4B. Loading the LoRA alone gives you the tuned base; the schema compiler, parallel readout and extraction heads are part of the asjson runtime, which is being packaged.

Intended use and limits

Structured extraction and routing over documents, tickets, logs, JSON events and dialogue; typed judging and QA gates. Weak spots today: sentence-length prose values inside chat-style text, multi-step arithmetic and date/time reasoning in long documents. State should stay under ~8k tokens. Not a chat model: it produces no free text except where a schema field opts in.

Licence and attribution

Apache-2.0 for the adapter, heads and configs. Base model: Qwen3-4B (Apache-2.0). Independent of TypeSafe AI; "Jev" and "System One" are their names, used here only to describe API compatibility.

Downloads last month
17
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for asjson/jevson-4b-01

Finetuned
Qwen/Qwen3-4B
Adapter
(1159)
this model