In 2023, a lawyer submitted a legal brief citing six court cases to support his argument. There was one problem: the cases didn’t exist. He’d asked an AI to find supporting precedents, and the AI cheerfully invented them, complete with fake case names, fake quotes, and fake citation numbers, all delivered with the calm confidence of a seasoned attorney. He got sanctioned. The AI never blinked.

This is a hallucination: when an AI states something false as if it were true, fluently and confidently, with no signal at all that it just made it up. It is, without much competition, the single biggest reason people don’t fully trust AI. And for a long time it felt mysterious, like an unfixable glitch we’d just have to live with.

Here’s the good news, and the reason I wanted to write this properly: in 2025 researchers finally explained why hallucinations happen (the answer is genuinely satisfying, and it’s not what most people think), and the industry built a real, layered toolkit to fight them. By the end of this, you won’t just know that AI hallucinates. You’ll understand exactly why, and exactly how the best companies in the world keep it from reaching you. No hand-waving, no doubt left over.

First, what a hallucination actually looks like

"What year did the physicist Elena Vasquez win her Nobel Prize?"
"Elena Vasquez won the Nobel Prize in Physics in 2019 for her work on quantum thermodynamics, sharing it with two colleagues from MIT."
There is no such person. Every detail was invented, fluently, with zero hesitation.
The dangerous part isn't that it's wrong. It's that it's wrong with total confidence and rich, plausible detail. A hallucination doesn't look like an error. It looks exactly like a correct answer. That's what makes it hard to catch and easy to trust.

Researchers split hallucinations into two kinds, and the distinction matters because they need different fixes:

factuality error
It contradicts reality The model says something that's just false about the world, a wrong date, a made-up person, an invented statistic. It clashes with actual facts.
faithfulness error
It contradicts its source You give the model a document and ask about it, and it answers with something the document never said, or the opposite of what it said. It's unfaithful to what it was given.
Two flavours. A factuality error is "you got the world wrong." A faithfulness error is "you got the document I handed you wrong." As we'll see, retrieval fixes the first kind and careful grounding fixes the second, but the model can still betray both if you're not careful.

Why it happens, part 1: prediction, not knowing

To understand hallucination, you have to remember what a language model actually is. It is not a database that looks up facts. It’s a prediction machine: given the text so far, it predicts the most plausible next word, then the next, then the next. That’s it. (I wrote a whole post on how LLMs work if you want the deep version.)

So when you ask it a question, it isn’t retrieving an answer. It’s generating the most statistically plausible continuation. Usually, plausible and true line up, because true things appear most often in its training. But when the model doesn’t actually know something, it doesn’t know that it doesn’t know. It just keeps predicting plausible-sounding words, and plausible-sounding words assemble into a confident, fluent, completely fabricated answer.

You ask about something the model half-knows or doesn't know.
It can't look anything up. It only predicts plausible next words.
Plausible words flow smoothly into a fluent, detailed answer.
The fluency is real. The facts are invented. Nothing flags the gap.
The core mechanism. A model generates plausibility, not truth, and it has no built-in sense of "I'm now making this up." When knowledge runs out, the prediction machine doesn't stop, it just predicts something plausible. That's a hallucination, born.

But this only explains how hallucination is possible. It doesn’t explain why models don’t just learn to say “I don’t know” when they’re unsure. That’s the deeper question, and 2025 gave us a genuinely brilliant answer.

Why it happens, part 2: the incentive (this is the key insight)

In September 2025, a team at OpenAI (Kalai, Nachum, Vempala, and Zhang) published a paper called “Why Language Models Hallucinate” that reframed the whole problem. Their argument, once you see it, is impossible to unsee: hallucination isn’t a mysterious bug. It’s a rational strategy the model learned, because we accidentally rewarded it.

Their analogy is perfect, and it’s the thing to remember from this entire post. Think about a student taking a multiple-choice exam where a blank answer scores zero and a wrong answer also scores zero, but a right answer scores a point. What’s the smart move on a question you’re unsure about? Guess. Leaving it blank guarantees zero. Guessing might get lucky. A rational test-taker always guesses.

0 pts
Say "I don't know" → guaranteed zero. Honesty is punished.
0 pts
Guess and be wrong → also zero. No worse than being honest.
+1 pt
Guess and get lucky → a point! So guessing can only help.
The exam that trains a bluffer. If "I don't know" and a wrong guess both score zero, but a lucky guess scores a point, then the rational strategy is always guess, never admit doubt. This is exactly the incentive we built into how we grade AI models. We taught them to bluff.

