TypeSafe Jev: Top 3 Use Cases and How It Compares to OpenAI and Anthropic Models

Sep 18, 2026 · 11 min read
AI Models API Llm AI Agents Developer Tools
Two log-scale panels: input price per million tokens and end-to-end response time, comparing TypeSafe Jev with conversational frontier LLMs

Most production software does not need an AI model to write prose. It needs the model to make a decision - route this ticket, flag this message, rank these passages - and then get out of the way so the rest of the program can run.

On September 15, 2026, TypeSafe AI shipped Jev, a model built for exactly that and nothing else. It cannot write a sentence. It takes the state of your program as input and returns a typed value: a choice, a score, or a probability, each with a calibrated confidence number. TypeSafe calls this class a System One model, and prices it at $0.042 per million input tokens with output free, against $0.20 to $10 per million input tokens for conversational frontier models.

Summary

Jev is a decision function, not a chatbot. It takes unstructured state in and returns typed, probabilistic values out - all of them in one parallel pass, not one token at a time.

  • Three primitives only: Choice (one of up to 255 options), Score (a position on an ordered 2 to 10 level scale), and Noul (a yes/no probability). Mix them freely in a single request.
  • Speed and price: TypeSafe reports 70-500ms end-to-end against 3-329 seconds for frontier chat models, at $0.042/MTok input, output free. On its own workflow evals it claims 193.6x faster and 444.6x cheaper than GPT-6 Astra and Fable 5.1.
  • Type errors are 0% by construction, not by training. The schema is filled in, so it cannot be violated. TypeSafe is explicit that this figure “is not empirical.”
  • No published head-to-head accuracy numbers. TypeSafe’s launch post gives speed, price and error rates, but no per-model accuracy table, so “as accurate as a frontier model” is its claim rather than a figure you can check. Treat accuracy as the open question.
  • Every number above is vendor-reported. No independent reproduction has surfaced. TypeSafe itself notes the eval workflows were written by its own model capabilities team.
  • Access: early access via console.typesafe.ai, with Python and JavaScript SDKs on GitHub.

What a System One model actually is

A language model writes left to right. It picks one token, conditions on it, picks the next, and a structured answer is something you coax out of that stream with a JSON schema and a retry loop. Jev inverts the order. You hand it the structure up front and it fills every field at once, in parallel, against the same state.

That change has two consequences worth caring about. The first is that a malformed answer stops being possible: the model is choosing among the options you defined, so there is no parse step that can fail and no json.loads in a try block. The second is that adding more questions to a request is close to free. TypeSafe’s fan-out pattern is blunt about it: “All questions are evaluated in parallel, so adding more questions to a call typically doesn’t add any latency to the response.”

TypeSafe says it trained the model with Reinforcement Learning for Calibrated Decisions (RLCD) rather than the RLHF used to make chat models agreeable. The stated goal is that a confidence of 0.9 should mean right about 90% of the time. The current model is jev-1.13.0, with a 64k token request budget of which 32k covers the state plus the longest question, text input only, and a rate limit of 250,000 tokens per second and 1,200 requests per minute.

Here is the whole API surface, verified against typesafe-sdk 0.7.0:

python
from typesafe_sdk import Choice, Score, Noul, TypeSafeClient

client = TypeSafeClient()  # reads TYPESAFE_API_KEY from the environment

response = client.system_one(
    state="Stripe connection has failed for 3 days. I'm losing sales. Fix this.",
    questions={
        "department": Choice(
            instructions="Which team should handle this ticket?",
            criteria={
                "billing": "Payment, invoice or subscription issues",
                "technical": "Bugs, outages or integration problems",
                "sales": "Pricing, plans or account expansion",
            },
        ),
        "frustration": Score(
            instructions="How frustrated does the customer sound?",
            criteria=[
                "Calm, just reporting facts",
                "Frustrated but civil",
                "Very angry, threatening to churn",
            ],
        ),
        "is_urgent": Noul(
            instructions="The message is blocking the customer's work right now",
        ),
    },
)

