Every developer who has shipped an LLM feature has written the same sad line into a prompt. "Respond only with valid JSON." Then you write a parser. Then a retry. Then a fallback for the time the model wraps the answer in a markdown fence anyway. You are using a machine that thinks out loud in prose to answer a question that has three possible answers.
That mismatch is the thing Jev is built around.
TypeSafe shipped Jev this month as the first of what they call System One models. It does not generate text. You give it state, you give it typed questions, and it hands back typed answers with a calibrated confidence score on each one. No string to parse, no schema to validate, no praying. This post is about what that actually means, where it fits, and which of the claims are worth checking before you wire it into production.
The name is doing real work
The name is a nod to Kahneman. System 2 is slow, deliberate, step by step reasoning. System 1 is the fast, intuitive judgment you make without narrating it. You do not reason your way to "that email is angry" or "this transaction looks off." You just know, and you know roughly how sure you are.
Almost everything we do with LLMs today is System 2 cosplay. We take a model, make it reason in text, one token at a time, out loud, and then we ask it to end with a JSON blob. Even when the task is "is this refund request fraudulent, yes or no," we pay for a paragraph of reasoning and then parse a single boolean out of the end of it.
Jev is built for the other half of the brain. TypeSafe frames it as a frontier intelligence function call: unstructured state in, typed probabilistic decisions out. That framing is the whole product in one sentence.
How it actually works
A few things make it different from an LLM, and they are worth being precise about.
It is not autoregressive. It does not predict the next token and condition on what it just said. It evaluates the entire request in a single parallel pass and emits every answer at once. There is no decoding loop, which is where most of the speed comes from.
You ask in three shapes. TypeSafe exposes three primitives:
- Choice: pick one option from a set, with a probability on each option.
- Score: rate against ordered levels like low, medium, high, with a continuous score behind it.
- Noul: their name for the boolean primitive, a yes or no that comes back as the probability the answer is yes.
Questions run in parallel. Every question in a request is evaluated together. Adding a tenth question barely moves latency and only costs the tokens for that extra question. This changes how you design. Instead of one overloaded prompt that tries to reason about ten things at once, you ask ten small, independent, typed questions and get ten clean answers back.
The type is guaranteed. Because the output is bound to a schema, it cannot come back off shape. Cardinality goes up to 255 options, with a two stage approach for choices that need more.
It is trained differently. Instead of RLHF, TypeSafe uses what they call RLCD, Reinforcement Learning for Calibrated Decisions. The reward is not "did a human prefer this answer." It is "was the stated probability honest." That is the entire game. A 0.7 should be right about 70 percent of the time, and the training target is that the number means what it says.
The confidence score is the actual product
The typed output is convenient. The calibrated confidence is the part that changes how you build.
Once every decision comes back with a trustworthy number attached, you can write control flow around certainty instead of around parsing. Act automatically when the model is confident. Escalate to a bigger model, or to a human, when it is not. That "act if sure, escalate if not" pattern is the harness, and it only works if the confidence number is honest, which is exactly what the training is supposed to buy you.
Through the LangChain integration a call looks roughly like this:
No output parsing, no "please return JSON," no regex to pull a field out of a paragraph. You get a typed value and a probability, and you branch on it.
What it is not
This is the part people will get wrong, so it is worth being blunt.
It is not an LLM replacement. Do not ask Jev to write the email. Ask it whether the email is urgent. It has no business generating your marketing copy or your code. It answers questions, it does not compose.
"Never hallucinates" needs an asterisk. What is guaranteed is the type, not the truth. Jev cannot return an off schema answer, so structural and type errors go to zero, and that is real. It can still be wrong about the world. The difference from an LLM is that it tells you how sure it is, and if the calibration holds, that number is something you can actually rely on. Read the claim as "it cannot lie about its shape," not "it cannot be wrong."
It does not see images yet. Today it works on structured state plus text. That rules out a chunk of real world classification work for now.
It is closed and early. This is an early access model behind a console, not something you can self host or inspect. You are trusting the lab's numbers until you run your own.
The numbers, with the grain of salt they deserve
TypeSafe quotes 70 to 500 milliseconds end to end, against seconds for an LLM doing the same classification, and 40x to 200x faster on their task set. Pricing is 0.042 dollars per million input tokens with output free. The homepage headline is 193.6x faster and 444.6x cheaper, and to their credit they label that as the high end.
Treat these as vendor numbers on a task category the vendor defined. The architecture story is coherent, and the economics are the kind of claim you can verify yourself in an afternoon on your own routing or triage workload, which is what I would do before believing any single multiplier. The calibration claim is the one I would test hardest, because everything downstream leans on it. If a 0.8 is really an 0.8, the whole "act if confident" design holds up. If it is secretly a 0.6, you built your control flow on sand.
Where I would actually reach for it
- Routing, deciding whether a request needs the cheap model or the expensive one.
- Guardrails, classifying a tool call as safe or dangerous before it executes.
- Classification, extraction, and scoring at volume, where a full LLM call per item is absurd on cost.
- Real time loops where a three second model call is a non starter, like agents, games, and trading.
- Verifying an LLM's own output, using a fast typed check as a second opinion on a slow generative one.
The point underneath all of it
The interesting claim here is not "faster and cheaper." Faster and cheaper is nice and also easy to fake with a benchmark. The interesting claim is that a whole class of work we currently do with a text model, a JSON parser, and a prayer is actually a different problem that deserves a different kind of model.
Most of what we ship and call "AI in the product" is not writing. It is deciding. Is this spam, is this urgent, which bucket, which route, how risky, ship it or hold it. We have been solving those with a tool built for essays because it was the only tool on the shelf. Jev is a bet that the decision half deserves its own shelf.
Whether Jev specifically is the model that wins that space, I do not know yet. But the framing is right, and once you see the split it is hard to unsee. Go look at your own stack and count how many LLM calls are really just a typed question in an expensive costume.
Keep reading
- PzzaCode: Every Terminal, Every Agent, One Grid
How a mini PC under the desk turned into PzzaCode, a grid terminal manager for running many coding agents across machines from one grid, and why it is open source.
- Memory Stopped Being Retrieval
I said in 2025 that retrieval strategy beats storage and that similarity alone would not carry it. A year later the benchmarks and the tooling agree, and they put a number on what it actually takes.
- Coding After Code Agents
Most of my coding happens in a terminal chat. People picture agentic coding as delegation; the version that ships real work is closer to pairing, and the steering is where the engineering lives.