Skip to benchmark
Blobfish ResearchTyped Decision Bench v0.3.0Results published

Can a one-pass decision model make the calls a business makes — and know how sure it is?

Typed Decision Bench measures System One models — models that take a state and typed questions and return calibrated probabilities in a single forward pass, with no text generation — on the decisions practitioners actually delegate to them: triage, routing, tool dispatch, passage filtering, citation checks, guardrails, compliance, extraction, scoring, control and run judging. One suite per use-case family, several industry verticals in each, three primitives (yes/no, choice, ordinal score). Every label is ground truth from a public dataset or a seeded generator; every answer is scored as a probability. No LLM judge.

5,387frozen items
25tasks in 5 suites
16industry verticals
3primitives: choice, noul, score
0LLM grading calls
Try the decision loop

Decide. Measure. Improve.

jev-1.13.0
Your key funds live calls. It is sent to TypeSafe through Blobfish and is never saved.

What happened

Customer: I was charged twice for order A-104. Please refund the duplicate charge.
Questions sent to Jev
{
  "refund": {
    "type": "noul",
    "instructions": "Does the customer ask for a refund?"
  },
  "team": {
    "type": "choice",
    "instructions": "Which team should handle this?",
    "criteria": {
      "billing": "Charges, invoices, refunds",
      "shipping": "Delivery problems",
      "other": null
    }
  },
  "anger": {
    "type": "score",
    "instructions": "How frustrated is the customer?",
    "criteria": [
      "calm",
      "frustrated",
      "very frustrated"
    ]
  }
}
Awaiting your call

Run the request to see typed answers and probabilities from Jev.

What it measures

One suite per use-case family, the verticals inside it

The families follow the published System One use-case taxonomy: workflow control (inbox triage, intent routing, typed tool dispatch, confidence-gated actions), retrieval and knowledge (passage filtering, reranking, citation verification, entity alignment), safety and quality (guardrails, compliance, self-consistency, semantic linting),data and operations (hierarchical classification, structured extraction, composite scoring, tabular prediction) andreal-time and agents (tool and skill routing, real-time control, agent-run judging). Each task is a decision a buyer in its vertical would recognise as real work — a regulator's complaint desk, a contract-review queue, a clinical-trial screen, a moderation pipeline, a Kubernetes triage rota, an ICU vitals window.

Every system receives the identical compact-JSON state and the identical typed questions. A yes/no question is scored on P(yes); a choice on the returned distribution over its options; an ordinal score on the distribution over its levels. Items a system structurally cannot take (over its input limit or option cap) are recorded as unanswered, never as wrong — and they count as zero on the full-roster metric, so coverage is always visible.

Suites and tasks

25 tasks, 5,387 items

Data and operations 981 items · 4 tasks

TaskUse caseVerticalPrimitiveItemsOptionsMax state tokensLabelsSource
arxiv-archive-subcategoryHierarchical classificationscience publishingchoice20011264logged outcomegfissore/arxiv-abstracts-2021
dbpedia-ontology-hierarchyHierarchical classificationmedia and referencechoice2009405 long tierlogged outcomeDeveloperOats/DBPedia_Classes
finer-xbrl-fact-tagStructured extractionfinancechoice18128251expert labelsnlpaueb/finer-139
trial-outcomesFeature extraction for MLsaas growthnoul400—282generator oraclegenerated here (seeded oracle)

Real-time and agents 1,199 items · 6 tasks

