为什么AI宁可“编”也不说“不知道”?聊聊幻觉背后的机制与工程现实
先讲一个真实案例。
2025年,一名高考生家属向某AI平台咨询高校报考信息。AI不仅给出了错误答案,还信誓旦旦地承诺“如果内容有误,赔偿10万元,可前往杭州互联网法院起诉”。用户纠正后,AI依然坚持错误。这起纠纷后来成为全国首例因“AI幻觉”引发的侵权案件,被写入最高人民法院工作报告。
这件事的荒诞之处在于:AI不是“不确定所以答错了”,而是错得理直气壮。它编造了一个赔偿承诺,又编造了一个管辖法院,语气比真律师还笃定。
这篇博客不打算泛泛罗列“AI幻觉的十大类型”或“五种解决方案”。我们聚焦一个问题:为什么大语言模型在机制上“做不到”诚实地说“我不知道”? 以及,工程上我们到底能拿它怎么办。
一、幻觉不是“bug”,是“next token prediction”的副产品
很多人把幻觉理解为模型“学错了”或者“数据脏了”。清理数据、加大训练量,幻觉就该消失。这个直觉是错的。
大语言模型的核心训练目标是下一个 token 的极大似然估计。交叉熵损失只关心一件事:给定前文,预测下一个词的概率分布是否拟合了训练语料中的共现模式。它学到的是“哪些词经常一起出现”,而不是“哪些陈述在世界上为真”。
打个比方:一个熟读百万本侦探小说的人,能写出以假乱真的谋杀案。但他并不知道现实中是否真的发生过那起案件。模型就是那个写小说的人——它的“知识”是统计关联的压缩,不是事实的索引。
2025 年 OpenAI 与佐治亚理工学院的一项研究从数学层面给出了一个更硬的结论:语言模型的生成错误率至少是分类错误率的两倍。即便训练数据完全正确,这个下界也无法消除。换句话说,让模型判断“这个答案对不对”时,它已经可能出错;让它直接生成答案,错误风险只会更高。
所以第一个知识点是:幻觉不是模型“笨”,而是它的训练目标压根就不是“说真话”。
二、评测机制在“鼓励”模型瞎猜
如果训练目标只是埋下了种子,那么评测方式才是让幻觉长成参天大树的肥料。
大多数基准测试采用二元评分:答对得一分,答错或不答得零分。在这个规则下,放弃回答永远是零分,而猜一个答案至少有机会得分。数学上的最优策略很清晰:永远猜。
OpenAI 于 2026 年 4 月发表于《自然》的研究揭示了这个反直觉的后果。在 SimpleQA 测试中,o4-mini 几乎回答了所有问题,错误率超过四分之三;而 GPT-5-mini 经常选择放弃,错误更少。结果前者的得分反而更高,因为“答得多”在二元规则下占了便宜。
这意味着模型被训练成了一个“优秀的应试者”:宁可给出过度自信的猜测,也不愿承认不确定。用户感受到的“AI 嘴硬”,根源之一在评测规则本身。
三、知识在参数里是“软存储”,没有“不知道”的开关
人类记忆有一个保护机制:调不出来的时候,你知道自己“忘了”。LLM 没有这个开关。
模型的知识分布在数十亿参数中,表现为一种软存储:信息以分布式的方式编码在权重里,不存在一个明确的“此处存储了爱因斯坦生日”的地址。当模型生成回答时,它无法访问一个元认知信号来判断“这条知识我到底有没有”。
这导致一个关键后果:置信度和真实度是两件事。模型可以以极高的概率分布生成一个完全虚构的答案,也可以以较低的概率生成一个正确的冷门事实。你从输出文本里看不出区别——语气都一样流畅。
有研究从图论角度给出了一个解释:训练早期,模型会复用记忆中的路径,即使当前上下文不匹配;训练后期,高频的多步推理路径会被压缩成捷径边,跳过中间验证步骤。两种机制共同作用,结果是模型“走得越熟的路,越不检查路标”。
四、工程上怎么办:分层兜底,别指望单点消灭
理解了根因,就能理解为什么没有单一技术能消灭幻觉。可行策略是在生成管道的每一层都施加约束。
第一层:推理参数收紧,但别迷信
把 temperature 设成 0 并不能消除幻觉,只是让幻觉变成稳定复现的版本。模型如果错了,它会每次以完全一致的方式错下去。确定性和正确性不是一回事。
真正有用的是组合约束:事实性任务用 temperature=0.1、top_p=0.1、限制 max_tokens 在 256–512。长输出是幻觉的温床,模型在生成过程中会逐渐偏离初始事实锚点。但这一层只是降低噪声,不改变“从参数记忆里生成”的本质。
第二层:RAG 把“闭卷”变“开卷”
检索增强生成是目前最具杀伤力的架构级手段。思路直白:不让模型从训练数据里“回忆”事实,而是从外部知识库检索相关段落,直接注入 prompt。
效果显著,但魔鬼在细节。检索器的召回质量、注入上下文与模型参数知识的冲突处理、检索结果的时效性——每一个环节出错,RAG 都会从“解药”变成“新的幻觉来源”。一个常见陷阱:检索到的文档和模型记忆矛盾时,模型有时会选择相信自己的参数记忆,而不是你给它的文档。
第三层:让模型先“说过程”,再“给答案”
Chain-of-Thought 和自一致性投票之所以有效,原因不是“让模型更聪明”,而是让错误变得可见。模型直接跳到答案时,你没有任何中间信号来判断它是否在编。强制外化推理步骤后,矛盾会暴露在过程中;自一致性投票让相互冲突的推理链彼此抵消。实验数据显示,这能把幻觉率降低 10% 到 40%。
第四层:评测规则本身需要改
如果训练和评测仍然用二元评分,模型就仍然会被激励去猜。OpenAI 团队提出的“开放式评分标准”是一个方向:明确告诉模型,错误答案要扣分。这样在有风险的问题上,模型才会倾向于谨慎。
写在最后
幻觉不是 AI 的“青春期毛病”,等它长大就好了。它是当前架构的结构性特征:概率生成 + 软存储 + 应试评测,三者叠加,让“自信地编造”成了系统的默认行为。
对开发者来说,务实的目标不是“消灭幻觉”,而是知道在哪个环节、用什么手段,把幻觉的代价控制在可接受范围内。对普通用户来说,最有效的习惯可能朴素得不像技术建议:关键信息,换一个模型再问一遍。
毕竟,一个从不承认自己不知道的系统,本来就不该被当作 oracle 来用。
- 点赞
- 收藏
- 关注作者
评论(0)