```html 大模型幻觉:机制必然与验证之道 大模型幻觉:机制必然与验证之道
原创 58沈剑 · 2026-10-19 · 北京 · 《Agent原理,架构与实践》第2讲
问AI要一份详细履历,6000字,它答得有板有眼、有理有据。要不是这履历写的就是自己,差点就信了。这就是大模型幻觉最日常的一幕:它不是偶尔出错,而是所有大模型的共性,不是某个模型的缺陷,是机制的必然产物。
![]()
它为什么要编?它知道自己在编吗?把这两个问题拆开看,答案比想象中更朴素。
原因一:训练让它分不清“知道”和“编得像”
模型从海量文本里学到的是统计规律。有些事实在训练数据里只出现过一次,比如某个人的生日,这类“一次性信息”靠统计是学不会的。但有些编造的内容出现次数多,统计权重反而更高。
画外音:谎言重复千遍,就成了真相。在大模型的世界里,确实是这样。
训练目标不管这些,它要求模型“问什么都能答,而且要答得像回事”。于是模型学到的不是事实,而是“事实长什么样”——论文标题的格式、日期的格式、API的命名风格。
所以模型不是在说谎,它根本不知道自己在编。它没有“我知道的”和“我编的”这个概念区分,只有训练过程中学到的统计概率。
原因二:评估让瞎猜被奖励,诚实被惩罚
主流评测几乎全是“考试思维”:看准确率,而不是错误率。问模型一个它不可能知道的问题,比如某人的生日是哪个月,它有两个选择:
- 瞎猜一个答案;
- 说“我不知道”,必然得零分。
测试下来,爱猜的模型在排行榜上碾压诚实的模型。整个训练和评估体系,都在教它“宁可编,也不要说不知道”。指望它在生产环境里突然变得诚实,不现实。
画外音:不要说大模型了,考试的时候,老师是不是教我们,不要空着,随便选一个也有概率答对。
提示词里加一句“不知道就说不知道”,作用很有限
一句提醒改变不了训练出来的行为倾向。真正有效的方法,是把验证做到Agent流程里。
这是全文最重要的一句话:不完全相信模型的单次输出,只相信经过验证流程的输出。
设计Agent时可以落四条:
- 要有验证环节:生成的代码必须跑起来才算数,生成的事实必须给来源链接才算数;
- 要求引用来源:让模型标注每个关键事实的出处,没出处的默认存疑;
- 把“不确定”设计成合法输出:输出格式里明确留一个“无法确认”的选项,而不是逼它必须给答案;
- 关键事实要求人工核验:关键决策点,Agent对话中断,返回人工决策。
这四条本质上是同一件事:不完全相信模型的单次输出,只相信经过验证流程的输出。
画外音:AI时代,审美、决策、兜底是人无可替代的能力。
什么任务适合交给大模型?判断标准就一句话
答案能否被极低的成本验证。能,就适合;不能,就得掂量。
适合的场景:
- 生成类:写代码、写文案,代码跑一遍、文章看一眼就能验证;
- 转换类:翻译、格式化、改写,原文就在手里,对照即可;
- 有验证器的:单元测试校验、schema校验、人工抽检校验。
不适合的场景:
- 精确事实:某人的生日、某篇论文的标题;
- 实时数据:今天的股价、最新的版本号;
- 高风险无校验的:医疗建议、法律意见,错了也没人兜底。
和程序员关系最大的一个坑是代码幻觉:模型会编造不存在的npm包、不存在的API方法、看起来合理但签名错误的函数。说得越细,越像真的。所以AI写代码一定要验证,SDD有spec验证,TDD有用例验证。
画外音:像不像面试时不懂装懂的候选人?说得越细,越像真的。
三句话收尾:
1. 幻觉是大模型的机制,不是bug;
2. 降低幻觉的核心是验证;
3. 任务是否适合交给大模型,判断它是否能够低成本验证。
知其然,知其所以然。思路比结论更重要。
《Agent原理,架构与实践》第2讲 · 下一讲:Agent架构里,关于上下文的设计
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.