Skip to main content

Command Palette

Search for a command to run...

Jev: What If Software Doesn't Need an LLM to Make Every Decision?

Updated
•12 min read•View as Markdown
Jev: What If Software Doesn't Need an LLM to Make Every Decision?

For the last few years, we've been getting very good at teaching machines to generate.

Give an LLM some context and it can write code, summarize documents, answer questions, reason through a problem, or plan a task.

But a surprising amount of software doesn't actually need generated language.

A support system doesn't need three paragraphs explaining why a ticket belongs to billing.

A fraud system doesn't need an essay about whether a transaction looks suspicious.

An AI agent doesn't need a beautifully written explanation every time it has to decide which tool to call.

It often needs something much smaller:

BILLING

or:

YES

or:

0.87

That sounds trivial.
It isn't.
Because for years we've often used increasingly expensive generative models as the default engine for these decisions. That's the problem TypeSafe is trying to attack with Jev.

So, what exactly is Jev?

TypeSafe introduced Jev in September 2026 as its first System One Model, describing the new class as models designed to make fast, structured decisions that software can use directly. Their framing is essentially:

unstructured state → typed probabilistic decisions

rather than:


unstructured state
        ↓
LLM
        ↓
generate text
        ↓
parse
        ↓
validate
        ↓
application logic


So is Jev just a classifier?

**Sort of—but that description misses the interesting part.**

Traditional classifiers are generally built around a fixed task.

You might train one model for spam detection, another for sentiment, another for support-ticket routing.

Jev is trying to keep the flexibility we associate with foundation models: **the decision itself can be defined at inference time.**

For example, give it:

```text
State:
"My package arrived damaged and I want a refund."

Question:
Which queue should handle this?

Options:
- Billing
- Shipping
- Technical
- General

and the model can return a probability distribution over those options.

Conceptually:

Billing      0.24
Shipping     0.71
Technical    0.01
General      0.04

The application gets a decision, not a paragraph describing a decision.

That distinction is the entire point.

But an LLM can already do this

This is the first objection and it's a valid one.

You could give the same prompt to GPT, Claude, Gemini, or another LLM and ask it for structured output.

It will probably return:

{
  "queue": "Shipping"
}

Modern structured-output APIs make this much more reliable than they used to be.

So what's the advantage of Jev?

TypeSafe's argument is that if the task is fundamentally a bounded decision, you can build a model specifically for that shape instead of using a text generator and forcing the output into a decision interface.

That has three important consequences:

speed, cost, and native decision outputs.

Speed

A normal autoregressive language model generates output token by token.

Conceptually:

token 1
   ↓
token 2
   ↓
token 3
   ↓
token 4
   ↓
...

That's useful when you actually want language.

It's unnecessary when the final answer is simply:

Shipping

TypeSafe claims Jev's end-to-end latency is roughly 70–500 ms for its intended workloads and advertises much larger speedups over frontier LLMs on its own evaluations.

Jev doesn't try to generate the answer faster. It changes the problem so that it doesn't need to generate the answer in the first place.

Cost

The same idea applies to cost.

TypeSafe's launch pricing listed Jev at $0.042 per million input tokens, with output tokens free.

Independent benchmarks suggest that Jev can be very inexpensive for high-volume decision workloads. JevBench measured an average of roughly 950 input tokens per decision across its benchmark. At the published price, that works out to approximately $0.04 per 1,000 decisions.

Independent API measurements show a similar pattern, although the advantage depends heavily on what Jev is being compared against. In one study covering eight practical use cases, Jev's measured cost was around $0.000015–$0.000025 per decision. However, inexpensive small language models narrowed the gap considerably compared with larger frontier models.

So the claim shouldn't be that Jev is always cheaper than an LLM. It isn't.

The more interesting point is that when the application needs a small, bounded decision rather than generated text, a purpose-built decision model can provide a much more cost-efficient interface.

If the software ultimately needs one label, score, or yes/no decision, generating a paragraph of text first can be unnecessary overhead.

Benchmarks

Jev vs selected models

Model Median latency Mean cost/decision
Jev 352 ms $0.0000188
Mistral Small 3.2 1,343 ms $0.0000255
Gemini 2.5 Flash-Lite 877 ms $0.0000323
GPT-5 Nano 7,504 ms $0.0003434

These numbers come from an independent eight-use-case measurement project, not TypeSafe.

One piece of context, many decisions

There's another feature that is easy to overlook.

Suppose we receive this:

"My package arrived damaged and I want a refund."

The application might want to know:

Which queue?
Is it urgent?
Is a refund requested?
What is the sentiment?
What language is it?

That's five decisions over the same state.

TypeSafe designed Jev to evaluate multiple questions about the same state in parallel rather than treating them like five independent text-generation tasks.

So instead of:

question → answer
question → answer
question → answer

the model can conceptually do:

                    shared state
                         │
                         ▼
                        JEV
              ┌──────────┼──────────┐
              ▼          ▼          ▼
           intent      urgency   sentiment

For software, that's much closer to the real workload.

Often the problem isn't:

"Give me one answer."

It's:

"Extract the handful of decisions my program needs from this state."

The output is designed for software

TypeSafe exposes different decision shapes rather than treating everything as text.

The basic idea is:

Choice

Pick one option.

Billing
Shipping
Technical
Sales

Score

Place something on a scale.

0 = low
1 = medium
2 = high
3 = critical

Yes/No

A binary decision.

Should this be escalated?
YES / NO

The public API exposes these kinds of typed decisions and returns probabilities associated with the decisions.

That's an important distinction from ordinary generation.

The application doesn't have to ask:

"Please produce valid JSON."

Confidence is part of the interface

This may be the most interesting part.

Suppose Jev says:

Shipping = 0.71

Now the application can decide what to do with that number.

For example:

if confidence >= 0.90:    auto_route()elif confidence >= 0.60:    ask_follow_up()else:    send_to_human()

TypeSafe calls its training approach Reinforcement Learning for Calibrated Decisions (RLCD) and positions calibrated probabilities as a core part of the System One interface.

But there is an important caveat.

A number being called 0.90 doesn't automatically mean there is a 90% probability of correctness.

Calibration has to be measured.

If a model produces 0.9 confidence across 1,000 cases, we want roughly 90% of those cases to be correct.

So the right architecture is:

model probability
        ↓
evaluate calibration
        ↓
choose application threshold
        ↓
take action

The threshold belongs to your software.

Not the model.

Why "System One"?

This is where TypeSafe's naming becomes useful.

Some software decisions are genuinely reasoning-heavy:

How should I solve this problem?
How should I plan this task?
What code should I write?
How should I combine these pieces of information?

Those are natural jobs for an LLM.

Other decisions are much smaller:

Which tool should I call?
Is this risky?
Should I retry?
Which route should I take?
Should a human review this?

Those decisions don't necessarily need an entire reasoning model.

TypeSafe's thesis is basically:

We've become extremely good at System Two-style AI, while software contains a huge number of System One decisions.

And that leads to a more interesting architecture for AI systems.

Jev doesn't replace LLMs

This is an important distinction.

The future is unlikely to look like:

LLMs → obsolete
Jev → replaces everything

It makes much more sense as:

                    USER TASK
                        │
                        ▼
                   FAST DECISIONS
                        │
             ┌──────────┼──────────┐
             ▼          ▼          ▼
           route      risk      continue?
                        │
                        ▼
                difficult problem?
                    /         \
                  no           yes
                  │             │
                  ▼             ▼
               execute       LLM

The LLM handles the difficult thinking.

The decision model handles the small semantic branches around it.

That's a much more plausible future.

Where does this become useful?

The strongest use cases are situations where an AI system needs to make many small semantic decisions around a larger workflow.

Agent routing

An agent may have several tools available—search, databases, calculators, email, code execution, browsers, and more.

Choosing which tool to call is a decision. A decision model can handle these lightweight routing decisions, while the reasoning LLM focuses on planning and solving the harder parts of the task.

The same pattern appears in other systems:

Use case Example decisions
RAG routing Vector search, web search, internal knowledge, or direct answer?
Guardrails Safe, suspicious, or blocked?
Customer support Billing, shipping, refund, urgency, or human escalation?
Fraud & abuse Suspicious? How severe? Needs review?
High-volume classification Spam, language, category, or intent?
Real-time systems Continue, stop, retry, or which action to take?

The common pattern is:

Messy input → bounded decision → high volume → low latency.

That's where a specialized decision layer starts to make sense.

But this idea isn't completely new

This is another place where the hype needs some context.

Jev didn't invent classification.

We've had classifiers for decades.

We've had BERT.

We've had zero-shot classifiers.

We've had constrained decoding.

We've had structured-output LLMs.

We've had routing models.

There is also related work around non-autoregressive decision models.

For example, Laya is an open System One decision engine that exposes typed choice, score, and yes/no decisions and is explicitly designed around non-autoregressive inference. Its current implementation supports local inference and specialised decision checkpoints. GitHub

So the interesting innovation isn't:

"AI can classify things."

That's old.

It's:

Can a general-purpose foundation model be turned into a cheap, fast decision primitive that developers can use at runtime without training a separate model for every task?

That's the real question.

What might the architecture look like?

Jev's exact architecture and training recipe are not fully public, so it's worth separating what TypeSafe has explicitly disclosed from what can be inferred from external investigation. At a high level, the important distinction is that Jev is designed to produce bounded decisions rather than autoregressive text. The exact implementation is a topic for a deeper follow-up.

The limitations

Jev's strengths also define its boundaries.

Bounded output doesn't mean correct output

If the valid answers are:

Billing
Shipping
Technical
General

The model's output space is constrained to the options you define.

But if the correct answer isn't represented by those four options, you've created a bad decision space.

So:

schema validity ≠ semantic correctness

Confidence still needs calibration

A 0.92 output should not automatically be interpreted as:

"There is a 92% chance this decision is correct."

You still need labelled evaluation on your own workload.

The input state matters

If your upstream system extracts incomplete or incorrect information, the model can make a perfectly reasonable decision from bad evidence.

It isn't a reasoning model

Don't ask a System One model to replace a system designed for deep planning, synthesis, or open-ended reasoning.

Architecture remains partly private

Without weights and a complete training description, independent reproduction of Jev itself isn't possible.

These aren't arguments against Jev.

They're simply reasons not to treat it as magic.


So, is Jev actually important?

I think the underlying idea is more important than the specific model.

Jev is not interesting because it can classify a support ticket.

We already know how to do that.

It's interesting because it challenges an assumption we've quietly made while building AI software:

Every semantic decision should go through a generative model.

Maybe that assumption was wrong.

Maybe an AI application should look more like:

                 USER INPUT
                      │
                      ▼
               decision model
                      │
             ┌────────┼────────┐
             ▼        ▼        ▼
           route     risk    policy
             │        │        │
             └────────┼────────┘
                      ▼
                 reasoning LLM
                      │
                      ▼
                   ACTION

One model reasons.

Another model makes cheap decisions.

Code enforces policy.

That is a far more interesting architecture than trying to make one giant model do everything.


Final thoughts

Jev is easy to oversell.

It's tempting to say:

"LLMs are slow, Jev is fast, therefore Jev is the future."

That's too simplistic.

Jev isn't replacing reasoning.

Classification isn't new.

Probabilities aren't new.

Structured outputs aren't new.

And the full internals of Jev are still not public.

But the combination is genuinely interesting.

For years, we've treated AI as something you ask.

Maybe increasingly, AI will also become something software calls.

Not:

"Explain this to me."

but:

Which route?
Should I continue?
Is this safe?
Does this belong here?
Should I escalate?

And the answer might simply be:

B
0.87
YES
NO

That is a much smaller interface.

But for software, it may be the more important one.

LLMs can reason.
Decision models can decide.
Code can enforce the policy.

Maybe the next step in AI isn't one model getting good at everything.

Maybe it's learning to use the right model for the right kind of thinking.

I'm genuinely excited to see where this direction goes — and even more excited to build with these kinds of models.