print(response.answers["department"].choice)      # 'technical'
print(response.answers["department"].confidence)  # 0.94
print(response.answers["frustration"].score)      # 2.31
print(response.answers["is_urgent"].noul)         # 0.982

Three questions, one round trip, one price. Choice and Score answers also carry a full probabilities distribution and a confidence float; Noul returns a bare probability between 0 and 1 and no separate confidence field, because the probability is the confidence. One implementation detail the docs gloss over: Score keys its legend and probabilities by integer level, not by string, so answer.probabilities[2] works and answer.probabilities["2"] raises a KeyError.

Use case 1: Classification and routing at volume

This is the obvious one and the strongest. Ticket triage, email routing, content moderation, tagging, and passage filtering in front of a RAG pipeline are all the same shape: a bounded answer space, a huge number of items, and nobody reading the model’s prose.

Running that through a frontier chat model means paying for a full generation pass to get back one word. TypeSafe prices Jev at $0.042 per million input tokens with output free, against the $0.20 to $10 per million input tokens it quotes for conversational models, whose output tokens run about 5x their input price. At a million tickets a month, that gap is the difference between a line item and a rounding error.

TypeSafe’s own security incident response workflow, one of the four it benchmarks on, shows the primitives assembled: readings of an alert decide whether it is unauthorised, code turns those into close, queue or act, and an act stage runs eleven more readings before a playbook picks an action.

The fan-out property is what makes it interesting rather than merely cheap. Because parallel questions are latency-free, you stop designing a decision tree and start asking everything at once: category, severity, refund requested, frustration level, reproducibility. Then you branch in ordinary Python and throw away the answers that turned out not to apply. There is no second round trip when the first answer surprises you.

Use case 2: Guardrails and confidence-gated cascades

The standard way to guard an LLM is to put another LLM in front of it, which doubles your latency and cost on every single turn. TypeSafe’s guardrails cookbook replaces that with one Jev request carrying a battery of Noul questions (jailbreak attempt, harmful request, medical advice, self-harm) plus a Score for severity, then routes on thresholds you own rather than on safety behaviour baked into someone else’s weights.

The same mechanism drives cascades. TypeSafe’s documented thresholds are to act automatically above 0.9 confidence, proceed with caution between 0.5 and 0.9, and escalate below 0.5:

python
if confidence < 0.5:
    route_to_human(user_message)
elif action.choice == "check_balance":
    show_balance(account_id)
elif action.choice == "approve_transfer":
    if confidence > 0.9:
        confirm_then_execute(account_id)
    else:
        ask_user_to_confirm(account_id)

Scale the threshold to the consequence. A read-only lookup can fire at 0.6; an irreversible write should not. The practical result is that a cheap, fast model handles the large majority of traffic and the expensive model only sees the cases that genuinely need language. This is the same economic logic behind LLM routers, except the routing decision itself now costs a fraction of a cent and returns in under half a second.

Use case 3: Real-time decision loops

Anything with a control loop has a latency budget that a chat model simply cannot meet. TypeSafe’s demo is a bot playing Doom at roughly 10 queries per second, which works out to about $7 an hour. The same envelope covers game AI, robotics, trading signals, live moderation, and the inner loop of an agent that has to decide what to do next dozens of times per task.

At 3 to 329 seconds per call, a frontier LLM is not slow at this, it is disqualified. At 70 to 500 milliseconds, Jev is inside the budget. That matters for long-horizon agent work, where the per-step decision overhead compounds across hundreds of steps and usually dominates the wall-clock time.

How it actually compares to OpenAI and Anthropic

Here is the comparison as TypeSafe publishes it, averaged over four workflows (security incident response, agent-trace observability, invoice processing, and customer service). These are the same figures charted at the top of this post:

Published metricTypeSafe JevConversational frontier LLMs
Input price$0.042 / MTok$0.20 to $10 / MTok
Output priceFree~5x the input price
End-to-end response time70ms to 500ms3s to 329s
Structured-output errors0%0.58% (Terra, Luna) to 45.5% (Haiku 4.5)
Tool-call errors0%0.67% (Opus 5) to 17.0% (Sol)
Per-model accuracyNot publishedNot published

