Code and dense tables are folded away. Open any of them on demand.
What is Jev?
Jev is TypeSafe AI's hosted decision model. You send it a piece of text or JSON plus typed questions (pick one option, rate on a scale, or true/false), and it returns a structured answer to each with probabilities. It does not write text or chat. TypeSafe calls this category System One models.
Jev is the first model in what TypeSafe AI calls the System One category. TypeSafe's docs describe it as "Jev is TypeSafe's flagship model and the first System One model. Send state and typed questions; get structured answers your code can use directly."
In practice, you POST a state (a string, JSON object or array) together with a map of typed questions to https://api.typesafe.ai/v1/systemone. You get back one typed answer per question:
- a Choice picks one option from a set you define and returns a probability for each option;
- a Score rates the state on an ordered rubric and returns a probability-weighted value;
- a Noul returns the probability that a yes/no statement is true.
Jev does not write replies, produce code or explain its reasoning. TypeSafe's launch post calls it "a frontier-intelligence function call: unstructured state in, typed probabilistic decisions out." The docs are explicit that it is not a chat or coding-agent LLM: "There is no model: "jev-latest" setting that turns your coding agent into a Jev-powered agent."
This page is a neutral explainer written by Laya Studio. Laya Studio is an independent service powered by the open-source Laya model. It is not affiliated with or endorsed by TypeSafe AI. We link every claim to its source. Where TypeSafe does not publish something, we say "not publicly documented" rather than guess.
Who makes Jev?
Jev is built by TypeSafe AI, which describes itself on its home page as "an AI lab building machine-native intelligence infrastructure."
The launch post, Introducing System One Models & Jev, is dated September 15, 2026 and signed by Diogo Almeida, founder, TypeSafe. In it he writes: "At OpenAI, I helped build the methods that made language models useful at following instructions and talking with people. That work ended up as the research behind ChatGPT." The post also says the company spent "two years in stealth" and that Jev is "available today in early access."
According to the post, TypeSafe built three things for this model class:
- "a new model architecture";
- a "parallel sampler for maximum efficiency";
- a "training method we call Reinforcement Learning for Calibrated Decisions (RLCD)."
The launch materials give no further architecture detail. Jev's parameter count, backbone and layer structure are not publicly documented. Nor is any way to self-host it: Jev is offered as a hosted API, directly from TypeSafe and through at least one third-party platform, Cloudflare Workers AI, which lists the model as typesafe/jev.
On data handling, TypeSafe's models page states: "Jev is not trained on customer requests or responses." Zero data retention (ZDR) is offered to enterprise customers.
What is a System One model, and what is RLCD?
The name comes from Daniel Kahneman's Thinking, Fast and Slow, as TypeSafe's docs note: "System 1 thinking is fast and intuitive. System 2 is slower and more deliberate. Here, the emphasis is on fast, focused judgments." For more on the distinction in AI systems, see /learn/system-1-vs-system-2-ai.
TypeSafe's launch post contrasts System One models with LLMs on a few axes:
| Existing LLMs (per TypeSafe) | System One + Jev (per TypeSafe) | |
|---|---|---|
| Optimised with | RLHF / RLVR | RLCD |
| Outputs | Strings that must be parsed and validated | "Type-safe structured values", defined in advance |
| Sampling | "Sequential. Generates one token at a time" | "Parallel. Generates all outputs in a single query." |
| Confidence | "models tend to be overconfident and inconsistent" | "Always communicates confidence and uncertainty with every output" |
RLCD (Reinforcement Learning for Calibrated Decisions) is TypeSafe's name for training against outcomes, so that the model's probabilities reflect uncertainty. TypeSafe's AI primer frames it as a third path next to RLHF (human preference) and RLVR (verifiable rewards): "Reinforcement learning for calibrated decisions trains TypeSafe to return decisions and calibrated probabilities instead of generated text." TypeSafe's own caveat also matters: "Calibration is measured across groups of predictions; it does not guarantee that an individual answer is correct."
TypeSafe has not published the exact reward function, scoring rule or training data mix behind Jev's RLCD. Those details are not publicly documented. (Laya, the open model discussed at the end of this page, uses the same name for its own published recipe: a log plus spherical proper scoring rule with REINFORCE. That is Laya's method, not necessarily TypeSafe's. See /learn/rlcd-reinforcement-learning-calibrated-decisions.)
"Parallel" sampling means Jev emits every answer at once rather than decoding token by token. That is the defining property of a non-autoregressive model, covered in /learn/non-autoregressive-models.
How does the Jev API work? POST /v1/systemone
TypeSafe's API reference defines a single evaluation endpoint:
Show technical detailsHide technical details· http sample
Request body
Show technical detailsHide technical details· 3 rows × 4 columns
| Field | Type | Required | Notes |
|---|---|---|---|
state | string, object or array | yes | The content to evaluate |
model | string | yes | e.g. "jev-latest" |
questions | map of question id to Question | yes | The id "is not sent to the underlying model and is not used in inference" |
Question types
| Type | criteria | Limits (per API reference) |
|---|---|---|
noul | optional {"true": ..., "false": ...} descriptions | none stated |
choice | map of option to description or null | "a maximum of 255 options per Choice" |
score | ordered array of level descriptions | "at least two levels; the API accepts up to 10" |
instructions and criteria values can be strings, objects or arrays. That lets you put reference data inside a question and refer to it by name in backticks.
A curl request from TypeSafe's quick start:
Show technical detailsHide technical details· bash sample
Response body
The documented response has three top-level fields: model (the versioned id that answered, e.g. "jev-1.13.0"), answers (keyed by your question ids) and usage (input_tokens, output_tokens). TypeSafe's docs example for a Choice answer looks like this:
Show technical detailsHide technical details· json sample
Some details are easy to miss:
confidenceappears on Choice and Score answers only. In the docs' words: "Noul answers don't carry one." A Noul answer is just{"type": "noul", "noul": 0.95}.confidenceis derived from the distribution. TypeSafe's interactive example approximates it for three options as(3 × largest probability − 1) / 2, and the docs encourage computing your own measure fromprobabilitiesif it suits you better.output_tokensis non-zero in TypeSafe's examples (e.g. 20 or 65), even though output is not billed.- Rate-limit errors return
429 Too Many Requests. The SDKs retry with backoff and honourretry-after.
TypeSafe's recommended patterns build on this shape: "speculative fan-out" (many questions in one call), "confidence-gated routing", "composite scoring" and "intent routing". /learn/choice-score-noul explains the three primitives in more depth.
How much does Jev cost? Pricing, models and limits
TypeSafe's models page lists one current model:
| Property | Jev 1.13 (jev-1.13.0) |
|---|---|
| Price | $42 per billion input tokens ($0.042 per million). Output tokens are free. |
| Rate limits | 250,000 tokens per second / 1,200 requests per minute ("adjusting dynamically") |
| Context length | 64k tokens per request; 32k tokens for state plus the longest question |
| Input | Text only: string, JSON object, or array of text values |
Aliases. jev-latest is "the most recent stable, official release" and the SDK default. jev-preview is "the most recent release, whether or not it is an official one." Both currently point to jev-1.13.0. Because an alias moves when a new release ships, TypeSafe advises: "If you have tuned confidence thresholds against a specific version, pin that version's ID instead of the alias." GET /v1/models lists the names your account can use.
Customisation. "Jev is not fine-tuned or LoRA-adapted with customer data… the same weights serve every account." You shape answers through state, instructions and criteria, not through training.
Languages. "English is the primary training language and where accuracy is currently best. Other languages, including CJK scripts, are handled but not equally well." TypeSafe publishes no per-language accuracy benchmark, so per-language performance is not publicly documented.
Latency. The launch post gives "End-to-end response time is 70ms-500ms" and "40x-200x faster" than frontier LLMs "for System One shaped queries". It notes that TypeSafe's evals were "generally run from our laptops on the West Coast (this is where our service is currently based)." No latency SLA or percentile guarantee is publicly documented.
Pricing context. The launch post says TypeSafe "can't prove it isn't subsidized" and expects prices "to go down, not up." Whether there is an official free tier or free-credit amount is not publicly documented by TypeSafe. Third-party sites have made claims, but we could not verify them against TypeSafe's own pages.
Cloudflare. Cloudflare Workers AI lists typesafe/jev with a 32,000-token context window. Cloudflare's docs do not list its pricing and say it is available through the dashboard.
What are Jev's known weaknesses?
TypeSafe publishes a page titled Jev 1.13 jaggedness (last reviewed 2026-09-17) that lists failure modes and the recommended workarounds. It is worth reading before you design around any System One model:
Show technical detailsHide technical details· 9 rows × 3 columns
| # | Failure mode | TypeSafe's advice |
|---|---|---|
| 1 | Literal reading | Write the exact condition and criteria for each option |
| 2 | Math and numbers (including counting) | Keep the arithmetic in code |
| 3 | Date and time comparison | Extract components; compare in code |
| 4 | Indirection | Reduce hops; point to the relevant state |
| 5 | Large state full of irrelevant detail | Filter first; send only what the question needs |
| 6 | Adversarial content | Write precise prompts; test edge cases |
| 7 | Contradictory instructions and criteria | Align the criteria and instruction |
| 8 | Common-sense structural invariants | Ask each decision one way; enforce identities in code |
| 9 | Generation | Use a generative model |
Two quotes stand out. On literal reading: "jev-1.13 answers the question you wrote, not the one you meant." On score questions: "jev-1.13's score levels are weak in numerical calibration." So you can threshold a score's expected value, but you should not interpolate exact magnitudes from it.
The page also says state is not treated as hostile by default: "Content written to adversarially steer the model … can move the answer." If you use Jev (or any decision model) as a guardrail, treat it as one layer among several.
These caveats are specific to Jev's documentation, but most apply to the whole category. Laya's model card lists a similar set of honest limits, covered in /learn/what-is-laya.
Which SDKs and clients work with Jev?
TypeSafe maintains two official SDKs, and the community has written more.
Python: typesafe-sdk (MIT license, Python 3.10 or later). The client reads TYPESAFE_API_KEY from the environment and defaults to jev-latest:
Show technical detailsHide technical details· python sample
JavaScript / TypeScript: @typesafe-ai/sdk, which exposes TypeSafeClient and choice(), score() and noul() helpers:
Show technical detailsHide technical details· typescript sample
Both SDKs retry with backoff by default. Third-party benchmark code notes that the Python SDK also honours TYPESAFE_BASE_URL and TYPESAFE_DEFAULT_MODEL.
Community clients. hs-jev is a Haskell client, "typed, batched Choice/Score/Noul over http-client". Questions compose applicatively and go out in one batched call, a Choice maps onto a closed Haskell enum, and the client has a configurable baseUrl. Other Haskell projects include realbogart/jev and jev-dsl.
Because every client targets the same /v1/systemone shape, any client with a configurable base URL can talk to another server that implements that shape. That is how the open-source Laya server stays compatible with them (see below).
How good is Jev? Independent benchmarks
TypeSafe publishes its own "workflow evals", which use GPT-6 Astra and Fable 5.1 answers as the reference. The launch post acknowledges that this "biases answers towards OpenAI and Anthropic's models" and that the workflows were written by TypeSafe staff. Two independent public benchmarks are more useful for outside comparison.
AbdelStark/jev-benchmarks (300-example pilot, resolved model jev-1.13.0)
Show technical detailsHide technical details· 3 rows × 4 columns
| Dataset | Labels | Jev accuracy | Jev p50 latency |
|---|---|---|---|
| AG News | 4 | 0.910 | 236–256 ms (4- and 6-label tasks) |
| Banking77/BTZSC | 72 | 0.870 | 246 ms |
| DAIR Emotion | 6 | 0.480 | 236–256 ms |
On DAIR Emotion the study reports Jev "substantially worse calibrated" than the comparison model: Brier 0.846, NLL 5.588, and "zero probability on the true label for 16% of examples." Jev was called as a hosted service from France. The authors call the result "deliberately mixed" and the pilot "not a leaderboard".
nibzard/decision-model-benchmark (DMB)
- Banking 77-way: 76.3%, mid-pack among the contenders. The best LLM, gpt-oss-120b, scored 81.3%.
- Spam: 93.0%.
- Option cap: 100% on a synthetic code-word task up to 255 options. At 256 or more the API returns
400 Too many choices. - Latency: p50 264–276 ms, "flat from 2 to 255 options". DMB calls it the fastest measured contender, "not 40-200x".
- Cost: $0.07 per 1,000 decisions on the banking suite, the cheapest measured. The cheapest LLM cost $0.19.
- Uncertainty: on forced-uncertainty items Jev admitted uncertainty on 49.7%, against 97.3–100% for the LLMs, with ECE 0.246 (LLMs 0.039–0.122).
- Order stability: permuting the options changed 13% of Jev's choices. The worst LLM changed 37%.
Together, these results show Jev as fast, cheap per call and strong on large label sets. Its calibration on hard or ambiguous items is weaker than the marketing implies, and its accuracy is competitive with LLMs but does not beat them outright. For how these numbers compare with the open Laya model, see /compare/laya-vs-jev. For a broader list of options, see /compare/jev-alternatives.
Is there an open-source alternative to Jev?
Laya is an Apache-2.0 decision model from Convai Innovations that follows the same System One idea: state plus typed choice/score/noul questions in, probabilities out, in a single non-autoregressive forward pass. It is not Jev and is not related to TypeSafe. It is a separate model with a published architecture (a ModernBERT-large or mmBERT-base encoder plus an option-marker decision head) and published weights.
Laya's package ships laya-serve, which exposes the same POST /v1/systemone request and response shape. Its source says a Jev client "(for example the hs-jev Haskell client) can point its baseUrl at this server and keep working unchanged." A model field such as "jev-latest" is ignored there, and Laya's router picks the checkpoint instead.
Laya Studio hosts those open checkpoints as a managed API. Switching an existing Jev integration is a base-URL and key change:
Show technical detailsHide technical details· bash sample
The two models are not interchangeable in accuracy, so compare them on your own data. The Laya model card reports these results, with Jev figures taken from third-party publications:
| Jev 1.13.0 (third-party published) | Laya (routed, per Laya model card) | |
|---|---|---|
| p50 latency, 1 question | 236–276 ms (end-to-end, hosted) | 39.5 ms English / 32.8 ms multilingual (in-process, T4) |
| AG News | 0.910 | 0.950 |
| Banking77 | 0.870 (72 labels) | 0.425 (77 labels) |
| Max options per Choice | 255 | practical limit ~20 at default settings |
| Weights | closed API | Apache 2.0, self-hostable |
The latency rows are not like-for-like, because one is measured end-to-end over a network and the other in-process. Choose Jev when you need 50+ options per question, a 32k-token state, or TypeSafe's managed service. Choose Laya when you need open weights, on-premise deployment, automatic multilingual routing, or the option to fine-tune. The full breakdown, including a migration guide, is at /compare/laya-vs-jev. To try Laya on the same requests you send to Jev, get a free key at /signup and read /docs.
Frequently asked questions
Who makes Jev?
How much does Jev cost?
What is the Jev API endpoint?
How fast is Jev?
How many options can a Jev Choice question have?
Is Jev open source or self-hostable?
Does Jev support languages other than English?
Is Jev better than using an LLM as a classifier?
Sources
- TypeSafe AI home page
- Introducing System One Models & Jev (TypeSafe blog)
- TypeSafe API reference
- TypeSafe quick start
- TypeSafe models, pricing and limits
- TypeSafe confidence docs
- Jev 1.13 jaggedness
- System One concept (TypeSafe docs)
- Jev with coding agents (TypeSafe docs)
- TypeSafe Python SDK
- Jev on Cloudflare Workers AI
- hs-jev Haskell client
- AbdelStark/jev-benchmarks
- nibzard/decision-model-benchmark
- Laya model card
Last updated . Laya Studio is an independent hosted service for the open-source Laya model (Apache-2.0, © Convai Innovations) and is not affiliated with Convai Innovations or TypeSafe.
Next articleSystem 1 vs System 2 AI: when to decide fast and when to reasonSystem 1 vs System 2 AI in plain English: when a fast, calibrated decision model beats an LLM, when it does not, and how to combine the two safely in code.