Now here’s the gut-punch: this is precisely how we score AI models. When the OpenAI team looked at the major benchmarks the whole industry competes on, they found that nine out of ten used grading that penalized “I don’t know” and rewarded confident answers, right or wrong. The models are optimized to top these leaderboards. So they became exactly what we rewarded: confident guessers who never say “I’m not sure.”

9 / 10
of major AI benchmarks penalize "I don't know" and reward a confident guess. We trained models to be good test-takers, and good test-takers bluff.
The uncomfortable finding from the OpenAI 2025 paper. Hallucination persists not because we can't fix it, but because our own scoring rewards it. The proposed fix isn't a new gadget, it's changing how we grade, so that saying "I don't know" is no longer the losing move.

This reframing is why some researchers now say hallucination is, in a pure form, mathematically inevitable for a system trained this way, and why the goal has quietly shifted. Nobody serious is chasing “zero hallucinations” anymore. The realistic, achievable goal is calibrated uncertainty: get the model to know what it doesn’t know, and tell you. Make its doubt visible instead of hidden inside confident-sounding prose.

How we actually stop it: the real toolkit

So how do the best companies keep hallucinations away from you? Not with one magic fix, there isn’t one. They stack multiple defenses, each catching what the others miss. Here’s the full toolkit, from the most impactful down:

1
RAG (grounding in real documents). Give the model the actual source at question-time so it reads facts instead of guessing them. The single biggest lever.
2
Citations and source-linking. Force every claim to point at the document that backs it. If it can't cite, it can't assert. Creates an audit trail.
3
Verification loops. Have the model (or a second model) check the answer against the evidence before it's shown, flagging unsupported claims.
4
Teaching it to say "I don't know." Retrain and re-reward the model so honest uncertainty scores well, turning refusal into a learned skill.
5
Confidence scoring. Surface how sure the model is, so a shaky answer looks shaky instead of identical to a solid one.
6
Guardrails and human review. For high-stakes outputs (legal, medical, money), a final automated or human check before it reaches anyone.
The layered defense. No single method eliminates hallucination, so production systems combine several. Each layer catches a different failure. Together they turn "confidently wrong" into "grounded, cited, and honest about its limits."

Let me unpack the three heaviest hitters, because this is where the real reliability comes from.

Lever 1: RAG, give it the facts instead of asking it to remember

The most powerful fix maps straight back to why hallucination happens. If the model invents facts because it’s guessing from memory, then stop making it guess from memory. Retrieval-Augmented Generation fetches the relevant real documents at question-time and hands them to the model alongside your question. Now it’s reading, not recalling.

Your question"What's our refund policy?"
Retrievepull the actual policy doc
Answer from itgrounded in the real text, with a citation
RAG turns "recall from fuzzy memory" into "read from the actual document." This is why it's the number-one defense: it attacks hallucination at the root. Structured, well-governed sources drive hallucination rates way down, some studies report drops around 87% versus messy, unstructured inputs.

But, and this is the honest caveat too many guides skip, RAG is not a silver bullet. Even with the right document in front of it, a model can still ignore it and revert to its own invented version (an extrinsic hallucination), or the retriever can fetch the wrong document entirely. As one Stanford study found, even careful retrieval pipelines can still fabricate citations. RAG dramatically reduces hallucination; it doesn’t abolish it. Which is exactly why you layer the next defenses on top.

Lever 2: make it cite, then verify the citation

The next layer forces accountability. Require the model to attach a source to every claim, then actually check that the source says what the model claims it says. This is called span-level verification: each generated statement is matched against the retrieved evidence, and anything unsupported gets flagged or removed before you ever see it. A claim without backing doesn’t ship.

There’s also a clever technique called Chain-of-Verification, where the model interrogates its own answer before finalizing:

1
Draft an answer to your question, as usual.
2
Generate check questions about its own claims: "Is this date right? Does this person exist?"
3
Answer each check independently, against the evidence.
4
Revise the answer to drop anything that failed its own check.
Chain-of-Verification: the model fact-checks itself before answering, catching its own slips. It's the machine version of "wait, let me double-check that before I say it." Simple idea, measurable reduction in hallucinations, no retraining needed.

Lever 3: teach it that “I don’t know” is a good answer

