Jared Palmer released kev, a Jev-style decision model you can train and run on a MacBook
Image: GitHub
Why it mattersTeams that liked Jev's typed-decision idea but do not want a hosted API can now run the same shape locally, retrain it on their own data, and read the honest gap to the hosted model.
Jared Palmer, the engineer behind Formik and Turborepo, published jaredpalmer/kev on 2026-09-17. It is an open, Apache-2.0 rebuild of the shape TypeSafe AI's hosted Jev model exposes: send a state and a set of typed questions, get calibrated probabilities back in one forward pass. The repository reached 409 stars in the first two days, and four checkpoints (0.5B, 0.6B, 4B and 8B) are on the Hugging Face Hub in a kev collection.
What it is, in one paragraph
kev is a LoRA adapter and a small pointer head on top of a Qwen base model. It reads the state once and answers many typed questions about it in parallel, in a single prefill pass with no decoding. Each question is packed into the same sequence under a block-causal mask that lets it see the state but never another question. The pointer head scores each question's options against a decision token and takes a softmax. The output is a probability, learned with cross-entropy against labelled outcomes. Three question types are supported: yes/no, choice of two to 255 options, and an ordered score.
The numbers Palmer publishes
Palmer scores every checkpoint on the same frozen partitions. On the out-of-domain suite of 764 records the repository never trained on, accuracy is 0.598 for kev-0.6B, 0.759 for kev-4B, 0.774 for kev-8B, and 0.857 for hosted Jev. Brier score, where lower is better, is 0.339 for kev-8B and 0.211 for Jev. On held-out policy-rule reasoning, where both sides of a pair must be correct, kev-8B is 0.61 and Jev is 0.86. The kev.jev command runs the same suite against the real TypeSafe endpoint through Vercel AI Gateway, cost-capped at about two cents per suite. Palmer writes in the README that Jev's training exposure to the same public datasets is unknown, so the comparison is a shared-item read rather than a controlled ablation.
What is honest about the release
Only kev-0.5B carries a v0.1 version tag. The 0.6B, 4B and 8B checkpoints ship as previews, because each one fails a predeclared release screen on held-out rule reasoning (the bar is 0.70 both-siblings-correct; the best preview is 0.67). The limitations section names the gap to Jev by category: MMLU knowledge, PAWS paraphrase, noisy-label emotion classification, and date arithmetic. Calibration is in-distribution only, so the out-of-domain probabilities are usable but the expected calibration error is around 0.1. The context window is 8,192 tokens at serving time, against roughly 32k per branch for hosted Jev. kev-4B runs on a 32 GB Mac in bf16 at about one second per response; kev-0.5B trains in an hour and forty-five minutes on an Apple M5, and the 4B and 8B recipes train in 40 to 70 minutes on one H100 through Modal.
kev matches TypeSafe's own request and response shapes, so the official typesafe-sdk runs against a local kev server by changing the base URL. The architectural reference is a third-party reconstruction essay, "Jev's Architecture Unmasked" by Archer Hume, which kev cites in the README.
For a team that liked Jev's shape after Reveneau's coverage of the TypeSafe launch, kev is the first way to try the idea without sending states to a hosted API, and to keep the weights and the training data on machines the team controls.
Source
- Repository: jaredpalmer/kev
- Weights: kev collection on Hugging Face
- The v0.1.0 tag: github.com/jaredpalmer/kev/releases/tag/v0.1.0
Source: jaredpalmer on GitHub
This item was written by an AI system from the linked source. Reveneau is responsible for what it publishes.
Get AI News in your inbox
New developer tools, model and agent releases, and how teams are actually using them to release software. Short, and only when there is something worth reading.