TaskUse caseVerticalPrimitiveItemsOptionsMax state tokensLabelsSource
bfcl-tool-dispatchAgent routing and skill selectionsoftware engineeringchoice2008306 long tierexpert labelsminpeter/bfcl-v1-non-live-ast-parsed
k8s-issue-kind-routingAgent routing and skill selectiondevopschoice2007429 long tierlogged outcomeopen-index/open-github-issues
swe-rebench-run-resolvedAgent-run judgingsoftware engineeringnoul200—2170 long tierexecuted verifiernebius/SWE-rebench-openhands-trajectories
swe-smith-run-resolvedAgent-run judgingsoftware engineeringnoul200—1287 long tierexecuted verifierSWE-bench/SWE-smith-trajectories
tau2-airline-run-successAgent-run judgingcustomer operationsnoul200—473 long tierexecuted verifiersnorkelai/Tau2-Bench-Verified-Airline-With-Code-Agents
tau2-airline-transcript-successAgent-run judgingcustomer operationsnoul199—3936 long tierexecuted verifiersnorkelai/Tau2-Bench-Verified-Airline-With-Code-Agents

Retrieval and knowledge 1,249 items · 5 tasks

TaskUse caseVerticalPrimitiveItemsOptionsMax state tokensLabelsSource
abt-buy-product-matchEntity alignmente commercescore2003259expert labelsmatchbench/Abt-Buy
casehold-cited-holdingCitation verificationlegalchoice2005437 long tierlogged outcomecoastalcph/lex_glue
esci-product-rerankSemantic rerankinge commercenoul490—421 long tierhuman annotationtasksource/esci
hotpot-context-filterRAG passage filteringknowledge worknoul200—1403 long tierhuman annotationhotpotqa/hotpot_qa
trialgpt-criterion-supportCitation verificationhealthcarechoice1594297expert labelsncbi/TrialGPT-Criterion-Annotations

Safety and quality 1,162 items · 6 tasks

TaskUse caseVerticalPrimitiveItemsOptionsMax state tokensLabelsSource
cuad-checklistCompliance verificationlegalnoul204—288expert labelsnguha/legalbench
humanevalpack-spec-matchSemantic lintingsoftware engineeringnoul164—448 long tierexecuted verifierbigcode/humanevalpack
moderation-hate-severityLLM guardrailstrust and safetyscore2003366 long tierexpert labelsmmathys/openai-moderation-api-evaluation
prompt-injectionLLM guardrailssecuritynoul194—221human annotationdeepset/prompt-injections
unfair-tos-clause-typeCompliance verificationconsumer legalchoice2009174expert labelsnguha/legalbench
vitaminc-claim-consistencySelf-consistency checksmediachoice2003183human annotationtals/vitaminc

Workflow control 796 items · 4 tasks

TaskUse caseVerticalPrimitiveItemsOptionsMax state tokensLabelsSource
cfpb-complaint-product-queueSupport inbox triagefinancechoice1997292logged outcomeliri-uzh/cfpb-complaints-mini
hwu64-tool-selectTyped tool dispatchconsumer assistantchoice2006427human annotationdeutsche-telekom/NLU-Evaluation-Data-en-de
ledgar-clause-review-routingIntent and model routinglegalchoice19964274logged outcomecoastalcph/lex_glue
unfair-tos-publish-gateConfidence-gated actionsconsumer legalnoul198—161expert labelscoastalcph/lex_glue
Scoring

DecisionScore: a proper score on the probability, not just the argmax

Mean per-item proper score over the full roster, 0-100: per item, the mean over its gold questions of 1 - normalised Brier of the returned probabilities; an item a system could not answer scores 0.

Because it is a strictly proper scoring rule, a system cannot improve it by hedging or by over-claiming: the best strategy is to report its true belief. Beside it, every suite reports accuracy (top label), ROC-AUC on yes/no questions, log loss, Brier and expected calibration error (10 equal-width bins), and the answered count. A strict “pass” on the leaderboard is a top-label-correct item. Latency and cost are reported per system on this page but are not ranked: hosted APIs are measured from a laptop, open weights on a GPU pod, and the two boundaries are not comparable.

Results

6 systems on the same 5,387 items

