Here's the short version: "JEV" refers to Jev, TypeSafe AI's first System One model — announced September 15, 2026, and listed on OpenRouter by September 18.
It doesn't chat, write code, or explain itself. It does exactly one thing: fills in the questions you defined in advance with type-safe answers, each carrying a calibrated probability.
Official pricing is $42 per billion input tokens — that's $0.042 per million — with output tokens free. Rate limits are 250,000 tokens/second and 1,200 requests/minute, with a 64k context.
But two things need stating up front. First, the endpoint is POST /v1/systemone, not OpenAI's /v1/chat/completions, so the usual relay trick of "swap the base_url and you're done" does not apply here. Second, as of publication, none of the 153 relay providers we catalog lists Jev.
The rest of this article breaks it down as features, pricing, timing, and access.
Contents
- 1. First, which "JEV" are we talking about?
- 2. What Jev actually does: a model that generates no text
- 3. The shipped feature list: three primitives, parallel sampling, calibrated confidence
- 4. Official specs and known limits, itemized from the docs
- 5. Pricing: $0.042 per million input tokens, output free
- 6. Release timeline: announced September 15, on OpenRouter September 18
- 7. Benchmarks and vendor-reported figures: how to read 193.6x and 444.6x
- 8. How to access it: console to first call, step by step
- 9. Can relays carry it? A compatibility problem most people miss
- 10. Verdict: when to use Jev and when not to
1. First, which "JEV" are we talking about?
"JEV" is a textbook ambiguous acronym. Without pinning the referent at the top, everything downstream goes sideways. So here's the full list of possibilities, and why we cover only one of them.
| Acronym | Refers to | AI-related? | Covered here? |
|---|---|---|---|
| Jev | TypeSafe AI's first System One model, released September 15, 2026 | Yes | Yes — the article's subject |
| JEV | Journal of Extracellular Vesicles, the journal of the International Society for Extracellular Vesicles (ISEV), founded 2012 | No (biology) | No |
| JEV | Japanese encephalitis vaccine | No (medicine) | No |
| JEV | Various identically-named YouTube channels, GitHub handles, and other personal identifiers | No | No |
The identification isn't a guess — it rests on three independently checkable sources:
- The vendor's own site. TypeSafe AI's homepage (typesafe.ai) defines the product category as "System One Models" and states: "Jev is TypeSafe's first public System One Model, optimized for automation." The model ID in the docs is written
jev-1.13.0, with the aliasjev-latest. Sentence-case "Jev" — not all-caps — is the official spelling. - The publisher. The official post "Introducing System One Models & Jev" is bylined to Diogo Almeida, TypeSafe's founder, dated September 15, 2026. The homepage metadata reads 2026-09-17.
- The distribution side. OpenRouter lists
typesafe/jev-1.13— described as "a structured decision model from TypeSafe, and the first of its System One models," 32K context, $0.042/M input and $0/M output — alongside the redirect alias~typesafe/jev-latest, with a listing date of September 18, 2026.
So in an "AI model / AI infrastructure" context, the only credible referent for "JEV" is Jev. It has nothing to do with the other common expansions — it is not "JEPA" (Yann LeCun's Joint Embedding Predictive Architecture; different spelling, different publisher), and it is not a codename for something else. Throughout this article we use the official spelling, Jev.
A naming detail worth remembering
TypeSafe made deliberate references in both names, and documented both: "System One" comes from Daniel Kahneman's Thinking, Fast and Slow — the fast, intuitive system that makes judgments without deliberate reasoning. "Jev" comes from the economist William Stanley Jevons, who argued in 1865 that more efficient steam engines would increase total coal consumption — the Jevons paradox. The position TypeSafe is staking out: make a single decision fast and cheap enough, and total decision volume explodes rather than shrinks. That isn't just branding — it explains why the company prices output at zero.
2. What Jev actually does: a model that generates no text
The fastest way to understand Jev is to forget the default assumption that a model is something you chat with.
Every mainstream model today is autoregressive: it writes one token after another, and your code then parses the resulting string. Even with JSON mode or structured outputs turned on, the mechanics are the same — generate a string, then validate the string. That path has two costs you can't escape: speed (tokens must be generated sequentially) and format risk (the model can emit an invalid structure, so you write retry logic as a safety net).
Jev replaces that path entirely. The official docs define it this way: Jev takes a state plus a set of typed questions, and returns typed answers and probabilities your code can use directly. It doesn't write replies, doesn't write code, and doesn't explain its reasoning — the output space is fully defined by you the moment the request goes out. The official post frames it in one line: a "frontier-intelligence function call: unstructured state in, typed probabilistic decisions out."
That design produces three immediately verifiable consequences:
- Type errors are structurally impossible. The candidate answers came from you, so "escape the enum" isn't an available option. Note the official wording on the "0% type errors" claim: TypeSafe states explicitly that this is not an empirical measurement but a schema-matching guarantee — a guarantee at the format level, not the fact level. Give it three wrong options and Jev will still confidently pick one.
- No retry scaffolding needed. The homepage's "Zero Hallucinations" claim means precisely this: it won't emit an unparseable string. It does not mean its judgment is correct — the docs repeat this caveat across multiple pages, and we're carrying that framing over rather than glossing it.
- Decision granularity is one-shot, not per-token. TypeSafe says Jev uses a parallel sampler: rather than generating tokens sequentially, it scores all predefined positions in a single forward pass. That's the stated source of the speed advantage.
The training objective is different too. Mainstream models align to human preference (RLHF) or verifiable rewards (RLVR). Jev uses an objective TypeSafe introduced itself: RLCD, which the company expands as Reinforcement Learning for Calibrated Decisions. The thing being optimized isn't how good the answer looks, but whether the stated probability is honest — a judgment that says 80% should be right roughly 80% of the time in aggregate. The docs call this property "calibration" and stress that it is measured across groups of predictions, not as a guarantee about any single answer.
One more point that gets lost in most coverage: giving up text generation is an acknowledged trade-off. The official post says Jev "gives up string generation." So on the question of whether Jev can replace ChatGPT, the vendor's own answer is no — what it replaces is the decision layer in your code.
3. The shipped feature list: three primitives, parallel sampling, calibrated confidence
This section lists only what the official docs describe as live and callable. Jev has exactly three question types, which TypeSafe calls "primitives." Their response fields are deterministic and enumerable — which matters if you're writing code, because it means you can type-annotate directly instead of writing defensive parsing.
| Primitive | Purpose | Request notes | Response fields |
|---|---|---|---|
choice | Pick one option from a list | Requires criteria, a map<string, string | null> — null where no extra detail is needed | choice (the highest-probability option), probabilities (per-option, summing to 1), confidence |
score | Rate the state against a rubric | Requires a criteria array in level order, with at least two levels | score (probability-weighted, and able to land between levels), legend (level number to description), probabilities, confidence |
noul | Test whether a statement holds | instructions required; optional criteria object with true / false descriptions to clarify the boundary | noul, a number from 0 to 1 giving the probability that the answer is yes |
Several details are worth calling out specifically:
noulis an odd name, but it is the exact official spelling. Thetypevalue in a request is lowercase"noul", and the response field is also"noul". The official docs do not explain the origin of the name, and we won't invent an explanation on their behalf. If you see it written any other way ("null," "bool," "yesno"), that's a transcription error.noulhas no separate confidence field, because the 0–1 number is the probability. The docs include a warning that's easy to trip over: 0.5 does not mean "medium." It means yes and no are roughly equally likely — not some intermediate degree. To measure degree, usescore.- All three primitives can be combined in one request. You send a
questionsmap; each key is a name you choose (the key is only used to correlate the response and plays no part in inference), and each value can be any primitive. Responses come back under the same keys. - Questions are evaluated in parallel and in isolation. The docs state each question is evaluated against the same state independently and in parallel, so adding questions barely changes response time and questions don't contaminate each other (the docs' term is avoiding context-rot). This is the substantive difference from "paste one big prompt and ask the model to answer item by item" — the latter gets slower and muddier with every added question.
- Confidence is a 0–1 value derived from the probability distribution. The recommended usage is thresholding in your own code: act autonomously above the threshold, escalate to a human or a reasoning model below it. That's the entirety of the documented "confidence-routing" pattern.
Beyond the primitives, TypeSafe has published a set of ready-to-copy cookbooks, which are the most concrete evidence of what the model is actually for. The docs index includes: content moderation and jailbreak / prompt-injection detection (llm_guardrails), citation checking (citation_check), date extraction (date_extraction), hierarchical classification (hierarchical_classification), reranking (rerank_typesafe), semantic search (semantic_find), function calling (function_calling), RAG passage classification (classifying_rag_passages), entity alignment (entity_alignment), consistency testing (consistency_noul / consistency_choice), parallel questions (parallel_questions), autoformatting (autoformat), skill suggestion (skill_suggestion), and classification using confidence (classification_using_confidence), among others.
The official use-case map groups applications into these decision shapes: classification, detection, scoring, routing, search, retrieval, ranking, verification, ML feature extraction, and structured data extraction. Its industry list covers recruiting, support, insurance, financial crime, legal, e-commerce, moderation, advertising, gaming, risk, forecasting, and knowledge graphs. There are also two official demos (demos and demos/smart-home), plus a "harness engineering" direction — using Jev queries to make your agent harness smarter, covering routing, context retrieval, error detection, guardrails, and trace classification.
One genuinely useful official companion: system-one-adapter-python (under the typesafe-ai GitHub org, ~98 stars). It exposes the same system_one interface but routes calls to OpenAI or Anthropic models instead, so you can run the comparison yourself on your own workload — same questions, same criteria, Jev on one side and an LLM on the other, comparing cost, speed, and judgment quality. Install with pip install 'system-one-adapter[openai]' or [anthropic]. A vendor handing you the ruler to measure it with is not a common move.
4. Official specs and known limits, itemized from the docs
Below are the specifications as listed in the official documentation (docs.typesafe.ai/models and related pages). Facts first, commentary after.
| Item | Official value |
|---|---|
| Versioned model ID | jev-1.13.0 |
| Aliases | jev-latest (points to the latest stable release; the SDK default) and jev-preview (tracks the newest build including unofficial ones — the docs note "there is no preview build available right now") |
| Current alias resolution | Both aliases currently resolve to jev-1.13.0 |
| Context | 64k tokens per request; 32k for state plus the longest single question |
| Input modalities | Text only — a string, a JSON object, or an array of text values. Images, audio, and video are not supported; non-text content must be preprocessed into text or structured fields |
| Output | Typed decisions (choice / score / noul). No free-text generation |
| Cardinality ceiling | 255 per field; above that you need a two-stage score-then-select flow, which the docs say erodes the speed advantage |
| Unit price | $42 per billion input tokens ($0.042/M); output tokens free |
| Rate limits | 250,000 tokens/second and 1,200 requests/minute; exceeding either returns 429 |
| Limit changes | The docs state these limits can change without notice while capacity expands; higher limits come with custom/enterprise plans |
| Per-customer fine-tuning | Not offered. "The same weights serve every account" — no fine-tune or LoRA |
| Is your data used for training? | No. The docs state requests and responses are not used for training |
| Enterprise data retention | Zero data retention (ZDR) is offered to enterprise customers |
| Language | English is the primary training language; the docs state other languages, including CJK, work but not equally well |
| Availability | Early access at announcement; the homepage reads "Try our first System One Model, Jev, in early access." |
Commentary — three items that genuinely affect architecture decisions.
First, the 32k figure is the one most often misread. The docs say "64k tokens per request; 32k tokens for state plus the longest question." That does not mean 32k per question — it means state plus the single longest question cannot exceed 32k. Because questions are evaluated in parallel and independently, each one is paired against the full state. If you plan to load a long document and ask a dozen questions, do that arithmetic first.
Second, the language caveat is a hard constraint for non-English workloads. TypeSafe states plainly that English is the primary training language and that CJK works but not equally well. Given that Jev's entire pitch is probability calibration — claim 80%, be right 80% of the time — an under-trained language will degrade the calibration itself, not just the answers. That's why we'd run a small validation batch on your own data before committing. It isn't skepticism about the product; calibration is inherently distribution-dependent.
Third, aliases drift, so pin your version if you've tuned thresholds. The docs warn specifically that because aliases shift with new releases, answers can change without any action on your side, and recommend pinning the versioned ID (for example jev-1.13.0) rather than using jev-latest if you've calibrated thresholds against your business logic. The model field in the response tells you which version actually answered — log it.
Also notable: TypeSafe publishes a dedicated "known rough edges" page for the current version (docs path /model-jaggedness/jev-1.13.md), listing specific rough spots in jev-1.13 with the note that "many of these will be fixed in later versions." A model vendor opening a separate page to document its own model's weaknesses is worth noting — and it's the source that makes the specific limitation list above possible.
5. Pricing: $0.042 per million input tokens, output free
Jev's pricing structure is an outlier in today's model market: it has exactly one billable dimension.
| Item | Official price | Equivalent |
|---|---|---|
| Input tokens | $42 per billion tokens | $0.042 per million tokens |
| Output tokens | Free | The docs' phrasing: "too cheap to meter" |
For comparison, TypeSafe cites mainstream frontier input pricing at $0.20 to $10 per million tokens, with output typically around 5x input, and claims its own input unit price is 238x lower than Claude Fable 5.1. The homepage headline is "193.6x Faster, 444.6x Cheaper."
Third-party distribution corroborates the price: OpenRouter lists typesafe/jev-1.13 at $0.042/M input and $0/M output, matching the vendor exactly. That's a detail worth noticing — aggregators usually add a markup or apply a conversion, and here there's no visible deviation, so at least for now the distribution appears to be at parity.
How to think about "output free"
Because Jev generates no free text, its "output" is a handful of structured fields and probability numbers — an extremely small, predictable token count. So "output free" isn't a loss-leader subsidy; it's a consequence of the product shape, and it lines up with the Jevons framing in the name: make a single decision cheap enough and total volume makes the business work. That said, TypeSafe itself acknowledges it cannot prove the pricing isn't subsidized, and lists "are these prices temporary or subsidized?" as one of its own FAQ questions. That's a real risk item for developers: if your architecture leans hard on this price, have a contingency for a change.
As for a free tier: the official docs, pricing pages, and legal pages do not publish a free tier, signup credits, or any stated free allowance. The console supports signing in with a Google account or an emailed code, but whether you can run a first call at zero cost is something you'll need to confirm in your own console after registering. We won't promise an allowance on the vendor's behalf.
For a concrete cost reference, TypeSafe offers a striking demo: running the classic Doom scenario on Jev costs roughly $7 per hour at about 10 queries per second, producing around 36,000 discrete tactical decisions in that hour. One caveat the vendor states: that demo's input is structured text, not images — which loops back to the spec above: Jev is text-only for now.
6. Release timeline: announced September 15, on OpenRouter September 18
This product line is very new, so the timeline is itself informative. Every date below comes from an official page or a directly verifiable distribution record:
| Date (2026) | Event | Source |
|---|---|---|
| September 15 | TypeSafe publishes "Introducing System One Models & Jev," bylined to founder Diogo Almeida, publicly introducing the System One model class and its first model, Jev, in early access | Official blog byline date |
| September 17 | TypeSafe homepage metadata timestamp; the homepage headline "193.6x Faster, 444.6x Cheaper" and the $42/billion-token pricing are live by this point. Site footer reads Version 0.01 | typesafe.ai homepage |
| September 18 | OpenRouter's model catalog lists typesafe/jev-1.13 and the alias ~typesafe/jev-latest at $0.042/M input and $0/M output; the entry shows 19.8B tokens of cumulative usage | openrouter.ai model listing |
A few observations:
- Only three days elapsed between announcement and a third-party aggregator listing. That's fast for a model with a brand-new architecture and a non-standard API, and it suggests TypeSafe had distribution ready from the start rather than running an invite-only private beta first.
- The version number is 1.13, not 1.0. Combined with the docs' note that
jev-previewhas no build available right now, this indicates substantial iteration happened before the public launch. That's information leaking from an internal version number, not from marketing copy. - OpenRouter lists 32K context; the official docs say 64k. Both are true under different conventions: 64k is the total per request, 32k is the ceiling on state plus the longest question; aggregators typically surface a single more conservative number. For integration, trust the official docs.
- On early access: the announcement said TypeSafe was "bringing developers off the waitlist as quickly as we can." As of publication (September 18), OpenRouter calls are live and the official console accepts signups, so access is clearly widening.
We make no predictions about when the next version lands. As of publication, TypeSafe has published no roadmap dates for future versions. The only related statement in the docs is that the known issues "will be fixed in later versions." That's the whole of it; we aren't filling the gap.
7. Benchmarks and vendor-reported figures: how to read 193.6x and 444.6x
This is the section that requires the most restraint. Jev currently has no third-party, independently reproduced public benchmarks. Every performance figure comes from TypeSafe. To its credit, the company volunteered the limitations of those figures in the same launch materials, and we're reproducing them as-is.
| Vendor claim | The numbers | Limitations the vendor disclosed |
|---|---|---|
| Speed | End-to-end response 70ms–500ms versus 3 to 329 seconds for frontier models — "40x to 200x faster"; the homepage figure is 193.6x | Speed evaluations were run on laptops on the West Coast; the LLMs compared had to be wrapped in a "System One Adapter" to accept the same interface |
| Cost | Homepage figure 444.6x cheaper; in the side-by-side example, TypeSafe costs $0.000081 in 0.114s versus an LLM at $0.013880 in 8.566s | The company states plainly it cannot prove the pricing isn't subsidized; reference probabilities average GPT-6 Astra and Fable 5.1, so the baseline skews toward OpenAI and Anthropic |
| Type safety | "0% type errors" | The vendor notes this is not an empirical result but a structural guarantee of schema matching, not a measured statistic |
| Workflow evaluations | Across four business workflows (customer classification, ticket routing, content moderation and others), Jev lands on the Pareto frontier, which the vendor describes as leading by nearly two orders of magnitude | The workflows were authored by TypeSafe's own team; the vendor says they're outside the training distribution but also acknowledges these speedups sit at the high end of real-world gains |
| Wikiracing scenario | Speedups exist but are smaller | The vendor states non-reasoning modes were used for that scenario |
Three rules for reading this.
- Treat vendor-reported and third-party-verified figures as two separate datasets. That's our standing advice. Jev's case is more extreme than usual — there isn't even a third-party leaderboard yet, so you currently have half the picture. That doesn't make the numbers false; it means you can't independently confirm them.
- What a speed claim means for you depends on your call pattern. "200x faster" is 0.114s versus 8.566s on a single call. In batched, long-running agent loops that gap can widen or get diluted depending on where your bottleneck actually is. To test it, the vendor handed you the tool:
system-one-adapter-pythonexists for exactly this. - The disclosed limitations are themselves high-quality information. A company openly writing "our evals ran on laptops," "we can't prove it isn't subsidized," and "our baseline skews toward competitors" is rare in model launch posts. It doesn't substitute for independent verification, but it meaningfully reduces the risk of being misled.
One more thing: Jev's own positioning isn't "a stronger model" but "a different thing." Its comparison target is the fragile if-else logic in your code and the practice of invoking an entire LLM just to do a classification. Benchmarking it against flagship reasoning models for "which is smarter" uses the wrong ruler — and the vendor doesn't make that comparison either.
8. How to access it: console to first call, step by step
Everything here comes from the official quickstart and API reference, and you can follow it directly. The whole flow is shorter than you'd expect, because there's exactly one endpoint.
Step 1: get an API key. Open console.typesafe.ai. You can sign in with a Google account, or use an emailed code instead (the page offers "Continue / Email me a code instead"). Once signed in, generate a key at console.typesafe.ai/settings/keys. Keys look like jev_....
Step 2: install the SDK. On the Python side it requires Python 3.10 or newer:
pip install typesafe-sdk
# or, with uv:
uv add typesafe-sdk There is also an official JavaScript / TypeScript SDK, exposing TypeSafeClient, the full error hierarchy (RateLimitError, BadRequestError, and so on), and three construction helpers: choice(), score(), noul().
Step 3: put the key in an environment variable. The SDK reads TYPESAFE_API_KEY by default, and defaults to the jev-latest model:
export TYPESAFE_API_KEY="jev_your_key_here" Step 4: make the first call. Below is the three-question example from the official quickstart (ticket classification + frustration scoring + urgency), with its logic intact:
from typesafe_sdk import Choice, Noul, Score, TypeSafeClient
client = TypeSafeClient() # reads TYPESAFE_API_KEY, defaults to jev-latest
ticket = "Customer: My order from last week still hasn't shipped. When are you going to deal with this? I'm done waiting."
result = client.system_one(
state=ticket,
questions={
"department": Choice(
instructions="Which team should handle this ticket?",
criteria={
"billing": "Billing, refunds, invoices",
"technical": "Product failures, errors, unusable",
"sales": "Pre-sales questions, quotes, proposals",
},
),
"frustration": Score(
instructions="How frustrated is this customer?",
criteria=["calm", "upset", "very angry"],
),
"is_urgent": Noul(
instructions="Is this message urgent and does it need immediate handling?",
),
},
)
print(result.answers["department"].choice) # e.g. "billing"
print(result.answers["frustration"].score) # e.g. 1.035
print(result.answers["is_urgent"].noul) # e.g. 0.999
Note the shape of the return values: choice is a string, score is a number that may carry decimals, and noul is a probability from 0 to 1. The official example returns "billing", 1.035, and 0.999 — 1.035 sits past the midpoint between level 0 (calm) and level 1 (upset), neatly demonstrating that score is probability-weighted and can land between levels.
Don't want an SDK? Use raw HTTP. The entire API is one endpoint:
POST https://api.typesafe.ai/v1/systemone
Authorization: Bearer <API_KEY>
Content-Type: application/json curl https://api.typesafe.ai/v1/systemone \
-H "Authorization: Bearer $TYPESAFE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "jev-latest",
"state": "Customer: My order from last week still hasn't shipped. When are you going to deal with this? I am done waiting.",
"questions": {
"is_urgent": {
"type": "noul",
"instructions": "Is this message urgent and does it need immediate handling?"
},
"department": {
"type": "choice",
"instructions": "Which team should handle this ticket?",
"criteria": { "billing": "Billing and refunds", "technical": "Product failures", "sales": "Pre-sales" }
}
}
}'
The response body has a fixed three-part structure: model (the versioned ID that actually answered), answers (answer objects keyed by the names you sent), and usage (integer input_tokens and output_tokens). Each answer carries type, probabilities, and — for choice and score — confidence, alongside the specific value.
There's also GET /v1/models, which lists the models your account may call with descriptions and release dates; it currently lists the aliases, though the docs note versioned IDs are accepted whether or not they appear in the list.
Memorize the error codes, because your retry strategy depends on them:
| Status | Meaning | What to do |
|---|---|---|
401 | API key missing or invalid | Check TYPESAFE_API_KEY |
422 | Request body failed validation | The response names the offending field — usually a criteria format or level-count problem |
429 | Rate limit exceeded | Retry with exponential backoff, not immediately |
529 | Service temporarily overloaded | Also exponential backoff; the official SDKs handle both under their default retry policy |
Last step, for coding-agent users: there's an official agent skill. It gives Claude Code, Codex, and similar agents context on the TypeSafe API — the three question primitives, architectural patterns, and how to structure evaluations. In Claude Code it's two commands: claude plugin marketplace add typesafe-ai/skills, then claude plugin install typesafe@typesafe-ai. For other agent environments: npx skills add typesafe-ai/skills --skill typesafe-ai (add -g for a global install). The docs also suggest handing the agent a TYPESAFE_API_KEY so it can run inexpensive trial queries directly in your project.
One design guideline from the docs deserves to be pulled out on its own: keep questions atomic. Each question should be "a gut-check determination" a knowledgeable person could make in seconds. If a question needs extended reasoning, or blends several independent factors, split it and recombine the results in your own code. The docs' counterexample: don't ask "is this startup idea good?" — ask separately about market size, feasibility, and differentiation, then weight them yourself. This guideline has more bearing on whether you get good results than any parameter setting.
9. Can relays carry it? A compatibility problem most people miss
This section is for our core readership — developers in mainland China who normally access overseas models through a domestic relay. If you just want to know how to use Jev from there, the answer is more involved than usual, because Jev breaks the assumption relays are built on.
The honest headline first: as of September 18, 2026, none of the 153 relay providers in our catalog lists Jev or TypeSafe. We searched the provider database in full — typesafe, jev, systemone all return zero hits. The reason is straightforward: Jev was announced on September 15, and our provider records were last verified across early-to-mid August 2026, before it existed. That doesn't mean it will never be available; it means you shouldn't expect a verified list of Jev-carrying relays right now.
But there's something more important than "not listed yet" — a structural obstacle:
Jev is not OpenAI-compatible, so "just change the base_url" doesn't work
Relays can carry virtually every model because nearly every vendor offers one OpenAI-compatible surface: POST /v1/chat/completions — messages in, choices out. A relay only has to forward the request upstream and meter it.
Jev works differently. The endpoint is POST https://api.typesafe.ai/v1/systemone; the request body is state plus questions (three primitives); the response is answers plus probabilities and confidence. There are no messages and no choices.
That means a relay can only support Jev by explicitly implementing pass-through for the non-standard /v1/systemone path — it can't come along for free via an existing compatibility shim. Many relays are architected around the chat-completions shape alone, which is the general reason they can't carry new-interface models like this one.
So what third-party channel does work today? OpenRouter — it lists typesafe/jev-1.13 (plus the redirect alias ~typesafe/jev-latest) at pricing identical to the vendor ($0.042/M input, $0/M output), with 19.8B tokens of cumulative usage showing on the entry. But one caveat, consistent with our review of OpenRouter: it is not a mainland-China relay in the usual sense. Its nodes are overseas, payment is primarily international credit card or PayPal, and domestic access generally still requires a proxy. It solves "one key, many models" — it does not solve "direct domestic connectivity and RMB billing."
So for mainland China developers, the practical paths narrow to two:
- Path one: connect to the official API directly. Register at
console.typesafe.ai, generate a key, and callapi.typesafe.ai, solving network reachability yourself. The upside is pricing identical to the vendor, plus first-hand SDK and docs with no intermediary markup. This is currently the cleanest route. - Path two: wait for a domestic relay to list it. Watch the providers that move fastest on new models. Here's an operable test we'd suggest: don't just check whether a provider advertises "Jev" on its marketing page — check whether its model list contains a concrete ID like
jev-1.13, and whether its documentation mentions support for the/v1/systemonepath. Given the interface-shape problem described above, any provider claiming Jev support without mentioning that endpoint deserves a follow-up question.
Two more practical notes. First, relays that do adopt it will typically apply an exchange-rate and markup multiplier on top of the vendor price. At $0.042/M input, the absolute number is already very low, and markup multiples are more noticeable on cheap models than expensive ones — do the arithmetic before committing. Second, "free output" is unusual in relay billing. Most relays meter on a unified input-and-output multiplier; against an upstream where output is free, they'll either fold it into input or apply custom rules, so don't assume it passes through unchanged.
One more thing worth stating separately: Jev's official API isn't OpenAI-compatible, but it is standard HTTP with a bearer token. If you already run any gateway layer of your own — LiteLLM, a self-hosted reverse proxy — and that layer supports custom providers / arbitrary path pass-through, you can hook it up technically. That's an independent route from "wait for a relay," and for teams able to run their own gateway, it's the more controllable one.
10. Verdict: when to use Jev and when not to
Jev isn't a "better large model." It's a different job. The test is a single question: is the problem you're solving fundamentally "make a judgment among a limited set of options"?
- Use it: you do large volumes of classification, routing, scoring, and detection in code. Ticket dispatch, intent recognition, content moderation, RAG passage relevance, citation checking, jailbreak and prompt-injection blocking, entity alignment. The common thread: a bounded answer space, high volume, and a judgment not worth spending a full reasoning model on. This is exactly what Jev was designed for.
- Use it: your bottleneck is latency, not intelligence. The official end-to-end range is 70ms–500ms. If you're building realtime interactions or chaining a dozen judgments inside one request, that's a different order of magnitude from an LLM.
- Use it: you need a probability you can branch on.
This is the most underrated part. In most production settings you don't need the best answer — you need to know how much to trust the answer, so you can decide between acting automatically and escalating. The
confidencefield plus the documented confidence-routing pattern exist for precisely that. - Don't use it: you need generated text, code, explanations, or conversation. The vendor states plainly that it gives up string generation. Route those needs to an actual LLM.
- Don't use it: your input is images, audio, or video. Text only, for now. Multimodal input has to be converted to text or structured fields first.
- Don't use it without a trial run: your workload is primarily non-English.
The vendor says English is the primary training language and CJK performs unevenly. Since Jev's core value is probability calibration, a language mismatch directly undermines that value. Run a batch on your own real data and compare — which is what
system-one-adapter-pythonexists to let you do. - It depends: you need more than 255 options. Above the cardinality ceiling you'd switch to a two-stage flow, and the vendor acknowledges that erodes the speed advantage — meaning you may lose the main reason to use it. Re-run the cost math.
Set against the broader landscape in September 2026, Jev represents a direction that's taking shape: not every AI call needs a model that talks. For the past two years the industry has stacked structured outputs, JSON mode, and function calling on top of conversational models — essentially using a generative model to imitate a classifier. Jev's bet is that this deserves a model designed for it natively, one that can be cheap, fast, and honest about how certain it is.
Whether that bet pays off, there's no independent evidence yet. But it has genuinely shipped, with genuine pricing, a genuine API, and genuine documentation — which is enough for a developer to run one small validation. Our advice is simple: don't rush to migrate a production path, but don't skip it just because it isn't a chat model either. Pick the classification problem that hurts most in your business, spend half a day running real data through the official SDK, and look at the numbers yourself.
Taken together
- "JEV" means Jev: TypeSafe AI's first System One model, ID
jev-1.13.0(aliasesjev-latest/jev-preview), announced September 15, 2026. The other expansions of the acronym (the Journal of Extracellular Vesicles, Japanese encephalitis vaccine, and so on) have nothing to do with AI. - Its functional boundary is narrow and clear: three question primitives (
choice/score/noul), parallel independent evaluation, calibrated probabilities and confidence on every answer; no free-text generation at all, text-only input, 64k per request (32k for state plus the longest question), and a 255 cardinality ceiling per field. - Pricing has exactly one dimension: $42 per billion input tokens ($0.042/M), output free; rate limits of 250,000 tokens/second and 1,200 requests/minute; OpenRouter's listing price matches the vendor. TypeSafe acknowledges it cannot prove the pricing isn't subsidized.
- Access is simple but unfamiliar: the endpoint is
POST https://api.typesafe.ai/v1/systemone, not an OpenAI-compatible chat completions route.pip install typesafe-sdkplusTYPESAFE_API_KEYgets you going; there's also a JS SDK and an official agent skill. - Relay status: none of the 153 relay providers we catalog lists it. Because the interface isn't OpenAI-compatible, a relay needs explicit
/v1/systemonepass-through to support it. The only third-party channel today is OpenRouter (typesafe/jev-1.13), which is not a direct-connect solution for mainland China.