Attention Deficit · EP 008
Model card jev-1.13.0
Cover

It won't
Say
a word.

A frontier-intelligence function call. State goes in, typed probabilities come out, and no paragraph comes out with them.

COAL CHUTE · STATE IN INSPECTION WINDOW TYPED DECISION ENGINE · ONE PASS · NO DECODE LOOP READ AT 0.15 S · SLIP STILL MID-CHUTE INPUT TOKENS336OUTPUT TOKENS0ELAPSED0.15 sCOST0.0014¢ CALIBRATED GAUGES · ALL THREE SWING AT ONCE 0.51FRAUD7% 0.51CLEAN88% 0.51REVIEW5% INVOICE #4471 TYPED TELEGRAPH · THE CHAT MODEL · ONE GLYPH AT A TIME ELAPSED · KEEPS RUNNING8.0 s COST · 49 OUTPUT TOKENS0.074¢

The machine reads the slip in one pass, so the gauges swing while the slip is still in the chute. The telegraph is a chat model answering the same question. Gauge readings are TechSpot's example, and the timing is illustrative.

You've built this if statement. It kept breaking.

Han Yuan wrote on September 17 that most LLM calls inside software are if statements. Is this email important? Which team owns this ticket? We ask a chat model, get a paragraph back, and write code to turn the paragraph into true or false. Then the model wraps its JSON in Markdown fences and the parser breaks.

Fraud check · chute versus telegraphSimulation
state: "Invoice #4471 from Northwind Supply for $12,480. New vendor, matches PO-2210 line items, bank details changed yesterday, requested same-day wire."

Telegraph · a chat model taps out a string

elapsed 0.0 soutput tokens 0cost 0.000¢
Waiting.

Chute · Jev returns typed probabilities

elapsed 0.00 soutput tokens 0cost 0.0000¢
Waiting.
Simulation. Published latencies and prices are 70 to 500 ms and $0.042 per million input tokens for Jev, and 3 to 329 s for frontier models, per TypeSafe's launch post. We invented the tape paragraph, and its cost counter assumes $15 per million output tokens. Jev's three readings are TechSpot's example.
SoundbiteMost LLM calls inside software are if statements.

Han Yuan, "What Jev Knows, and What It Doesn't," September 17, 2026.

01 · one pass · three primitives

Jev answers every question in one pass.

You send a state, text or JSON, plus a map of typed questions. The model encodes the state once and evaluates every question against it in parallel. TypeSafe's docs say adding a question barely changes the response time. Its parallel-questions cookbook reports one batched 13-question request running 12.2× cheaper and 10× faster than the same questions asked separately, with no change in answers. The budget is 64k tokens per request, with 32k for the state plus the longest single question. Output tokens are free because there are none.

FIG. 01 · One pass, three primitivesFrom TypeSafe's docs, read September 21, 2026
STATE · THE SLIP text or JSON up to 32k tokens "I was charged twice…" ONE FORWARD PASS encode once no decode loop no chain of thought 70 to 500 ms end to end (vendor claim) NOUL · "does this request a refund?"→ noul: 0.95 CHOICE · billing / technical / account→ choice: billing · p per option · confidence SCORE · 0 calm · 1 frustrated · 2 very→ score: 1.4 · distribution · confidence PARALLEL · ONE MORE QUESTION BARELY MOVES LATENCY
  1. State goes in, text or JSON, up to 32k tokens.
  2. One forward pass encodes it. No decode loop, no chain of thought. 70 to 500 ms by the vendor's claim.
  3. The model answers every question against that one encoding, in parallel. Noul returns a probability of yes. Choice returns a pick with a probability per option and a confidence. Score returns a weighted score with a distribution and a confidence.
Noul

Is this statement true?

Returns one number, the probability of yes. 0.05 is a confident no and 0.95 a confident yes. There is no separate confidence field because the number is one.

Choice

Which option fits?

Up to 255 options you describe at call time. Returns the pick, a probability for every option, and a confidence derived from how concentrated that distribution is.

Score

Where on this scale?

Two to ten described levels. Returns a probability-weighted score, so 1.4 can sit between named levels, plus the distribution and a confidence. The docs say to treat it as a threshold and never as a measurement.

FIG. 02 · The primitive consoleConfidence uses the three-option formula from TypeSafe's docs

