Learn why ChatGPT, Claude, Gemini, and Llama sometimes generate incorrect information, what causes hallucinations, and how production AI engineers minimize them using RAG, grounding, guardrails, and evaluation.

Find all tutorials here


Table of Contents

  1. Introduction
  2. What Is an LLM Hallucination?
  3. Why Do LLMs Hallucinate?
  4. Types of Hallucinations
  5. A Simple Example
  6. Hallucinations in Production AI
  7. Why Bigger Models Still Hallucinate
  8. Detecting Hallucinations
  9. Reducing Hallucinations with RAG
  10. Other Techniques to Reduce Hallucinations
  11. Building a Hallucination Detection Pipeline
  12. Python Example
  13. Best Practices
  14. Common Interview Questions
  15. Key Takeaways
  16. What’s Next

Introduction

If you’ve used ChatGPT long enough, you’ve probably experienced something like this.

You ask:

Who won the FIFA World Cup in 2028?

And the model confidently replies:

Brazil defeated Spain 3–1 in the final.

The answer sounds believable.

The grammar is perfect.

The confidence is high.

But there’s one problem.

The event hasn’t even happened yet.

This is one of the most common challenges in modern AI systems:

Hallucination.

Hallucinations are one of the biggest reasons companies hesitate to deploy LLMs in production.

Imagine an AI assistant that:

  • Gives incorrect medical advice
  • Invents insurance policy clauses
  • Generates fake legal citations
  • Creates imaginary financial regulations

These aren’t small mistakes.

They’re business risks.

That’s why understanding hallucinations is one of the most important skills for an AI Engineer.

In this article, you’ll learn:

  • What hallucinations actually are
  • Why they happen
  • Why larger models still hallucinate
  • How companies reduce them
  • How RAG helps
  • How to detect hallucinations in production
  • A simple Python implementation

What Is an LLM Hallucination?

An LLM hallucination occurs when a language model generates information that:

  • is factually incorrect,
  • unsupported by evidence,
  • fabricated,
  • or inconsistent with the provided context,

while presenting it confidently.

Unlike traditional software, an LLM doesn’t “know” facts in a database-like way.

Instead, it predicts the most likely next token based on patterns learned during training.

That distinction is crucial.

LLMs generate language.

They do not retrieve truth.


The Biggest Misconception About LLMs

Many beginners think:

Question
LLM searches memory
Returns correct answer

That’s not how LLMs work.

The actual process looks more like:

Question
Tokenization
Transformer
Probability Distribution
Next Token Prediction
Repeat

Every word is simply the model predicting:

“What token is most likely to come next?”

Sometimes that prediction aligns with reality.

Sometimes it doesn’t.


Why Do LLMs Hallucinate?

There isn’t a single cause.

Hallucinations usually arise from multiple factors.

Let’s explore the most important ones.


Reason 1: LLMs Predict Tokens, Not Facts

Suppose you ask:

“Who invented the first quantum computer?”

If the training data contains inconsistent information—or no definitive answer—the model still tries to complete the sentence.

It doesn’t say:

“I don’t know.”

Instead, it predicts what appears statistically plausible.

This is why hallucinations often sound extremely convincing.


Reason 2: Missing Knowledge

Imagine asking:

What is the employee leave policy at GeekyCodes?

Unless GeekyCodes was included in the model’s training data (which it wasn’t), the model cannot know.

Instead, it may produce something like:

Employees receive 20 annual leave days.

Completely fabricated.

Because the model has no access to your company’s documents.


Reason 3: Knowledge Cutoff

Every LLM has a training cutoff.

Suppose a model was trained until:

December 2024

Now ask:

Who won Wimbledon 2026?

The model cannot know.

Without external knowledge, it may invent an answer.


Reason 4: Ambiguous Questions

Suppose you ask:

Tell me about Jaguar.

Which Jaguar?

Jaguar
├── Animal
├── Car
├── Operating System
└── Sports Team

If the prompt lacks context, the model may choose the wrong interpretation.


Reason 5: Weak Retrieval in RAG

This is one of the most common production failures.

Imagine a RAG pipeline.

User Question
Retriever
Wrong Documents
LLM
Wrong Answer

The LLM may generate an answer using irrelevant context.

The model isn’t necessarily the problem.

The retriever is.


Reason 6: Conflicting Documents

Imagine your knowledge base contains:

Document A

Leave Policy: 20 days

Document B

Leave Policy: 25 days

Which one should the model believe?

Without versioning and metadata, hallucinations become much more likely.


Reason 7: Poor Prompt Design

Consider these prompts.

Prompt A:

Explain the company leave policy.

Prompt B:

Answer ONLY using the provided documents.
If the answer cannot be found, reply:
“The information is unavailable.”

The second prompt dramatically reduces hallucinations.

Prompt engineering matters.


Types of Hallucinations

Not all hallucinations are the same.

1. Factual Hallucination

The model invents facts.

Example:

Einstein won the Nobel Prize for Relativity.

Incorrect.


2. Citation Hallucination

The model invents references.

Example:

According to Nature (2023)…

But no such paper exists.

Very common in research assistants.


3. Numerical Hallucination

The model invents numbers.

Example:

Revenue increased by 42%.

No evidence.


4. Context Hallucination

The retrieved document says:

Premium = $100

The model answers:

Premium = $120

Even though the context clearly says otherwise.


5. Tool Hallucination

AI agents may invent tool outputs.

Example:

Email successfully sent.

But the email API actually failed.


A Simple Example

Let’s compare a normal LLM with RAG.

Without RAG:

Question
LLM
Guess

With RAG:

Question
Retriever
Relevant Documents
LLM
Grounded Answer

