6.1 什么是幻觉?

先看一个真实场景:

用户:帮我查一下,2024 年诺贝尔物理学奖得主是谁?

AI:2024 年诺贝尔物理学奖得主是 John Hopfield 和 Geoffrey Hinton,
他们因在机器学习领域的基础性发现和发明而获奖。✔ 这个是对的

用户:那 2025 年呢?

AI:2025 年诺贝尔物理学奖得主是……(开始编造一个不存在的名字和理由)❌

幻觉(Hallucination):模型生成的内容语法通顺、语气自信、逻辑自洽,但事实是错的—— 编造的、虚构的、不存在的。

注意关键词:语法通顺 + 语气自信。这是幻觉最可怕的地方:它看起来太像真的了。


6.2 幻觉的根源:模型的"本质"

还记得第 1 课吗?LLM 的本质是一个"文字接龙机器"。

它在训练时学的任务是:

"中国的首都是____" → 预测下一个词

从来没有学过"查证事实",只学会了"什么词在什么上下文里更可能接在后面"。

所以当它遇到不知道答案的问题时,它的本能不是"我不知道",而是:

“我要根据我学过的文字模式,编一段最像答案的话。”

三个具体原因

原因说明
1. 训练目标是"像人话",不是"说真话"预测下一个词的模型,编一句通顺的假话比说"我不知道"得分更高
2. 知识有截止日期训练数据是过去某个时间点的快照,之后发生的事它真不知道
3. 知识被"压缩"失真互联网上的信息互相矛盾、真假混杂,模型记住的是"统计规律"而不是"事实"

6.3 幻觉的三种类型

类型表现例子
事实型幻觉编造事实、人物、事件编一个不存在的诺贝尔奖得主
逻辑型幻觉推理过程自相矛盾算出 3+5=9,还一本正经解释步骤
指令型幻觉明明做不到却说做了“已经把你的文件发送到邮箱了”(其实没发)

识别幻觉的一个技巧:越具体、越冷门、越超越模型知识截止日期的问题,越容易幻觉。


6.4 从 Prompt 层缓解(不花钱的方案)

技巧 1:给模型"退路"

❌ "公司的注册资金是多少?"

✅ "根据下面提供的资料回答问题。如果资料中没有提到,
   请直接说'资料中没有相关信息',不要猜测。"

技巧 2:要求引用出处

✅ "请回答以下问题,并且标注答案来自哪段资料:
   每一条结论后面用 [来源编号] 标注。"

技巧 3:提供上下文,别让模型"裸答"

❌ "帮我总结一下这个产品的优点"(模型只能编)

✅ "以下是该产品的官方介绍文档:
   [粘贴文档内容]
   请基于以上文档总结产品优点。"

技巧 4:降低温度

温度高 = 爱冒险 = 更容易编。事实性问题把 temperature 调到 0~0.3。

技巧 5:让模型先判断,再回答

✅ "在回答前,先检查你是否真的知道答案。
   如果你对答案不确定,先列出你不确定的点,再给出回答。"

6.5 从应用层缓解(治本方案)

Prompt 技巧是"防守",真正治本要靠应用架构

方案 1:RAG(检索增强生成)—— 最推荐

把答案来源"接上"真实资料,让模型基于检索到的内容回答,而不是凭空编。

用户提问
  ↓
从知识库检索相关资料 ← 事实来源
  ↓
把资料 + 问题一起给 LLM
  ↓
LLM 基于资料回答(编无可编)

这正是第三部分「RAG 篇」要深入讲的核心技术。

方案 2:工具调用(Function Calling)

让模型调用真实工具拿数据,而不是靠记忆猜:

  • 查天气 → 调天气 API
  • 算价格 → 调计算器
  • 查股价 → 调行情接口

方案 3:校验与兜底

AI 回答 → 交给一个"审核模型"检查 → 不过关就重新生成 / 拒绝回答

用另一个模型交叉验证,能显著降低幻觉率(代价是多一次 API 调用)。

方案 4:提示用户风险

高风险场景(医疗、法律、金融)必须加免责声明 + 醒目提示"AI 生成内容仅供参考"。


6.6 哪些场景最危险?

场景幻觉后果应对
医疗建议可能危及健康必须接入权威知识库 + 人工审核
法律意见可能造成损失只做资料整理,结论必须人工复核
金融决策可能亏钱工具调用拿真实数据,禁裸答
客服内容承诺了做不到的事限定在 FAQ 范围内回答
代码生成生成了不存在的 API运行测试验证,别直接上线

核心心法:LLM 是"生成器"不是"数据库"。凡是"事实必须准确"的场景,都别让它裸答,要么给资料、要么接工具、要么加校验。


6.7 幻觉 VS 创造:如何区分?

有意思的是,同一个能力的两面:

写小说、编故事 → 我们叫它"创造力" ✅
回答事实问题时 → 我们叫它"幻觉" ❌

所以目标不是"消除想象",而是在需要事实的场景里,不让它发挥想象。做法就是上面说的:把"事实来源"显式提供给模型。


更多推荐