Instrument 1 · Noul

Probability of yes
0.95confident yes · act

Three canned tickets. Values illustrate the docs' three bands.

Instrument 2 · Choice

Three slide valves that always sum to 100%
0.85choice: billing · (3 × largest − 1) / 2

Instrument 3 · Score

Stepped level glass · 3 levels
1.3score of 2 · illustrative distribution
levels 2 to 10

Move a valve on instrument 2 and the other two rescale to keep the total at 100%, the way the docs demo does. Your code never asks the model how sure it is. The shape of the distribution is the certainty measure, which removes the failure mode where a chat model asserts 95% because assertive text scores well with human raters. The docs suggest three bands, act, confirm, and route to a human, with the line for a destructive action set higher than the line for a read.

SoundbiteThe output type is the design decision. A number goes straight into a threshold.
02 · no decode loop

The loop it skipped is where a model thinks longer.

An autoregressive model predicts one token, conditions on it, and predicts the next. That loop is where most of a chat model's response time goes. That loop is also where test-time compute lives, the room to write out intermediate steps before committing. Jev produces every answer in one pass, so it has nowhere to think longer about a hard case. TypeSafe's own list of weak spots is the receipt for that trade, and the bench below runs four of them.

FIG. 03 · The jaggedness benchIllustrations of failure modes on TypeSafe's own page, last reviewed September 17, 2026
Countingstate: "strawberry"
Choice: how many r's? options 1 to 5
Gauge at rest.
Datesstate: "03/04/2026 and 2026-04-02"
Choice: which date is earlier?
Gauge at rest.
Indirectionstate: "I was charged twice. Please refund."
Noul: is it untrue that the customer is not asking for a refund?
Gauge at rest.
Large statestate: the ticket plus 3,000 words of account history
Noul: is this ticket urgent?
Gauge at rest.

These readings are illustrations of the failure modes TypeSafe documents for jev-1.13. We invented them for the bench, and the API never returned them. Counting, ordering dates, resolving a double negative and reading around a distractor all reward intermediate steps. A model with no loop has to recognize the shape of the answer instead of working toward it.

FIG. 04 · jevchat on ticker tape, a chatbot rebuilt from a model that only rankskyle-pena-nlp/jevchat · canned per-step distributions, invented
question: "what is the capital of france?"
at every step, one Choice: which symbol comes next?
options are an alphabet plus STOP
The capital of France is Par
Temperature valve · 1.0 · at or below 1.0 the tape takes the top option, above it the tape samples
Presentation
Step 1
Options as the resulting text, hypothesis mode

Append, repeat, and stop when the sampler draws STOP. The project's biggest single improvement was doing the append before the model saw it. Presenting options as finished strings instead of bare symbols roughly tripled top-1 accuracy and doubled the mass on the right symbol, for fewer input tokens. Flip the switch to symbol mode and the distributions flatten by about that much. Any step you can compute deterministically should stay out of the model.

SoundbiteNo decode loop means nowhere to think longer. jevchat bolts the loop back on, slowly and hilariously.
03 · about 16,000 calls

The needle means what it says at the ends.

Aman Kumar spent two days and about 16,000 calls on it. He ran four public classification sets against two small OpenAI models, then a few thousand real decisions from his own pipelines, scored against what happened afterwards instead of another model's opinion. On short text with crisp labels Jev was level with or ahead of the small tier on three of four sets, at 5 to 56 times lower cost, with a median under a second. The whole-document read was where it lost, and no prompt fixed that.

FIG. 05 · Four public sets, 300 items eachAman Kumar, September 18, 2026 · accuracy, percent
DatasetJevgpt-5.4-minigpt-5.6-lunaJev when confident (share of items)
Enron spam · 2 options98.797.798.099.6 (90%)
SST-2 sentiment · 295.792.793.098.8 (82%)
AG News topic · 491.388.389.794.7 (88%)
Banking77 intent · 7776.078.781.789.9 (66%)

"When confident" means Jev's confidence in its pick was 0.9 or higher. Across the public sets, 82% of answers came back at or above 0.9 and 96% of those were correct. Below 0.9 it was right 55 to 72% of the time depending on the band. The 77-option set is the one place both small LLMs beat it.

