Skip to content

幻觉(Hallucination)

一句话 TL;DR:幻觉是大模型"一本正经胡说八道"的现象--生成看似合理但事实错误的内容。根源是模型本质在做"预测下一个 token"而非"检索事实",且不知道自己不知道什么。幻觉无法完全消除,只能通过 RAG、工具调用、校准、self-consistency 等手段缓解。它是大模型落地最大障碍之一。


L1 · 一句话点破

幻觉(Hallucination):模型生成的内容看起来合理、流畅、自信,但事实错误或与已知信息冲突

典型表现:

  • 编造不存在的论文、人物、URL
  • 给出错误的数字、日期、引用
  • 把两个不相关的事实拼成看似合理的叙述
  • 对自己不确定的问题给出确定答案(不承认"不知道")

幻觉的本质:模型不知道自己不知道什么。它生成的是"统计上合理的下一个 token",不是"事实正确的答案"。当训练数据里没有的事实被问到,模型会基于统计规律"编"一个看似合理的答案。

L2 · 通俗类比

一个读了万卷书但分不清"读到过"和"自己想出来的"的学者:

  • 你问他"莎士比亚的《哈姆雷特》主角是谁",他答对了(真的读过)
  • 你问他"莎士比亚的失传剧本《爱丁堡的玫瑰》讲什么",他没读过,但不愿承认,基于莎士比亚的风格"编"了一个剧情(幻觉)
  • 你问他"公元前 500 年的中国皇帝谁最长寿",他记不清,编了个名字和年龄(幻觉)

关键:他编的内容听起来很合理(符合莎士比亚风格、符合历史语境),但事实是错的。而且他说得很自信,你听不出来他其实在编。

这就是大模型的幻觉。模型不像搜索引擎(查到就答,查不到就说"没找到"),它像那个"不愿承认不知道"的学者--基于学到的语言模式续写,输出流畅但可能编造。

为什么难解决?

  • 模型内部没有"我学过 vs 我编的"的明确区分
  • 自回归生成(见 自回归生成)让它一路续写不能回头
  • 训练目标是"流畅"而非"准确"
  • 知识边界模糊,无法精确判断"这个我知道/不知道"

L3 · 正经定义

幻觉(Hallucination):大模型生成的内容与事实、已知信息、用户输入或预期行为不一致的现象。

按类型分(Ji et al., 2023 综述):

类型定义例子
事实幻觉生成与客观事实不符的内容"爱因斯坦 1920 年发明相对论"(实际 1905)
忠实幻觉生成与输入/上下文不符的内容摘要里编造原文没有的内容
指令幻觉偏离用户指令要求"100 字内"却写 500 字
自洽幻觉前后矛盾同一回答里先说 A 后说非 A

按"是否可验证"分:

  • 内蕴幻觉(intrinsic):与输入源直接矛盾,易检测
  • 外延幻觉(extrinsic):输入源未提及但非必然错误,难检测