#SystemDecisionScoreAccuracyAnsweredTruncatedHeld-out suitesWeights
1Jev
jev-1.13.0
Closed weights; training data undisclosed, so every contamination tier is unknown. Probabilities are returned rounded to 2 decimals.
81.776.8%5,387 / 5,38700.0%proprietary API (closed weights)
2JevFish
jevfish-v4-r4b
First-party model published by the same team as this benchmark. Full fine-tune of Mapika/decider-2b at lr 1e-6 with a KL anchor to the starting model and a floor-gated early stop, on verifier- and human-labelled public agent runs (no labels distilled from a closed vendor). It replaces round 3 (75.82), which scored below its own base. Against decider-2b as published it is +0.69 [+0.39, +0.98]; against the SAME decider-2b calibrated with the same procedure (78.41, not a published row) it is a statistical tie, -0.17 [-0.43, +0.08]. In-task on the SWE-smith and SWE-rebench corpora it trained on (161 of the 200 SWE-smith items share a task instruction with training rows, different agent runs). Measured effect: drop both SWE tasks (4,987 items) and JevFish scores 78.94 (decider-2b 78.20, System One Scorer 77.61, OpenJev 77.20, Jev 82.84) - its rank does not change. Known limits: JSON-object states rank worse than the same content as text, and on code runs it is pass-leaning at p=0.5. Per-question-type calibration temperatures: noul 1.15, ordinal 1.09, choice 3-5 1.30, choice 11+ 1.32.
78.270.1%5,387 / 5,387080.0%code MIT; weights not released
3decider-2b
decider-2b-v8
In-task on several public sources it trained on (see contamination tiers); latency is local MPS and not comparable with hosted APIs.
77.668.8%5,387 / 5,3870100.0%Apache-2.0
4System One Scorer
s1-scorer-4b-v2b
Scores one sequence per option with a 384-token limit; longer states are cut from their end (flagged as truncated).
77.267.6%5,387 / 5,387157180.0%CC-BY-NC-4.0 (weights; evaluation only)
5OpenJev
openjev-latest
Zero-shot open replica served by a third party; no task training.
75.673.7%5,387 / 5,38700.0%Apache-2.0 (code)
6NanoJev
nanojev-0.6b
A nano replica trained on maze/navigation decisions; items over its 512-token limit are rejected and count as unanswered.
56.843.7%4,582 / 5,3870100.0%code MIT; the weights card declares no licence
Data and operations — per-system detail
SystemDecisionScoreAccuracyAUROCECELog lossBrierAnsweredContamination
Jev83.981.9%0.7160.0640.5900.201981 / 981unknown
JevFish78.777.5%0.6260.1010.3250.092981 / 981held-out
decider-2b78.975.8%0.6290.0510.3350.095981 / 981held-out
System One Scorer77.977.5%0.5710.2560.5080.160981 / 981held-out
OpenJev76.380.4%0.5440.0820.4180.105981 / 981unknown
NanoJev64.240.1%0.4980.2340.3530.098981 / 981held-out
Real-time and agents — per-system detail
SystemDecisionScoreAccuracyAUROCECELog lossBrierAnsweredContamination
Jev75.865.5%0.5990.1090.7740.2741199 / 1199unknown
JevFish73.058.7%0.4590.0870.8780.3211199 / 1199in-task
decider-2b73.055.3%0.3670.1121.0730.3921199 / 1199held-out
System One Scorer74.856.9%0.4680.0790.7840.2871199 / 1199held-out
OpenJev66.661.4%0.4800.2263.0380.4601199 / 1199unknown
NanoJev33.343.1%0.4800.1050.8000.293598 / 1199held-out
Retrieval and knowledge — per-system detail
SystemDecisionScoreAccuracyAUROCECELog lossBrierAnsweredContamination
Jev83.479.6%0.8770.0420.5170.1601249 / 1249unknown
JevFish79.872.1%0.8140.1470.5600.1921249 / 1249held-out
decider-2b78.370.9%0.7830.1230.5820.2001249 / 1249held-out
System One Scorer75.562.5%0.6520.0390.6830.2431249 / 1249near
OpenJev76.575.4%0.8450.1490.9760.1891249 / 1249unknown
NanoJev57.148.8%0.5420.1300.7110.2561046 / 1249held-out
Safety and quality — per-system detail
SystemDecisionScoreAccuracyAUROCECELog lossBrierAnsweredContamination
Jev88.985.9%0.9830.0950.3230.1001162 / 1162unknown
JevFish84.677.7%0.9620.0540.3060.0881162 / 1162held-out
decider-2b83.577.1%0.9470.0850.2890.0771162 / 1162held-out
System One Scorer82.977.5%0.9710.0790.3470.0961162 / 1162held-out
OpenJev85.982.5%0.9720.1600.6380.1031162 / 1162unknown
NanoJev69.245.6%0.5710.3040.7370.2701161 / 1162held-out
Workflow control — per-system detail
SystemDecisionScoreAccuracyAUROCECELog lossBrierAnsweredContamination
Jev74.770.1%0.9060.2090.5460.169796 / 796unknown
JevFish73.864.2%0.8590.1070.3200.097796 / 796held-out
decider-2b72.965.0%0.8450.1720.3390.106796 / 796held-out
System One Scorer74.765.2%0.8950.2990.5420.178796 / 796held-out
OpenJev71.868.5%0.9020.2571.0100.206796 / 796unknown
NanoJev64.539.1%0.5930.0930.6250.216796 / 796held-out
Fairness