FIG. 06 · The threshold leverStylized from Aman Kumar's page-gate panel, 2,559 calls
Take every known positive, find the lowest P(yes) Jev gave any of them, and put the lever at half of that.

Band shares and hit rates are his. 82% of pages came back under 0.1 and 0.3% of those turned out to matter. 4% came back at 0.9 or above and 97% of those mattered. The 14% in between ran from 6% to 83% depending on the sub-band, so no single cutoff works there. We invented the shape inside each band so the lever has something to move through. Fit the line on part of the data and check it on the rest, because next month can bring a real positive lower than any you have seen.

Skips the fallback model82%of pages. 0.3% of those turned out to matter.
Acted on directly4%of pages. 3% of those were wrong.
Sent to the model you run today14%Exactly as today. Nothing downstream changes.

Han Yuan's inbox tells the same story. Jev alone scored F1 0.786, his trained classifier scored 0.880, the two together reached 0.897, and scoring 600 emails cost two cents.

SoundbiteAman's one-word verdict was filter. Above 0.9 it's right 97% of the time. The middle is a coin flip.
04 · 444.6×

Every multiple is real. Each has its own denominator.

TypeSafe's headline of 193.6× faster and 444.6× cheaper compares Jev with a frontier model writing its answer out as text inside TypeSafe's own workflow evals. Most teams run classification on the small tier. Aman Kumar's ladder puts every published comparison on one axis.

FIG. 07 · Cost gap versus Jev, log scaleAman Kumar's table, September 18, 2026 · bars show reported ranges
  1. gpt-5.6-luna, low reasoning, 2 to 4 options: 5 to 6× the cost, 1.7 to 1.9× the time
  2. gpt-5.6-luna, 77 options: 15×, 6×
  3. gpt-5.4-mini, low reasoning: 23 to 56×, 1.7 to 5×
  4. GPT-5.6 Terra with reasoning, TypeSafe's board: about 75×, about 25×
  5. A frontier model, Fable 5.1 at high effort, Every's test: about 580×, about 25×
  6. A full agent session doing the same classification: about 800×, about 100×
  7. TypeSafe's own headline sits at 444.6×

Speed gaps follow the same shape. 1.7 to 1.9× against gpt-5.6-luna on small option sets, 6× at 77 options, 1.7 to 5× against gpt-5.4-mini, about 25× against Terra with reasoning, about 25× against Fable 5.1 at high effort in Every's test, where a passage took 0.35 s against 8.83 s and Jev caught six of seven planted defects while Fable caught seven, and about 100× against an agent session, which took 94 s and $120 per thousand emails against about a second and 15¢. An LLM's output tokens cost 4 to 8 times its input, and with reasoning on, most of them are thinking. Jev has none. Keep reasoning low and the answer to a few tokens and most of the headline gap disappears.

TypeSafe's own workflow board grades agreement with the average of GPT-6 Astra and Fable 5.1 rather than ground truth. On that board Jev sits at 67.8% against 74.1% for the best LLM.

The 0% hallucination figure on TypeSafe's chart is there by definition, since a typed answer can't violate its schema. A wrong-but-valid answer at high confidence is still possible.

Soundbite444× is against a frontier model writing an essay. Against the small tier it's 5× to 56×.
05 · read before wiring

Six days old and graded by its makers.

  1. Early access, text only, strongest in English. Every benchmark is first-party, and TypeSafe has published no paper, no weights and no calibration figure.
  2. Pin jev-1.13.0. The jev-latest alias moves on release and silently invalidates tuned thresholds.
  3. The number means nothing until you calibrate it on your own labeled outcomes. Bucket by probability and compare each bucket's mean to its hit rate.
  4. TypeSafe may be subsidizing the price. The launch post says, "We can't prove it isn't subsidized; we'll need the long-term to prove the sustainability of our pricing."

State you can't say out loud

Jev hands your code a number and nothing to read. Only your own outcomes can tell you where to trust it.

This week's other story drops the text between two models and hands a KV-cache across instead of a paragraph. Jev drops it at the output. Both bet that much of what we make models say exists because a person had to read it. Take the person out of the loop and the sentence goes with them. What remains is a needle, and the two levers you set on your own labeled outcomes. TypeSafe named Jev after Jevons and the rebound effect, so its bet is more calls and a bigger bill.