幻觉的根源(多因素叠加):

  1. 训练目标:next-token CE 优化"流畅"而非"准确"(见 损失函数
  2. 知识表示模糊:模型参数里"学过的事实"和"语言模式"混在一起,无法区分
  3. 无元认知:模型没有"我知道/不知道"的自我评估机制
  4. 自回归累积自回归生成 早期错误会累积
  5. 训练数据噪声:训练数据本身有错,模型学到了错误"事实"
  6. 过度自信RLHF 让模型倾向给出确定答案,不轻易说"不知道"

参考资料

L4 · 原理深挖

4.1 为什么会产生幻觉:训练目标与知识表示

大模型预训练目标是 next-token cross-entropy

$$ \mathcal{L} = -\sum_t \log P_\theta(x_t | x_{<t}) $$

这个目标优化的是"给训练数据分配高概率",等价于"学会流畅续写"。但它不优化"事实准确性"

  • 训练数据里"莎士比亚写《哈姆雷特》"和"莎士比亚的风格特征"都被模型学为"语言模式"
  • 模型不知道哪些是"事实"、哪些是"风格"
  • 当问到失传剧本,模型基于"莎士比亚风格"续写,输出"流畅但编造"的内容

更深的问题:知识在模型参数里是分布式表示。"莎士比亚"这个概念由数千个参数共同编码,包含事实(《哈姆雷特》作者)、风格(戏剧语言)、关联(伊丽莎白时代)等。模型无法分离"事实"和"非事实"部分。

4.2 为什么模型不知道自己不知道:缺乏元认知

人类答错时会说"我不确定"。模型为什么不?

① 训练数据偏向

RLHF 的偏好数据里,标注员倾向给"给出答案"的回复高分,给"我不知道"的回复低分(觉得不有用)。模型学到"永远给答案"而非"不确定时承认"。

② softmax 输出概率不等于"置信度"

模型输出 $P(\text{token})$ 是 next-token 分布,不是"我知道这个事实的概率"。即使模型不确定,某个 token 的概率仍可能很高(因为语言模式强烈)。高概率 ≠ 高准确。

③ 没有显式的元认知模块

模型没有"先评估自己知不知道,再决定答或拒"的机制。它直接生成,生成的自信度由 RLHF 调节,而非真实的不确定性。

Lin et al., 2022 等研究尝试让模型表达不确定性("我有 70% 把握..."),但仍未根本解决。

4.3 自回归生成的累积效应

自回归生成 的特性加剧幻觉:

prompt: "莎士比亚的失传剧本《爱丁堡的玫瑰》讲什么?"
生成:
  step 1: "《爱丁堡的玫瑰》" (模型续写名字)
  step 2: "是莎士比亚" (续写作者)
  step 3: "晚年创作" (编造创作时间)
  step 4: "的一部悲剧" (编造类型)
  step 5: "讲述..." (开始编剧情)
  ...

每步基于前文续写。一旦前几步"承认"了不存在的剧本名,后续就基于这个错误前提继续编。模型没有"等一下,这个剧本可能不存在"的回头机制。

这是为什么幻觉常呈"雪球效应"--越编越详细,越详细越像真的。

4.4 幻觉的检测

检测幻觉的几种思路:

① 外部知识对比

用搜索引擎或知识库验证模型输出的每个事实。RAG(见 RAG)的本质就是这种思路。

挑战:不是所有事实都能查到;查询构造本身需要技术。

② 自洽性检查

多次采样(不同温度),看模型是否给出一致答案。如果多次答案差异大,说明模型不确定,可能幻觉。

sample 1 (T=0.7): "爱因斯坦 1905 年发表相对论"
sample 2 (T=0.7): "爱因斯坦 1915 年发表广义相对论"
sample 3 (T=0.7): "爱因斯坦 1920 年提出相对论"
-> 答案不一致,模型不确定,可能幻觉

③ 模型自评

让模型评估自己的输出:"上面这个回答里有哪些事实?你多确定?"但模型自评不可靠(Shuster et al., 2021 实证)。

④ 置信度估计

研究模型的内部状态(如 logit、激活)估计置信度。但 softmax 概率不等于真实置信度,校准是大问题。

4.5 幻觉的缓解策略

① RAG(检索增强生成)

最有效的工程方案。让模型生成前先检索相关文档,基于文档回答。把"事实回忆"从模型参数转移到外部知识库。

RAG 词条。RAG 大幅减少事实幻觉,但有自己的问题(检索不准、文档冲突)。

② 工具调用

让模型调用搜索引擎、计算器、数据库等工具获取事实。比 RAG 更灵活,但需要模型学会"何时调用工具"。

代表:ChatGPT 的 web search、Code Interpreter。

③ 校准(Calibration)

让模型的输出置信度匹配真实准确率。如 Lin et al., 2022 让模型生成"我有 X% 把握"。

挑战:校准本身不解决幻觉,只让用户知道何时该怀疑。

④ Self-consistency

多次采样取多数。适合有明确答案的任务(数学、推理),不适合开放生成。

⑤ 训练时干预

  • 事实性微调:用事实性数据微调,让模型倾向"承认不知道"
  • RLHF with truthfulness:在偏好数据里加入"承认不知道优于编造"
  • DPO with honesty:类似 RLHF,强化诚实

挑战:标注"编造 vs 不知道"本身困难。

⑥ 解码策略

  • 温度:减少随机性,减少"编造"
  • 约束解码:限制输出必须基于检索文档(如 grounded decoding)
  • 反复 prompt:"如果你不确定,请说不知道"

这些是缓解而非根治。

4.6 幻觉是特性还是 bug

一个反直觉的观点:幻觉是大模型"创造性"的副作用

模型能写诗、编故事、做类比,本质是"基于学到的模式生成新内容"。这种能力在事实性任务上是幻觉(编造事实),在创意任务上是特性(创造新内容)。

完全消除幻觉 = 完全消除创造性。这是为什么幻觉难根治:它和模型最有价值的能力同源。

实务策略:根据任务调节

  • 事实性任务(医疗、法律、金融):用 RAG、工具调用、低温度、约束解码,最大程度抑制幻觉
  • 创意任务(写作、brainstorming):允许"幻觉"作为创造力
  • 关键决策:永远人工验证,不信任模型输出

4.7 幻觉的未来

幻觉研究的前沿方向:

① 过程奖励(Process Reward)

不只奖励最终答案,奖励每一步推理的事实性。OpenAI o1、DeepSeek-R1 等推理模型的核心思路。

② 显式知识分离

让模型显式区分"我学过的事实"和"我推断的内容"。架构层面的改进,如 RAG + 推理链。

③ 持续学习与事实更新

让模型动态更新知识,而非依赖静态训练数据。如 retrieval + in-context learning。

④ 多模态验证

用图像、视频等多模态信息验证文本事实。如生成"埃菲尔铁塔"时验证其图像特征。

但业界共识:幻觉不会完全消除。它是大模型架构(参数化知识 + 自回归生成)的根本特性。最终方案是"模型 + 工具 + 人工"的协作,而非纯模型。

L5 · 沿革与坑

沿革

  • 2020-2021:GPT-3 发布后,幻觉问题被广泛观察。Shuster et al., 2021 等研究 RAG 缓解幻觉。
  • 2022:ChatGPT 发布,幻觉成为大众认知问题。"AI 一本正经胡说八道"成网络梗。
  • 2023Ji et al. 综述 系统化幻觉定义和分类。RAG 成为缓解幻觉的主流工程方案。
  • 2023-2024:GPT-4、Claude 等引入工具调用(web search),减少事实幻觉。
  • 2024:OpenAI o1 等推理模型用过程奖励提升事实性。幻觉研究进入"推理 + 验证"阶段。
  • 2025:业界共识幻觉无法完全消除,转向"模型 + 工具 + 人工"协作方案。

常见误解

  • 误解:大模型越强大,幻觉越少。 ✅ 真相:规模提升整体能力,但幻觉是架构特性,不会随规模消失。GPT-4 仍有幻觉,只是相对 GPT-3 少一些。幻觉和规模无单调关系。

  • 误解:幻觉是 bug,可以修复。 ✅ 真相:幻觉是"参数化知识 + 自回归生成"的根本特性,和创造性同源。可以缓解,不能消除(4.6)。

  • 误解:模型说得很自信,所以是对的。 ✅ 真相:自信不等于正确。RLHF 让模型倾向自信表达,但自信度不反映真实准确性。高置信幻觉最危险(4.2)。

  • 误解:低温可以消除幻觉。 ✅ 真相:低温减少随机性,但模型仍会"确定地编造"。低温让幻觉更稳定(每次都编同样的错),不消除幻觉。

  • 误解:RAG 完全解决幻觉。 ✅ 真相:RAG 大幅减少事实幻觉,但有自己的问题:检索可能不准、文档可能冲突、模型可能忽略检索结果。RAG 是缓解不是根治。

  • 误解:幻觉都是错的,应该完全消除。 ✅ 真相:幻觉在创意任务上是"创造性"。完全消除幻觉 = 消除创造性。应根据任务调节(4.6)。

  • 误解:让模型说"我不知道"就解决问题。 ✅ 真相:让模型在不知道时说"我不知道"是好事,但模型不知道"自己不知道",无法可靠判断何时该说。而且过度保守会让模型拒绝合理请求。

面试怎么考

  1. "什么是大模型幻觉?" --生成看似合理但事实错误的内容。本质是模型不知道自己不知道(L1、L3)。
  2. "幻觉的根源是什么?" --训练目标(流畅而非准确)、知识表示模糊、无元认知、自回归累积、数据噪声、过度自信(4.1、4.2、4.3)。
  3. "怎么缓解幻觉?" --RAG、工具调用、校准、self-consistency、训练干预、解码策略(4.5)。
  4. "为什么幻觉难完全消除?" --和创造性同源,是架构根本特性(4.6)。
  5. "RAG 怎么减少幻觉?" --把事实回忆从参数转移到外部知识库,基于检索文档回答。但不根治(4.5)。
  6. "模型自信度高代表准确吗?" --不代表。softmax 概率不等于真实置信度,RLHF 让模型过度自信(4.2)。

延伸阅读


上一篇:温度 Temperature -- 一个参数怎么调节"创造力"。下一篇:量化 Quantization -- 怎么把大模型塞进显存。

内容采用 CC BY-SA 4.0,代码采用 MIT。