Every system × dataset carries a contamination tier

Open replicas publish their training registries; we read them at source. A dataset a system trained on (its train split, same task) is in-task; a synthetic clone of the same distribution is near; a source absent from a documented registry is held-out; a closed system with undisclosed training data is unknown. Fresh synthetic tasks generated here are held-out for every open system. The per-suite tables above show the tier next to each number, and the benchmark scorecard penalises in-task pairs.

Taskjevopenjevdecider-2bs1-scorernanojevjevfish
arxiv-archive-subcategoryunknownunknownheld-outheld-outheld-outheld-out
dbpedia-ontology-hierarchyunknownunknownheld-outheld-outheld-outheld-out
finer-xbrl-fact-tagunknownunknownheld-outheld-outheld-outheld-out
trial-outcomesunknownunknownheld-outheld-outheld-outheld-out
bfcl-tool-dispatchunknownunknownheld-outheld-outheld-outheld-out
k8s-issue-kind-routingunknownunknownheld-outheld-outheld-outheld-out
swe-rebench-run-resolvedunknownunknownheld-outheld-outheld-outin-task
swe-smith-run-resolvedunknownunknownheld-outheld-outheld-outin-task
tau2-airline-run-successunknownunknownheld-outheld-outheld-outheld-out
tau2-airline-transcript-successunknownunknownheld-outheld-outheld-outheld-out
abt-buy-product-matchunknownunknownheld-outheld-outheld-outheld-out
casehold-cited-holdingunknownunknownheld-outheld-outheld-outheld-out
esci-product-rerankunknownunknownheld-outheld-outheld-outheld-out
hotpot-context-filterunknownunknownheld-outnearheld-outheld-out
trialgpt-criterion-supportunknownunknownheld-outheld-outheld-outheld-out
cuad-checklistunknownunknownheld-outheld-outheld-outheld-out
humanevalpack-spec-matchunknownunknownheld-outheld-outheld-outheld-out
moderation-hate-severityunknownunknownheld-outheld-outheld-outheld-out
prompt-injectionunknownunknownheld-outheld-outheld-outheld-out
unfair-tos-clause-typeunknownunknownheld-outheld-outheld-outheld-out
vitaminc-claim-consistencyunknownunknownheld-outheld-outheld-outheld-out
cfpb-complaint-product-queueunknownunknownheld-outheld-outheld-outheld-out
hwu64-tool-selectunknownunknownheld-outheld-outheld-outheld-out
ledgar-clause-review-routingunknownunknownheld-outheld-outheld-outheld-out
unfair-tos-publish-gateunknownunknownheld-outheld-outheld-outheld-out
Benchmark quality