Read that honestly and the headline is not “better,” it is “cheaper, faster, and structurally incapable of returning malformed output.” Notice what is missing: TypeSafe publishes speed, price and error rates, but no per-model accuracy table. Its strongest aggregate claim is 193.6x faster and 444.6x cheaper on its four workflow evals against GPT-6 Astra and Fable 5.1, and a general 40x to 200x speedup “for the same levels of frontier intelligence.” Whether the intelligence really is the same is the one thing the post asks you to take on trust.

So the trade is legible on price and latency, unproven on quality. Running the same bounded decision a million times a day, two orders of magnitude on both is worth a serious look. High-stakes and low-volume, the argument mostly evaporates.

The structured-output claim holds up better across the wider field, where the spread inside a single vendor is larger than the gap between vendors: GPT-5.6 Terra and Luna both come in at 0.58%, while Anthropic ranges from 5.73% on Opus 5 to 45.5% on Haiku 4.5. Tool call errors invert the ranking, with Opus 5 lowest at 0.67% and OpenAI’s Astra and Sol highest at 16.6% and 17.0%.

Structured-output and tool-call error rates across eleven models, with Jev at 0% on both and Haiku 4.5 highest at 45.5%

Charts redrawn from TypeSafe AI’s published figures.

Two caveats deserve more weight than the numbers. First, every figure here comes from TypeSafe. The company states plainly that the eval workflows were written by its own model capabilities team, that reference answers were drawn from GPT-6 Astra and Fable which “biases answers towards OpenAI and Anthropic’s models,” and that the 0% type-error rate “is not empirical” but a property of the schema. Competing models were run through TypeSafe’s own System One adapter. No neutral harness has reproduced any of it, which is a familiar problem covered in more depth in our post on why LLM benchmarks need a reset.

Second, the speed claims are not stable across sources. TypeSafe’s own range is 40x to 200x on comparable queries, while Tech AI Wire’s coverage of the launch notes Gigazine reporting 20x to 200x for the same claim. Treat the low end as the planning number.

Where Jev is the wrong tool

TypeSafe publishes a model jaggedness page, which is more candid than most vendor documentation and worth reading before you commit. The short version: Jev is not a calculator and does not count reliably, with error growing as the set being counted grows. It reads dates as text rather than ordered quantities, so asking which of two dates comes first or whether one falls inside a window is unreliable. It handles hex values and RGB triples poorly compared to plain colour names. Double negatives and indirection degrade it. Accuracy falls as the state fills with content unrelated to the decision. And because the state is treated as data, injected instructions and deliberately misleading framing can still move the answer.

Keep arithmetic, date comparison, sorting, and counting in ordinary code, where they belong anyway. And remember the hard limit: no text output, no images, and no answer space larger than 255 options. If the deliverable is a sentence, this is not your model.

Testing a Jev-backed service on localhost

A typed classifier almost never runs on its own. It sits behind a webhook from Stripe, Zendesk, Slack, or a chat platform, which means you cannot properly test it until a real provider can reach your machine with a real payload. Run the service locally on port 8000 and expose it with Pinggy:

ssh -p 443 -R0:localhost:8000 free.pinggy.io

That returns a public HTTPS URL you can paste straight into a provider’s webhook settings, with no port forwarding or firewall changes. Because Jev returns in well under a second, the whole path from webhook to typed decision stays inside most providers’ delivery timeout, which is not true if you put a frontier chat model in the same position. Our guide to webhook testing for local development covers the replay and inspection side of that loop.

Conclusion

Jev is not a better LLM, and it is not trying to be. It is a decision function for the bounded, repetitive calls that never needed prose in the first place, and on those TypeSafe’s published price and latency figures are roughly two orders of magnitude better than a conversational model’s.

It is also unproven. This is a two-week-old model from a first-time vendor, in early access, with vendor-reported numbers, no published accuracy table, and a documented list of things it gets wrong. Take one high-volume classifier you already run on an LLM, shadow it for a week against your own data, and measure the accuracy yourself, because nobody has published that number for you.