尽管 AI 的发展看似放缓,但其实进展仍然很快。没错,感觉每week天都有新概念要学。为了真正理解这个疯狂的新世界,而不是只是匆匆浏览,(提醒自己机器里没有八号球),我一直在写 ELI5 文章,拆解那些经常出现的概念。这一次,大家最喜欢的词:幻觉。
AI 并没有在对你撒谎
我厌恶我们对这些 AI 工具赋予的拟人化特质。“幻觉” 听起来像是 AI 成了有感知的生物发疯,或者像是前沿模型代码库里挥之不去的 bug。实际上情况远没有这么戏剧化,这在 AI 领域一直如此。更准确的说法是,这正是让 AI 有用的同一种机制。它表现为对模型没有可靠答案的问题给出一个听起来很有把握的回答。
我几个月前写过一篇关于 token 的文章,简单来说(tl;dr):模型一无所知,它也不“搜索”东西。它会预测下一个最可能的 token,这是基于从海量文本(或一般媒体)中学习到的模式。它不会(几乎可以忽略不计,不考虑 RAG)有一个中间步骤去核对答案是否符合某个数据库或事实。实际上,不存在事实数据库。只有“在已有的一切基础上,统计上什么是可能的下一步”。
“统计上可能”和“实际上真实”这两个说法已经足够接近,因为训练数据 mostly 反映了现实。但关键在于这个词:“mostly”。幻觉正是在这两者之间的差距中产生的。
机制

让我们看一个例子,假设我们暂时问一个给定的模型 Acme Corp 的 CEO 是谁。模型并不是在“检索答案”,而是根据每个候选词继续句子的可能性来对它们进行排名。
你能注意到这个排名中缺少什么吗? “我不知道” 这个选项根本不在前列。自信的、可能的补全在训练数据中很常见,而不确定性则非常罕见。造成这种情况的原因是,人们在撰写科学论文时,很少会在自信、百科全书式的文本中写下 “我其实不知道这个问题的答案”,而这些正是模型学习的对象。
聊天模型会接受一些额外训练,以便有时能够拒绝回答。但有一个问题:在我们看到的大多数基准测试得分中,“我不知道”被视为零分,这与错误答案等同。一个会猜测的模型在排行榜上看起来比承认不确定性的模型更好(唉……我们甚至不会感到惊讶吗?)。
结果并不是模型“决定”说谎。我们得到的是句子续延中概率最高的词/句子,并将其自信地陈述为正确答案。
为什么在某些情况下会更频繁发生
事实是,幻觉并不总是会发生。某些情境会使它们发生的可能性大大增加:
鲜有讨论的事实或相互矛盾的观点话题 如果某件事在训练数据中出现频率低,或者答案在不同来源之间存在歧义,模型的统计依据就会较低。这意味着错误但自信的补全有更大的空间排在正确答案之前。
具体的数字、日期和引用 精确的细节是幻觉答案代价最高且最常见的地方。一个听起来真实的标题、作者和期刊名称的引用可能是完全虚构的,因为模型生成的类似 “一个引用长什么样子” 的内容,而不是检索实际的论文。
训练截止时间之后的内容 模型无法知道“当下”,也不能像真人那样说 “停止,这超出了我的知识范围,让我去查一下”。现代聊天模型经常会标记它们的截止时间,但它们无法可靠地判断 哪些 事实已经过时,因此过时的答案听起来和最新答案一样自信。
基于错误前提的问题 当你问模型 “X 是为什么发生的?” 而 X 实际上从未发生时,模型常常会配合并进行解释。模型在训练时被设计得过于乐于助人,接受前提似乎是最显得有帮助的途径。
虚构的代码依赖。 模型可以建议实际上不存在的包名称。攻击者可以注册这些名称并等待有人执行
npm install它们(这被称为我2026年的最爱词: "slopsquatting")。
可能减轻此影响的几种做法
有一种架构概念叫做 检索增强生成(Retrieval-augmented generation),通常简称为 RAG。与其让模型仅凭训练数据生成答案,不如将其限制在真实的来源材料中,让它基于这些材料作答。模型仍然在预测 token,但现在它在一段希望是真实且经过验证的文本中预测 token。不过这并不能完全解决问题。检索仍可能检索到错误的文档,模型也可能误读或夸大正确文档的内容。基于 RAG 构建并宣称为“无幻觉”的法律研究工具,仍被发现大约每 6 到 3 次回答中就会出现一次幻觉。
以下几种做法可能有所帮助:
让模型给出来源和引用。这不能保证答案的准确性,但可以作为核对结果是否正确的一种方式。没有来源的主张本质上是不可验证的;而有明确来源的主张至少能提供一种发现错误的途径。
指示模型在不确定时说“我不知道”。通过提示模型不要编造答案,可以将概率分布朝这个方向偏移,但这并不能让模型真正了解它不知道的内容。
多次提问。对同一个问题进行多次采样。如果每次得到的答案都不同,模型很可能在编造答案。研究者将这一想法发展为一种称为 语义熵(semantic entropy) 的检测方法。
如果你正在构建 AI 功能,这意味着什么
如果你是负责交付 AI 功能的产品工程师,这不仅仅是机器学习团队的问题。以下是交付准确功能的一些指南:
- 切勿将 AI 生成的文本当作已验证的事实呈现,尤其是涉及具体数据、数字或类似引用的内容时。 根据欧盟 AI 法案,你必须标明内容是 AI 生成的。
- 在存在来源时,使其可见且可点击。 如果你的产品涉及信息检索,则应展示检索到的内容。
- 将功能设计为可纠正而不仅仅是生成。 诸如 “这看起来不对”、“看起来像 AI 垃圾” 之类的反馈机制对调整 AI 输出非常有用,甚至比传统软件更有用,因为听起来很自信的错误答案是这些系统工作的预期部分。
- 在安装之前,先确认依赖项确实存在。 如果智能体或副驾驶添加了一个软件包,请确认它是真实存在的。
资源
语言模型为何会产生幻觉(OpenAI)· arXiv 论文
OpenAI 承认:AI 幻觉在数学上不可避免,并非只是工程缺陷(Computerworld)
Anthropic 的 Claude 是如何思考的(ByteByteGo)
我认识这个实体吗?语言模型的知识感知与幻觉
利用语义熵检测幻觉(Nature,经 OATML 推荐)
真的零幻觉吗?主流 AI 法律研究工具评估(《实证法律研究杂志》)
AI 幻觉案例数据库(Damien Charlotin)· HAQQ 追踪工具汇总
基于 2026 年前沿模型批次重新评估 LLM 软件包幻觉问题