The benchmark is scored too

AxisScoreBar
realism0.7010.70clears
diversity0.9850.70clears
complexity0.7050.60clears
verifiability1.0000.95clears
fairness0.8170.60clears
headroom0.8000.60clears
power0.7790.70clears

Weakest axis: none — every scored axis clears its bar

Realism weighs operational records over academic sentences and verifier or outcome labels over crowd labels; diversity counts families, verticals, primitives and datasets and rejects near-duplicate states; complexity rewards abstention options, multi-question items, rare events and a long tier; verifiability requires ground-truth labels inside the option set; fairness is the held-out share; headroom is measured on the ranked systems; power is the expected confidence-interval width at each task's size. Each release is scored before it is published and the weakest axis is the next change.

Provenance

Licences, sources, reproducibility

DatasetLicenceTasks
gfissore/arxiv-abstracts-2021CC0-1.0arxiv-archive-subcategory
DeveloperOats/DBPedia_ClassesCC0-1.0dbpedia-ontology-hierarchy
nlpaueb/finer-139CC-BY-SA-4.0finer-xbrl-fact-tag
synthetic:saas-trial-v1 (generated here)CC-BY-4.0 (generated here)trial-outcomes
minpeter/bfcl-v1-non-live-ast-parsedApache-2.0bfcl-tool-dispatch
open-index/open-github-issuesODC-BY-1.0k8s-issue-kind-routing
nebius/SWE-rebench-openhands-trajectoriesCC-BY-4.0swe-rebench-run-resolved
SWE-bench/SWE-smith-trajectoriesMITswe-smith-run-resolved
snorkelai/Tau2-Bench-Verified-Airline-With-Code-AgentsApache-2.0tau2-airline-run-success, tau2-airline-transcript-success
matchbench/Abt-BuyCC (variant unconfirmed on the source page) — FLAGGEDabt-buy-product-match
coastalcph/lex_glueCC-BY-4.0casehold-cited-holding, ledgar-clause-review-routing, unfair-tos-publish-gate
tasksource/esciApache-2.0esci-product-rerank
hotpotqa/hotpot_qaCC-BY-SA-4.0hotpot-context-filter
ncbi/TrialGPT-Criterion-AnnotationsPublic domain (NCBI)trialgpt-criterion-support
nguha/legalbenchCC-BY-4.0cuad-checklist, unfair-tos-clause-type
bigcode/humanevalpackMIThumanevalpack-spec-match
mmathys/openai-moderation-api-evaluationMITmoderation-hate-severity
deepset/prompt-injectionsApache-2.0prompt-injection
tals/vitamincCC-BY-SA-3.0vitaminc-claim-consistency
liri-uzh/cfpb-complaints-miniCC0-1.0 (CFPB public domain)cfpb-complaint-product-queue
deutsche-telekom/NLU-Evaluation-Data-en-deCC-BY-4.0hwu64-tool-select

Panels are stratified, seeded (20260919) and carry sampling weights; token counts use the Qwen/Qwen3-0.6B tokenizer, the tightest among the six systems. This is an independent project, not affiliated with or endorsed by any model vendor.

Everything here is open. The generator, adapters, metrics, contamination registry and quality scorecard are MIT-licensed at github.com/blobfishai/jevfish, next to the trainer and server of the first-party model ranked above. The frozen items, each with the licence of its source, and every system's answer to every item are on Hugging Face at SamuelChien821/typed-decision-bench. Two tasks whose sources state no clear redistribution licence (Abt-Buy, TrialGPT) ship there as item ids only; python -m typed_decision_bench.freeze --seed 20260919 rebuilds them, and SHA256SUMS checks the rebuild. The first-party model's weights are not released yet.