Notice the difference.

The model now has evidence.


Python Demonstration

Let’s build a tiny retrieval example.

documents = [
"Employees receive 20 days of annual leave.",
"Annual bonuses are paid in December."
]
question = "How many leave days do employees receive?"
context = documents[0]
prompt = f"""
Context:
{context}
Question:
{question}
Answer ONLY using the context.
"""
print(prompt)

Output

Context:
Employees receive 20 days of annual leave.
Question:
How many leave days do employees receive?
Answer ONLY using the context.

The LLM is now grounded.


Why Bigger Models Still Hallucinate

A common misconception is:

GPT-5 won’t hallucinate.

Or

Claude Opus never hallucinates.

Or

Llama 4 solved hallucinations.

Not true.

Larger models usually hallucinate less frequently.

But they still:

  • predict tokens
  • rely on training data
  • face ambiguous prompts
  • encounter missing information

Hallucination is a property of probabilistic language generation.

It cannot simply be “removed.”


Hallucinations in Production AI

Imagine building an insurance chatbot.

The user asks:

Does Policy X cover cancer treatment?

The retriever accidentally returns:

Policy Y

The model answers confidently.

Result?

Incorrect insurance advice.

The issue wasn’t the LLM.

It was retrieval quality.

Production AI engineers therefore monitor:

Retriever
Retrieved Chunks
Prompt
LLM
Answer
Evaluation

Every stage matters.


Detecting Hallucinations

There is no perfect detector.

But several techniques help.

1. Citation Checking

Require every answer to cite sources.

Example:

Source:
Policy.pdf
Page 8
Clause 4.2

2. Answer Verification

Ask another LLM:

Is this answer supported by the provided context?

This is called LLM-as-a-Judge.


3. Confidence Thresholds

If retrieval similarity is too low:

Similarity < 0.45
Do not answer
Ask clarification

4. Human Review

For high-risk domains:

Healthcare

Finance

Legal

Insurance

Always include human approval.


Reducing Hallucinations with RAG

RAG doesn’t eliminate hallucinations.

But it dramatically reduces them.

Instead of relying on memory:

Question
Retriever
Relevant Context
Prompt
LLM
Grounded Answer

The LLM now answers using evidence.


Other Techniques

Better Chunking

Avoid:

Huge chunks

or

Tiny chunks

Both reduce retrieval quality.


Metadata Filtering

Retrieve only:

  • latest documents
  • correct department
  • correct language
  • correct customer

Hybrid Search

Combine:

BM25

Dense Retrieval

Keyword matching often improves precision.


Cross Encoder Reranking

Retrieve:

Top 20

Rerank

Top 5

LLM

Better context means fewer hallucinations.


Better Prompts

Instead of:

Answer this question.

Use:

Answer only from the provided context.
If the answer cannot be found,
say:
"I don't know."

Hallucination Detection Pipeline

A production pipeline might look like:

User Question
Retriever
Retrieved Context
LLM
Answer
Citation Check
LLM Judge
Confidence Score
Final Response

Notice something important.

Production systems rarely trust a single LLM response.

They validate it.


Best Practices

✅ Use Retrieval-Augmented Generation

✅ Retrieve only relevant documents

✅ Add metadata filtering

✅ Use reranking

✅ Design stronger prompts

✅ Require citations

✅ Evaluate retrieval separately

✅ Monitor hallucination rate

✅ Use human review for critical workflows


Interview Questions

Why do LLMs hallucinate?

Because they generate text by predicting the most probable next token rather than retrieving verified facts.


Does RAG eliminate hallucinations?

No.

It reduces them by grounding the model with external knowledge, but poor retrieval, weak prompts, or conflicting documents can still lead to incorrect answers.


Why do larger models still hallucinate?

Because they remain probabilistic next-token predictors. Better training improves accuracy but doesn’t guarantee factual correctness.


What is the biggest cause of hallucinations in production RAG systems?

Often it’s retrieval quality rather than the language model itself. If the wrong context is retrieved, even a powerful model can produce incorrect answers.


How can you measure hallucinations?

Common approaches include citation verification, human evaluation, LLM-as-a-Judge, faithfulness metrics, and comparing answers against a curated golden dataset.


Key Takeaways

  • Hallucinations occur because LLMs predict likely text—not verified facts.
  • Missing knowledge, outdated training data, weak retrieval, poor prompts, and conflicting documents all contribute to hallucinations.
  • RAG reduces hallucinations by providing grounded context but does not eliminate them.
  • Production AI systems combine retrieval, validation, evaluation, and guardrails to improve reliability.
  • Building trustworthy AI requires optimizing the entire pipeline, not just selecting a larger model.

What’s Next in This Series?

This article is part of the Ultimate RAG Guide.

  1. How to Choose the Right Chunk Size for RAG
  2. Embeddings Explained: How LLMs Understand Meaning
  3. Vector Databases Explained: FAISS vs. Pinecone vs. Qdrant
  4. Hybrid Search: Combining BM25 and Vector Search
  5. Metadata Filtering for Enterprise RAG
  6. How to Evaluate a RAG Pipeline
  7. Production RAG Best Practices
  8. Why RAG Systems Still Hallucinate—and How to Reduce It

By the end of the series, you’ll understand not only how to build a RAG system, but also how to design one that is scalable, maintainable, and ready for production.

The complete implementation used in this tutorial is available on GitHub.

 If you found this tutorial helpful, consider starring the repository.

 GitHub Repository:https://github.com/vedprakash11/rag-fundamentals



Recommended Internal Links:

Leave a Reply

Discover more from Geeky Codes

Subscribe now to keep reading and get access to the full archive.

Continue reading