jev·agent
Get API access

Comparison

Jev vs a fine-tuned classifier

The comparison that is actually close. An LLM and a decision model do different jobs; a decision model and a trained classifier do the same job, and which one wins turns almost entirely on whether you already have labels.

The trade, line by line

AxisJevFine-tuned classifier
Labelled data neededNone. You write option descriptions insteadHundreds to tens of thousands of examples per class
Time to first resultMinutesDays to weeks, most of it labelling
Cost per 1M calls$21 at a 500-token state; more as the state growsNear zero at inference — the cost is labels, training and upkeep
Changing the taxonomyEdit a string, shipRelabel, retrain, revalidate, redeploy
Ceiling on one fixed taskGeneral model, general ceilingHigher, given enough clean labels
CalibrationTrained for it; a probability per optionYours to earn — usually needs Platt scaling or isotonic regression
Data residencyHosted API only; the text leaves your networkRuns wherever you run it

What Jev actually costs per classification

Worth doing this properly, because the two sides of the comparison are usually quoted in different units. Jev charges $0.042 per million input tokens and nothing for output. So a classification whose state is a 500-token support ticket costs:

text
500 tokens / 1,000,000 × $0.042 = $0.000021 per call
                              × 1,000,000 calls = $21

TypeSafe's own evaluation quotes $0.0004 per decision, which implies a state around twenty times larger — a realistic reminder that your cost is set by how much context you send, not by the number of questions you ask. Asking five questions about one state costs the same as asking one, because the state is ingested once.

Where the trained classifier wins

Where Jev wins

And where embeddings fit

“Jev vs embeddings” is a category error worth untangling. An embedding model turns text into a vector so you can measure similarity. It does not answer a question. The comparable approach is embeddings plus a k-nearest-neighbour lookup over labelled examples, which is a legitimate and very cheap classifier — but it still needs labelled neighbours, and it can only answer questions that similarity happens to encode.

The practical split: embeddings for retrieval and dedup, Jev for the judgement you make about what you retrieved. They compose rather than compete — see reranking retrieved passages for the pattern.

The hybrid that beats both

The most interesting published result on Jev is not Jev winning anything. In an independent study of 2,000 phishing emails, Jev's raw verdict was statistically worse than Claude Haiku 4.5 (McNemar p < 0.0001). Then the author asked five cheap signal questions in the same call and fitted a plain logistic regression over the resulting probabilities:

95.1%

accuracy, cross-validated

0.988

AUROC

0.027

expected calibration error

That is Jev used as a feature extractor feeding a classical model — the cheapest classifier in the world sitting on top of signals that needed no labelling to produce. You still need labels to fit the regression, but far fewer than to fine-tune an encoder, and the features transfer when the task shifts.

TypeSafe endorses the same shape in its own documentation, pointing at an AutoResearch cookbook for training a downstream classical model on Jev's probabilities. If you are choosing between a decision model and a classifier, the honest third option is to stop choosing.

python
# Five cheap signals in one call, then a model you own.
answers = client.system_one(
    model="jev-latest",
    state=email_text,
    questions={
        "sender_mismatch": Noul(instructions="Does the display name disagree with the sending domain?"),
        "urgency":         Noul(instructions="Does the message pressure the reader to act immediately?"),
        "credential_ask":  Noul(instructions="Does it ask for a password, code or payment detail?"),
        "link_mismatch":   Noul(instructions="Does any link text disagree with its destination?"),
        "brand_spoof":     Noul(instructions="Does it impersonate a known brand?"),
    },
).answers

features = [answers[k].noul for k in FEATURE_ORDER]
label = logistic_regression.predict_proba([features])[0][1]

How to choose, honestly

Start with Jev when

You are at zero labels, you need to ship this quarter, the categories are still being argued about, or you want to find out whether the task is even learnable before funding a data effort.

Train the classifier when

The task is fixed and valuable, the labels exist or are cheap to get, the volume is enormous, or the data cannot leave your network.

There is also a sequence, which is usually the right answer for a new product: run Jev in production, log every state alongside the decision and whatever ground truth arrives later, and you have built a labelled dataset as a side effect. Train the classifier when the volume justifies it, using the data your Jev deployment generated.

Common questions

Is Jev more accurate than a fine-tuned BERT classifier?

Not on a single fixed task where you have plenty of clean labels — a small trained model will usually beat a general decision model on both accuracy and inference cost. Jev wins when the labels do not exist yet, when the taxonomy moves, or when you need many different judgements rather than one.

Can Jev replace my existing classifier?

It can replace the ones you have not built yet. Replacing a classifier that already works and is already calibrated on your data is usually a downgrade in accuracy and an upgrade in flexibility — worth it only if the taxonomy is churning or the classifier is expensive to maintain.

Is Jev the same as an embedding model?

No. Embeddings give you a vector so you can measure similarity; Jev gives you a decision over options you named, with a probability for each. Embeddings plus kNN is a real alternative for classification, but it needs labelled neighbours and it cannot answer a question the vectors were not built for.

What is the best of both?

Asking Jev several cheap signal questions in one call and training a small classical model on those probabilities. An independent phishing study reached 95.1% accuracy that way, well above Jev's own single verdict, and TypeSafe documents the same pattern in its AutoResearch cookbook.