This one attacks the root incentive we uncovered. If the problem is that models were trained to never admit doubt, the fix is to retrain that instinct. Newer techniques (research with names like “Rewarding Doubt”) bake confidence calibration into training: the model is now rewarded for saying “I’m not sure” when it genuinely isn’t, and penalized for confident wrongness. Anthropic has shown you can even identify the internal “concept” for refusal and steer it, turning “knowing when to abstain” into a stable learned skill rather than a fragile prompt trick. Targeted training like this has cut hallucination rates by around 90% or more in some studies, without hurting answer quality.

Do these actually work? The numbers

You asked for no doubt left over, so here are the concrete, research-reported effects. These are directional (they vary by task and setup), but the shape is unmistakable:

Ungoverned, messy data~52% fabrication
Well-governed data + RAGnear zero
GPT-4o, plain~53% hallucination on a hard set
GPT-4o + good prompting~23%
Real reported reductions. Two lessons jump out. First, the biggest fixes are upstream, in the data and context you feed the model, not in the model itself (governed data plus RAG takes fabrication from around half to near zero). Second, even a better prompt alone roughly halved GPT-4o's hallucination on a hard medical set. The fixes work, and they compound.

How the big players actually do it

Put it together and you see the pattern every serious AI company follows: defense in depth. No one relies on a single trick. A production system stacks the layers so that whatever slips past one gets caught by the next.

Governed, clean source datafix it upstream, before the model sees anything
RAG groundingread real documents, don't recall from memory
Citations + span verificationevery claim backed and checked against its source
Confidence + "I don't know"trained to show doubt instead of bluffing
Guardrails + human reviewa final gate on high-stakes answers
The full stack real companies run. Notice it starts above the model (clean data) and ends after it (human review). The model in the middle is only one layer of many. This is why a well-built product feels far more reliable than the raw model behind it, the harness around it is doing enormous work. Companies like Dropbox even bring in dedicated detection platforms to add another layer.
MethodWhat it fixesCatch
RAG groundingModel guessing facts from memoryCan still ignore or mis-retrieve the source
Citations + verificationUnsupported claims slipping throughNeeds good retrieval to verify against
Chain-of-VerificationSelf-consistency errorsCosts extra generation
Confidence calibrationConfident-wrong answersRequires retraining
Teaching "I don't know"The root incentive to bluffHard; must fix training rewards
Guardrails + humansHigh-stakes final answersSlower, costs human time
Every method has a job and a limitation, which is exactly why they're layered, not chosen. The winning move isn't picking the "best" one; it's stacking several so their weaknesses don't line up.

What this means for you, right now

You don’t need to build a training pipeline to use this. If you’re just using AI, the practical takeaways are simple and powerful:

  • Ground it. Give the model the actual source material (paste the doc, use a tool with RAG). Don’t ask it to recall, ask it to read.
  • Ask for citations. “Answer only from the text I gave you, and quote the exact line.” A model forced to cite has far less room to invent.
  • Invite doubt. Add “If you’re not sure, say so.” You’re manually undoing the bluff incentive, and it genuinely helps.
  • Verify the high-stakes stuff. For anything legal, medical, financial, or public, treat the AI’s answer as a confident draft from a bright intern, not gospel. Check it.

The takeaway

Hallucination felt like magic gone wrong, an AI lying for no reason. It isn’t. It’s a prediction machine that generates plausibility, not truth, trained under a scoring system that quietly rewarded confident guessing over honest doubt. Once you see it that clearly, the fixes stop being mysterious too. Ground the model in real sources so it reads instead of guesses. Make it cite and verify so nothing unsupported ships. Retrain the instinct so “I don’t know” becomes a good answer. And layer these defenses so nothing slips through the cracks alone.

We will probably never get to zero, and the honest researchers have stopped pretending we will. But that was never really the goal. The goal is an AI whose confidence you can actually trust, one that’s right when it sounds right, and tells you when it isn’t sure. That’s not a fantasy. It’s an engineering problem, and as of 2026, we know exactly how to work it.


Key sources worth reading: “Why Language Models Hallucinate” (Kalai, Nachum, Vempala, Zhang, OpenAI, 2025, arXiv 2509.04664) for the incentive argument; and the comprehensive hallucination surveys on arXiv (e.g. 2510.06265) for the full taxonomy of causes and mitigations.

← Back to blog