Skip to content

Typed Decisions

A research reproduction of the Jev question shape — Choice, Score and Noul answered in one forward pass — trained and measured side by side on encoder backbones and a diffusion LLM, with accuracy, calibration, latency and training cost in one table.

Stars
10
Language
Python
Published by
Community
Author
kotoba-lang
Last verified
Oct 2026

kotoba-lang/typed-decisions

Organization repository on GitHub

View on GitHub

Jev-shaped typed-decision model (state + Choice/Score/Noul questions -> calibrated probabilities, one pass) on ModernBERT / DeBERTa / LLaDA-MoE, with measured latency, accuracy, calibration and training cost

Forks
0
Last pushed
Updated Sep 2026

Repo stats from the GitHub API, cached Oct 2026.

About this project

A lightweight reproduction of the Jev shape — one program state, many typed questions (Choice / Score / Noul), calibrated probability distributions back in a single parallel pass — on two backbones, so their speed, accuracy/calibration and training cost can be read side by side. Subject-plane name (kotoba-lang/typed-decisions): the subject is the typed-decision model, not a role and not an origin — Jev (typesafe.ai) is the reference point, not a spec we implement (there is no public spec; the API shape is…

Quoted from the project's README. Read the full README.

Highlights

  • Accuracy on 3,508 test questions: DeBERTa-v3-large 0.855, LLaDA-MoE-7B-A1B with LoRA 0.835, ModernBERT-base 0.717, each with Brier and ECE reported alongside.
  • The 7B diffusion model matches the best encoder on accuracy but is 16x slower per state and roughly 14x the training cost, so one pass is the operating point.
  • A published ablation: a scoring head on a new [OPT] marker token never leaves the label prior, while reading the mean of each option's text tokens works.
  • Labels are public gold only — banking77, sst5 and boolq — so these accuracies are not comparable to Jev's own figure on private workflows.

Watch out

This is an independent reimplementation, and the README says so: there is no public Jev spec, so the API shape here was reconstructed from the vendor's site and a published guide. The headline accuracies come from public gold labels, which the README states are not comparable to Jev's own number on four private workflows. The listed gaps are equally concrete. Out-of-distribution question shapes are untested, so it is not shown whether the models read an instruction or memorised the option slot; there are no multiple seeds; ModernBERT-large was not trained to convergence; and Apple MPS latency was never captured. DeBERTa-v3-large wins on accuracy but has a 512-token context with the state cut to 256 tokens, and it cannot hold 100 questions at all. The LLaDA row trains on 6,000 states against 18,000 for the encoders, so the equal-data control is the fairer comparison, and the steps=4 result comes from a 60-question smoke run. Copy reviewed against the repository README on 2026-10-04, not from running it.

Questions about this entry

Short answers drawn from the linked project or page.

More Jev resources like this

24GitHub stars
Unofficial laptop study of parallel constrained decoding: prefill once, share the KV cache across fields, and decide all schema fields in one batched forward pass without writing JSON.
Jev Practices & Patterns#community#jevbest#catalog-import
22GitHub stars
Offline evaluator that checks whether classifier confidences match reality and converts mistake costs into a deployable threshold, emitting an HTML report plus machine-readable threshold files.
Jev Practices & Patterns#community#jevbest#catalog-import
16GitHub stars
Vendor-neutral harness that tests whether Jev reranking improves a small RAG stack, using frozen hybrid BM25 plus BGE-M3 candidates and isolating retrieval, rerank, and generation stages.
Jev Practices & Patterns#community#jevbest#catalog-import
37GitHub stars
Minimal Python recipe that turns any causal LLM into a Jev-style classifier by prefilling choice_index and constraining sampling to legal indexes in one forward pass.
Jev Practices & Patterns#community#jevbest#catalog-import
39GitHub stars
Open replica of the typed decision API on openly available base models, answering choice, score, and true-probability questions in one forward pass with no decoding.
Jev Practices & Patterns#community#jevbest#catalog-import
941GitHub stars
Type-safe generation layer over existing autoregressive models via JSON Schema on SGLang, returning constrained string, numeric, boolean, and enum answers with optional thinking.
Jev Practices & Patterns#community#jevbest#catalog-import

From the Jev guides

Original write-ups on what this entry is for.

Most Jev accuracy problems are state problems. What belongs in a state, what is a pre-made judgment to leave out, and why naming the slice you ask about matters more than the wording.
Jev Practices & Patterns#state#design#primitives
Read article
A Noul returns one number and no separate confidence. How to read the value, pin its boundary with criteria, split compound questions, and set a per-action threshold that matches the cost of being wrong.
Jev Practices & Patterns#noul#primitives#confidence
Read article
A Score is a weighted position, not a ruler. Why the number can land between levels, why levels are judged separately, and how to combine several atomic scores in code instead of one crowded rubric.
Jev Practices & Patterns#score#primitives#scoring
Read article
Back to all resources

From the Jev community

Posts from builders shipping with Jev right now.

Follow @typesafeai