A fast hallucination check that knows when it's unsure
By Eric St-Pierre · Written with AI assistance, reviewed and verified by the author
- LLM Evaluation
- Agentic AI
- AI Guardrails
- Hallucination Detection
I tested a model that answers with a probability against current fast LLMs on a medical hallucination test, then tried to break the result. The best LLMs are about 2 points more accurate. Jev was 3 to 6 times faster than the hosted ones and far cheaper, and its probability shows which cases still need an LLM.

The question
If you ship a chatbot, you know the problem: sometimes the model says things the source never said. The usual fix is a second LLM call that checks the first. It works, but it adds a second wait and a second bill to every message.
So I tested a different kind of model on that job. Jev 1.13 from TypeSafe does not write text. You send it some text and a question, and it returns a probability. TypeSafe calls it a "System One" model: built for fast judgments, not for reasoning.
The test was MedHallu, part of Stanford's MedHELM project. Each of its 1,000 test items is a PubMed abstract, a question and a proposed answer, and the model has to say whether the answer is faithful to the abstract or hallucinated. Stanford publishes the answers of the 13 LLMs it tested, so I could add rows to its table. Stanford did not run or review mine. I added Jev and four current fast LLMs: GPT-5.6 Luna from OpenAI, Gemini 3.5 Flash Lite and Gemini 3.8 Flash from Google, and Claude Haiku 4.5 from Anthropic. I picked fast models because a check that runs before every answer has to be fast.
The accuracy result did not survive
With the four LLMs added, my first comparison showed a tie on accuracy, with Jev much faster and cheaper. A reviewer found the flaw: I had tuned Jev's question on separate development data, while the LLMs got a generic prompt. So I gave the LLMs Jev's question. I wrote down each test plan before running it, and I report every result, including the ones that went against Jev.
Three LLMs pulled ahead:
- GPT-5.6 Luna: 95.1%
- Gemini 3.5 Flash Lite: 95.0%
- Gemini 3.8 Flash: 94.8%
- Jev 1.13: 92.9%
- Claude Haiku 4.5: 92.4%
The top three beat Jev by about 2 points, and the gap is statistically real. Haiku ties with Jev. The reviewer was right. It also undoes my first version: Jev looked level with the best of Stanford's older models only with a question tuned for it. Without that question, it scored 90.3%, 2.3 points behind.
The biggest surprise was how much the question mattered. My best question for Jev is one plain sentence:
"Would the authors of the study say that this answer misrepresents their findings?"
About a dozen longer, more detailed versions did worse. The same sentence also raised every LLM's score, Gemini 3.8 Flash most, from 87.2% to 94.8%.
Speed and cost did survive
I re-timed all five models in one session. Jev answered in 228 ms at the median. The LLMs took about 3 to 6 times as long, from 0.7 to 1.5 seconds, and cost 4 to 25 times as much per check. Checking all 1,000 items with Jev cost 3 cents.
The test is weaker than I thought
The reviewer's second point: MedHallu's hallucinated answers were written by a model, while the faithful ones are the researchers' own words, so a model might spot the style without reading the abstract. I tested that by removing the abstract. Always answering "faithful" would score 52%. Without the abstract, the models still scored 66% to 83%. They do use the abstract, which adds 4 to 27 points, but a good part of this benchmark can be solved without it. That is true for every model in the table, not only Jev.
What the probability adds
The LLMs return a label and nothing else. Jev returns a probability, and that turned out to be the most useful part.
On 37% of the items, Jev was at least 90% sure, and it was right on 370 of those 372. On every one of them, all four LLMs gave the same answer as Jev. Asking an LLM there added nothing.
So I tested a two-step check, with the rule fixed in advance: Jev decides when it is at least 90% sure, and the LLM handles the rest. It matched each LLM's accuracy exactly while skipping 37% of its calls, which cut the cost by 10% to 33%. Items sent on to the LLM wait for both calls. At an 80% cut-off, the savings grew to 41% to 64%, for at most 0.2 points of accuracy. I picked that cut-off after seeing the results, so treat it as an idea to test, not a finding.
One caution: Jev's probability sorts answers well, but its numbers are not literal odds. Of the answers it put near 14%, only 2% were hallucinated, and of those near 65%, 43% were, which is why the cut-offs must be set on your own data.
What it means
If accuracy is all you care about, use a fast LLM with a plain question. Among the models I tested, the best were about 2 points more accurate than Jev.
If the check runs in front of every answer, speed and cost matter too. Jev answered in under a quarter of a second, for a fraction of the cost, and its probability tells you when a second opinion is worth paying for. The design I would try first is Jev first, then an LLM only for the cases Jev is unsure about. The probability also lets you write the guardrail as a policy: which scores block, which pass, which go to a person. Set those cut-offs on your own data.
One more thing to weigh in healthcare: Jev is proprietary, and I used it through a hosted API, so patient data would need the same vendor and privacy review as any hosted LLM. I would like to see an open model like it: a small judgment model you can run on your own servers, with private data, low latency and predictable costs.
Limits
- Synthetic, narrow data. MedHallu's hallucinated answers were written by a model, and it is one task. I have not tested real chatbot errors.
- No prompt tuning for the LLMs. They got Jev's question, which was chosen for Jev. Tuning a question for them would probably raise their scores.
- Low reasoning settings. Luna ran with reasoning off and Gemini 3.8 Flash with minimal reasoning, as a fast pipeline would. Flagship models (GPT-6 Astra, Claude Fable 5.1, Gemini 3.1 Pro) took 2 to 6 seconds per check in a small trial, so I did not test their accuracy.
- Timing conditions. Every model went through the OpenRouter gateway from one machine. The LLMs were timed with a longer prompt than the one behind their best scores.
- One run each. Each model answered each test once. A 12-item repeat of Jev's first run changed no label.
Jev cannot explain its verdict, write text or reason through several steps. For those jobs, use an LLM.
What I would test next
MedHallu tests one job: a yes-or-no check. Jev can also pick one option from a list or rate something on a scale, always with a probability. That suggests other jobs where speed and cost matter as much as they do here. I have not tested any of them yet.
In software engineering:
- A real-time browser agent. At each step of a browsing agent, Jev could pick the right link or button and flag pages that try to steer the agent. At a quarter of a second per check, it could run on every action.
- Gating tool calls. Before a coding agent runs a command or edits a file, Jev could judge whether the action is risky. Clear cases pass, unsure ones go to a person.
- Filtering retrieved passages. Rate each passage a search returns and send only the useful ones to the LLM, for shorter prompts and lower cost.
- Routing tickets and alerts. Send bug reports, alerts and support requests to the right team, with the probability deciding when a person looks.
In healthcare:
- Checking clinical summaries. Check each sentence of an AI-written visit note or discharge summary against the chart. That is the real-world version of this test.
- Triaging patient messages. Sort portal messages into urgent symptoms, refills and billing, and send the unclear ones to a nurse.
- Medical coding. Walk the ICD-10 code tree one level at a time, using the probabilities to keep close alternatives open.
- Screening for patient data. Flag protected health information (PHI) in text before it leaves a system or reaches an LLM.
While Jev will not replace LLMs, it is presented as a powerful complementary tool that can significantly reduce operational costs and increase the speed of AI-driven systems.
Everything is on GitHub: the code, every model answer, and the plan I wrote before each test.
Disclosure: Medoya and I have no relationship with TypeSafe. I paid for every API call myself.
Sources
- Stanford CRFM. MedHELM leaderboard. MedHELM v4.0.0 public results, per-item predictions. Retrieved September 21, 2026.
- Bedi, S., Cui, H., Fuentes, M. et al. MedHELM: Holistic Evaluation of Large Language Models for Medical Tasks. arXiv:2505.23802, May 26, 2025.
- Pandit, S., Xu, J., Hong, J. et al. MedHallu: A Comprehensive Benchmark for Detecting Medical Hallucinations in Large Language Models. arXiv:2502.14302, February 20, 2025.
- UT Austin AI Health. MedHallu dataset. Hugging Face, MIT license.
- TypeSafe AI. TypeSafe AI. Company site, Jev model.
- OpenRouter. Jev 1.13: API pricing and providers. Model typesafe/jev-1.13-20260917.
- Medoya. jev-medhallu-benchmark: harness, preregistered run plans, every run file and the follow-up checks. GitHub, MIT license.

