Why Jev gives up string generation
The launch post’s most repeated tradeoff: Jev “gives up string generation.” TypeSafe treats that as a feature. Strings are flexible — chat, code, refusals, hallucinations — and that flexibility is expensive once software has to parse the result.
What you gain, in their words
- Type-safe structured values. Possible outputs are defined in advance.
- Parallel answers. Questions in one request are evaluated together rather than as a token stream.
- No schema hallucinations. The model cannot invent a key outside your criteria. Semantic errors remain possible.
- Software-shaped use. Classify, route, score, verify. Code constrains freedom.
What you lose
You lose a writer. Jev will not draft the customer email, the commit message, or the JSON document your partner API wants. The jaggedness guide says forcing generation by chaining choices is slow and weak. Extract candidates with regex or a generative model, then let Jev pick.
“Can’t hallucinate”
Read this slogan as can’t emit unconstrained tokens, not can’t be wrong. A Noul of 0.97 can still be a miss. A Choice can still pick billing on a technical outage. Your thresholds and review queues are part of the system.
If you need both a decision and a paragraph, the documented architecture is: Jev (or another classifier) decides; a generative model writes; Jev can then guardrail the draft. See LLM guardrails.
Sources
Public TypeSafe or adjacent documentation only. No private claims.