How the bench was built and how to read it
The detail that does not fit in the summary: what the models are asked, where the correct answer comes from and how much to trust it, which experiments were fixed beforehand and how they ended.
What they are asked: typed decisions
A "System One" model does not write an answer: it receives a text (the state) and several questions with a fixed type, and returns a probability distribution per question in a single pass. Every model receives exactly the same questions, with the same options and descriptions; each result stores a hash of the questions to catch any change. The scoreboard measures each configuration with a single run; the variation between two runs has been measured by replica on 11 configurations (see Experiments).
choicePick an option from a list with descriptions. Example: department (emergency, bronchoscopy, outpatient clinic, admin).
scoreAn ordinal level. Example: urgency (low, medium, critical). Being off by one level is worth half a point.
noulProbability of "yes". Example: does it need an answer today? It counts as "yes" from 0.5 up.
On triage and adversarial there are 5 questions per message: department, urgency, clinical, hostile and answer today. On papers, another 5: relevance, domain, design, reading depth and whether it changes clinical practice.
The LLM adapter: what it does and what we learned
The adapter is a translator between our questions and a generalist model. There are three separate checks: that it finishes on time, that it produces a useful answer and that its confidence matches its hits. Improving one does not guarantee the others.
A schema is like a form: it controls the boxes, not the truth of what is written. An all-zero probability vector is invalid; turning it into equiprobable options can hide it. On the other hand, equal probabilities can also express legitimate doubt. That is why we need to keep the original answer.
Local Qwen improved without a forced schema; Cerebras works with both routes. The mechanism of the zeros is already identified: with a forced schema, several local servers do not copy the questions into the prompt (JEV-66). What is not isolated is how much of the gap versus Cerebras is due to the prompt, the server or the precision. As a reviewer of Jev, Cerebras is promising, not a demonstrated winner, and it offers no better calibration on these tests.
The isolation test was already run (JEV-63): two prompts × with/without schema × 12 cases × three repetitions, on NVFP4, FP8, Cerebras and GGUF on Intel Arc. The null vectors only appear with the TypeSafe prompt and the schema together; removing either one eliminates them. The external review found the mechanism and a confirmation experiment (JEV-66) verified it: in structured mode the local servers do not inject the output schema into the prompt, so the model answers blind; with the schema added to the prompt and the same grammar, zero null vectors on the three backends. The zeros are a measurement without visible questions, not a quality of the model. It is not a full battery nor a clinical validation.
The later ablation (JEV-65) ruled out that the prompt's anti-injection sentences are necessary or sufficient for the degeneration: removing or rewriting them still produces the null vectors under schema, and adding them to the simple prompt does not provoke them (the count variations are compatible with noise over a blind model; whether the sentences modulate with the questions visible was not measured). In discrete-answer mode the degeneration shows up as systematic output failure (one observed limit exhaustion in one block, only timeouts in the other), not as zeros.
Technical detail of the tests and their limits
The slow local models revealed that the original timeout bounded each request, but not the whole case: a JSON correction could open another request with a fresh clock. There was also no explicit output cap and the bench discarded the token and attempt telemetry.
The adapter now shares a total budget across all attempts, caps generation, keeps a compact diagnosis and redacts credentials before printing or saving the configuration. It was checked with 18 runs and with a provoked timeout: the case ended at the limit and the next one answered normally.
Scope: the prompt, the questions, the ground truth, the scorer and the historical answers did not change. The published scores remain the same; future runs fail earlier and with a better diagnosis when a generation goes wrong.
Provider limits (Oct 3): running the Cerebras API showed the caps are per model (5 requests/min and 150/h on gpt-oss-120b vs 450/min and 27,000/h on qwen-3.8-27b) and that the adapter does not retry a 429. min_interval was added to space requests; with it, the recorded `ms` includes the wait and stops measuring the model's latency, so that run is published without a latency median.
Structured output: revised conclusion (Oct 4). Locally, removing the schema works on the FP8/Ollama checks; the no-schema batteries reach NVFP4 52, FP8 49 and GGUF 48. The historical NVFP4 also differs in execution limits: not a single perfectly isolated variable. JEV-63's reduced matrix (12 cases, 3 reps, four configurations) showed on this sample that the zeros only come out with the TypeSafe prompt and the schema together — the same schema with a simple prompt or the same prompt without schema give zero cases; a second degenerate shape also appeared (repetition until exhausting the output). An interaction of the full prompt with the structured route is observed; it does not identify a specific sentence nor rule out precision or grammar effects. Flash-Next/vLLM is another model. On Cerebras both routes complete the battery: probabilities 59/66, discrete 58/58; there was one retry for a malformed answer on each no-schema variant. Absence of significance (probabilities: minimum p=0.0625) does not prove equivalence. The summary counter covers 9 phases without adv4/adv5; for the 11 historical phases (GT v3), the historical NVFP4 has 67/257 nearly-uniform choices and the new local/Cerebras ones 0/259. Uniformity does not prove raw zeros or failure: keep the sanitised raw and review legitimate uncertainty.
Sets
| Set | Cases | What it measures | Balance |
|---|---|---|---|
| Triage ES / EN | 14 × 2 | Messages to an interventional pulmonology unit, in Spanish and their English translation | Majority: 66 % |
| Extended triage ES / EN | 26 × 2 | More real urgencies and more hostile messages | Majority: 58 % |
| Papers | 31 | PubMed abstracts: relevance for the specialist and how to read them; the phase keeps the name papers32 | Majority: 51 % |
| Adversarial 1 and 2 | 10 + 10 | Messages that try to divert the triage | 17/20 are admin: cannot be used to compare |
| Adversarial 3 | 20 | 10 manipulated and 10 honest, 5 per department | Majority: 5/20 on department |
| Adversarial 4 | 20 | Scams (payments, third-party data, marketing) and honest ones that mention payments or links | Designed to validate fixed rules |
| Adversarial 5 | 20 | New manipulation families and honest ones that sound manipulated | 5 per department |
"Majority" is the total accuracy of always answering the set's most frequent option: the baseline every model must beat.
The ground truth and how much to trust it
Human review on Oct 11: all 88 fields previously completed by Codex (83 current main fields and five additional fields) were reviewed by the user. 51 initial agreements and 37 adjudicated discrepancies: 23 applied changes and 14 retain GT. Initial blind annotation; adjudication with auxiliary opinions from Cursor and Devin. This does not establish human review of every label or every set.
The current v5 (Oct 11) incorporates 23 label changes adjudicated by the user after reviewing 88 fields. Complete GT v4 preserved; same cases, states and questions. Earlier confirmatory analyses retain GT v4; the current scoreboard uses v5.
The messages are invented; none comes from real patients. Each case's correct answer was drafted by language models and reviewed by people to varying degrees:
| Sets | Drafted the GT | Validated it |
|---|---|---|
| Triage, papers, adversarial 1–2 | An LLM agent (Lyra), Sep 20–23 2026 | Historical partial review and human review of selected fields on Oct 11; GT v5 incorporates adjudication. Not exhaustive review. |
| Extended triage, adversarial 3–4 | Claude | The project lead, before running any model; additional human review of adv3 fields on Oct 11 |
| Adversarial 5 | Claude | Claude, by delegation (no human review) |
Versions and changes
The GT is versioned: v1 is the original, v2 (Sep 26) corrects a paper and v3 (Sep 27) incorporates the second-annotation adjudication. The previous v4 (Oct 6) removes P02, whose fetch duplicated P03's paper (PMID 37130440), and keeps P03 with its GT. It adds no cases: 31 papers and 194 cases remain in the full battery (191 without OOD). The earlier data is kept and every model is re-scored; figures across GT versions are not directly comparable. The previous eleven field changes:
- Paper P04 (cryobiopsy in ILD): domain "ild", which was not a valid option, becomes
ip; designcohortbecomesmeta(the title is "Systematic Review"). - T03 resting dyspnoea with orthopnoea and oedema: outpatient clinic becomes emergency.
- T10 complaint about the wait: answer today becomes no (the sender gives a deadline of "this week").
- T12 insurer asking for the indication report: clinical becomes yes.
- T26, T32, T36 and T38 (hostile or threatening messages): answer today becomes yes.
- T37 certificate to hand in today: medium urgency becomes critical (explicit deadline).
- A10 polite lawyer: hostile becomes no.
Second annotation
To measure the GT's noise, a blind form was prepared (showing neither the GT nor the models' answers) with the disputed fields: those where most models contradicted the GT or were split. Of the 167 fields, a person answered 78; the rest were completed by another model and are not used as evidence.
| Question | Fields | Agreement with GT | Kappa |
|---|---|---|---|
| Urgency | 38 | 58 % | 0.42 (weighted) |
| Department | 12 | 67 % | 0.46 |
| Answer today | 17 | 65 % | 0.33 |
| Clinical | 8 | 88 % | 0.71 |
| Hostile | 3 | 33 % | — (n = 3) |
These are fields selected by disagreement; these figures describe that subset and do not estimate the GT's overall reliability. The relevant part: urgency and "answer today" are highly interpretable. Re-scoring every model with the second annotation's answers did not change the ordering between models; they all went up a few points.
Experiments with criteria fixed in advance
For each experiment the success criterion was written before running it, and committed to version control. Negative results are documented the same way as positive ones. Closure figures with GT v4 (or v3 where noted); the current scoreboard uses GT v5.
| Experiment | Criterion | Result | Verdict |
|---|---|---|---|
| Jev reviewer over Jev | Improve at least 2 of 4 blocks and more than a two-call no-review control | Improves all 4 blocks; the control improves nothing. Confirmed afterwards on new cases, with a smaller gain | Passes |
| Open reviewer over Decider-4B | Recover at least 50 % of the gain Jev gives as reviewer, without worsening any phase by more than 2 points | Clef-27B: ~89 % on adversarial and ~61 % on triage, alert 9/10 with 1 FP — the first local option to qualify. Previously not: Decider-35B NVFP4 34–45 %, AnyJev-32B worsens triage, AnyJev-8B no gain, gpt-6-luna 77 %/28 % | Passes (Clef-27B) |
| Fixed rules against scams | Validation on 20 new cases with the rules frozen | 0 of 10 attacks detected; 3 of 10 honest flagged, one with fever after the EBUS | Ruled out |
| Manipulation alert | At least 7 of 10 manipulated detected and at most 1 false positive, on new cases | 9 of 10 and 1 false positive | Passes |
| Three-call voting (historical, Sep 23) | Beat a single call | Same accuracy at triple the cost | Neutral |
| Jev ↔ Laya disagreement as a signal (historical) | Detect Jev's errors | Laya's errors include Jev's: 0 of 2 detected, 6 false alarms out of 10 | Ruled out |
| JEV-68, thinking ≥ +5 in both orders | 97.5 % CI: lower bound ≥ +5 adjusted on d0 and on d1 | Δ +11.7 and +6.5; the CIs cross the threshold | Inconclusive |
| JEV-72, primacy ≥ +5 pp (n=37) | Bronchoscopy first causes ≥ +5 pp more department errors than last, and the contrast passes Holm | +35.1 pp of errors, Holm p=0.009 | Confirmed |
| JEV-76, thinking over discrete ≥ +5 | 98.75 % CI. H1 ≥ +5 in both orders | H1 refuted on both orders; the CIs include 0 (neither degradation nor equivalence). H2 inconclusive on d0 and refuted on d1 | Adds nothing |
| JEV-80/81, luna-decisions | No superiority threshold: McNemar–Holm (53 tests) vs Jev; refusal-as-alert, descriptive; agreement of the two replicas | 48* not comparable with 45. Fallback 39.1 [28.2–49.1] vs 45.4. Alert 5/30 and 0/30 FP. Replicas 934/934 | Does not show it beats Jev |
| JEV-77, MedGemma vs Gemma 3 and Qwen | H1: ≥ +5 adjusted improvement over Gemma3-27B; H2: non-inferiority ≥ −5 vs a fresh Qwen FP8 | H1 inconclusive: +9.7 [−1.7; +21.8] CI97.5. H2 refuted: −37.0 [−49.8; −24.9]. Measured under Amendment 1's constrained grammar; Amendment 2 and the NAS deviation documented | No superiority or clinical usefulness |
| JEV-78, OpenAI's native Decisions API | No equivalence margin: agreement and Δ adjusted vs the OpenRouter route on the common phases; Holm 53 vs Jev | 934/934 and Δp 0 do not prove equivalence. Own adjusted 38.25 (refusals at 0) vs 47.70 on the 6 common phases. Holm 53 = 0 | Inconclusive version |
| JEV-82, d1 rotation of luna-decisions | Order sensitivity: primacy ≥5 pp and aggregate stability (no equivalence margin) | Primacy ≥5 pp refuted (U95 = −2.94 over 32 paired records). Δ 0.00 does not prove stability or equivalence. 7 vs 11 errors is not general degradation. The d1 run does not enter the scoreboard | Primacy refuted; stability unconcluded |
| JEV-83, Claude Haiku 5.5 | Holm 53 vs Jev on the H-off cell (thinking off) | H-off: Holm 53 = 0, no superiority or equivalence. H-disc and H-adapt descriptive. E11 deviation: H-adapt's cost is a lower bound | No superiority or equivalence |
| JEV-84, Haiku 5.5 as reviewer, alert and replica | Original JEV-32 criterion (Decider, adv5 alert) versus the extended JEV-84 one (per-set alert on adv3–5 and also D1 Jev); Holm 212 over the reviewer block; single-pass alert with McNemar–Holm of 2; stable replica if agreement ≥ 95 % with full universe and verified provenance | The fractions and the adv5 alert are met, but it FAILS on both D1s because of adv4 (5/10). Jev→Haiku audit 74, the highest adjusted among complete audit configurations (review 76, descriptive secondary of the same raw); Holm 212 = 0. Single-pass alert 16/30 · 0 FP, worse than Clef-27B and the Jev reviewer after Holm. Replica: 919/964 = 95.33 %, STABLE | No confirmed roles; descriptive card |
| JEV-85, OpenMed Ministral-3B-Medical | llm-adapter battery against local vLLM; >20-error stopping criterion declared beforehand; McNemar–Holm of 53 per mode vs Jev | prob: 171/194, 23 errors — the stop was breached (the guard was not in the launcher); −7* over 3/10 phases. disc: 187/194, 45* over 4/10. Only one prob defeat survives (department, extended ES triage); no advantage of the model. Checkpoint license not documented | Descriptive negative; not a candidate |
| JEV-90, Microsoft-Decision-1 | Holm 53 vs Jev (excluding exposed IDs); same-order replicate; primacy ≥5 pp; «zero changes» on department with d1 rotation and R control | Adjusted 44 [34–53]; Holm53 = 0; replicate 959/964 (99.5 %); primacy REFUTED (10→10); 0/158 COMPATIBLE/INCONCLUSIVE. R and D1 analysis only | No superiority or equivalence; recommendation unchanged |
The full 57 cards — with models, dates, the model × experiment matrix and gaps — are on Experiments.
Jev versions
The whole bench is measured with jev-1.13, which OpenRouter publishes as typesafe/jev-1.13-20260917 and the TypeSafe API as jev-1.13.0. Both give the same answers (406 of 409 equal; the 3 different ones sit on the rounding boundary). As of Sep 27, 2026, jev-latest and jev-preview point to that same version.
Jev has some call-to-call noise: re-running the battery changes the probabilities by about 0.01 on average and a borderline case here and there changes its answer. If the alias moves to a new version, the measurements have to be repeated before comparing.
Glossary
- Single pass / with reviewer
- One call to the model, versus two: the first decides and the second audits that decision.
auditrule- The reviewer only replaces an answer if it marks it as incorrect.
reviewalways takes the reviewer's answer;avgaverages both. - Majority (oracle)
- Always answering the set's most frequent option. It is a minimum bar, and "oracle" because it is computed knowing the GT.
- 95 % CI
- Plausible range of the accuracy, estimated by resampling the cases (bootstrap). If two ranges overlap a lot, there is no clear difference.
- McNemar
- Test to compare two models on the same cases. Only the cases where they disagree count.
- Brier
- Mean squared error of the yes/no questions' probabilities. 0 is perfect; 0.25 equals always answering 50 %.
- ECE
- Mean distance between the probability the model gives and the real frequency, in probability bins.
- Spearman (ρ)
- On papers, whether the model orders the papers by relevance like the GT (1 = same order).
- Zero-shot
- No examples, no tuning: the model receives the questions as they are.
- AnyJev L0
- AnyJev's label-free level: it presents the options in several orders and averages, so the order does not bias the answer.
- NVFP4
- NVIDIA's 4-bit quantization for Blackwell GPUs: less memory and more speed, with a small quality loss.
- Pre-registration
- Writing the success criterion before running the experiment, so it cannot be tuned after the fact.
Reproduce
The code (the jevbench harness), the cases, the versioned GT and every model's full answers are in the repository's public mirror (v2.10.0). The paper abstracts are not distributed: the repo carries metadata and hashes, and python3 -m jevbench.fetch_abstracts rebuilds them from PubMed. The README describes three levels of reproduction: redoing the maths with no keys and no GPU, re-running Jev (under $0.02) and re-running the open models on GPU.
system-one-bench