☰
我的知识库助手把一位离职员工的工号,一本正经地报给了客户——聊聊大模型幻觉这道坎
2026/10/2 12:55:16 网站建设 项目流程

上个月有个客户跑来找我,说他们刚上线的内部知识库助手闯祸了。有个销售在群里问"某某客户我们这边对接的同事是谁",助手张口就报了一个名字加工号,说得斩钉截铁,连人家在哪个部门都编得清清楚楚。可实际上,这位"同事"三个月前就离职了,工号都被回收了。客户当时就炸了,追问这个假工号是从哪来的。助手还一本正经地补了一句"该员工目前在职"。要不是销售认识真人,这信息就这么被当真的发出去对接了。

我接手去排查的时候,第一反应也是查知识库——是不是文档里还躺着一条离职记录没删?结果文档干干净净,那条"工号 + 在部门 + 在职状态"完完整整是模型自己现编的。数据库里根本没有这个人。这就是我在这一行绕不开的一个坎:大模型会一本正经地胡说八道,而且它胡说八道的时候,语气跟说真话一模一样。

今天想跟你聊聊幻觉这件事,不是从那种"AI 又编了个笑话"的猎奇角度,而是从工程角度——幻觉到底是怎么冒出来的,我们这些把大模型怼进生产系统的人,能用什么办法把它拦住、或者至少兜住。

先说它为什么会编。很多人以为幻觉是模型"笨",其实恰恰相反,幻觉是模型"太会猜"的结果。Transformer 这玩意儿本质是个超高维的概率预测器,它生成下一个字的时候,是在海量语料里学到的分布上采样。碰到知识库里没有的信息,它不会停下来喊"我不知道",而是会顺着上下文里最像那么回事的方向,给你补一个"最可能"的答案。也就是说,它不是故意骗你,是它压根没有"我知道自己不知道"这个意识。这个问题在业界有个词叫校准(calibration)——模型自认为正确的概率,跟它实际正确的概率,常常对不上。它以为自己有 95% 把握,真实可能只有 40%。这种"过度自信的错",是最难防的,因为从字面上你根本看不出来破绽。

我排查那个案子的时候,又发现一个雪上加霜的点——我这套知识库走的是检索增强(RAG),按理说应该能兜住"不知道"的情况。可问题是,RAG 只能兜住"检索到了错文档"或者"检索为空"这类情况,它兜不住"检索到了一段模棱两可的片段、模型顺着它的语气自由发挥"。那条离职信息,就是因为系统里某个模糊字段让模型误以为有这么个人,它就顺着"这个人应该存在"的设定,把工号、部门、在职状态全给脑补圆了。所以你看,检索增强不是幻觉的免疫针,它只是把幻觉从"凭空编"变成了"顺着半截信息编圆",难度不减反增。

聊到这,我得承认一个有点丧气的事实:幻觉没法被彻底消灭,至少在现有架构下,你只能想办法"降低"它、"发现"它、"兜住"它。那些号称"我们模型几乎不会幻觉"的宣传,大多是拿特定场景的评测数据说话,换个没见过的领域立马现原形。所以我的态度很务实——别指望消灭,要当它是生产系统里一个必须管理的风险,跟内存泄漏、网络抖动一样去对待。

那能怎么管?我先说我被这次翻车逼出来的笨办法。核心就一条:给模型一个"我不确定"的出口,别让它被逼着硬答。具体做起来是几件事叠加的。先说指令层面的,我在 system prompt 里明确写了"如果知识库里没有明确依据,请直接回答不知道,并说明哪部分缺失",把"老实承认"当成默认行为而不是羞耻。再说检索层面的,我把 RAG 的相似度阈值调高,只把真正高相关的片段喂进去,宁可少给点上下文,也不给它一块模棱两可的料让它自由发挥。这两件事光靠调参没法彻底解决,所以我还要过一层事实核查(fact-checking)——让系统对生成的答案里那些具体事实点(工号、人名、日期、金额)单独抽出来,再去知识库里复核一遍,复核不过就打回或者标注"存疑"。那套"这位员工目前在职"的鬼话,如果当时过了这层核查,工号根本对不上,早就被拦下了。

这还没完。生产系统里还有个被低估的环节,就是红队测试(red teaming)。我以前总觉得这是安全团队搞对抗的事,跟我部署业务没啥关系。这次案子让我改观了——红队测试其实就是"故意挑刺",拿那些最容易诱发幻觉的问题去砸系统,看它哪里会瞎编。比如我后来专门构造了一批"知识库里只有一半信息"的问题,还有"两个相似人物容易混淆"的问题,定期拿去砸那个助手,把它会翻车的角落提前炸出来。这就好比上线之前先自己当一遍最刁钻的客户,把会出丑的地方先自己出丑一遍,总好过让真客户踩雷。

打岔说一句,我把这事跟几个做 AI 客服的同行聊了一圈,发现大家都栽过差不多的跟头,有人栽在法律条款上,有人栽在价格上,还有个哥们儿的理财助手把一款早下架的产品收益率报得清清楚楚,理财经理差点真给人推过去。共性都是同一个:模型不缺表达,缺的是"知道自己在说什么"的自觉。所以我现在越来越觉得,做 AI 落地这行,真正值钱的本事不是怎么让模型说得更流利,而是怎么让它在该闭嘴的时候闭嘴。

那是不是说明这套技术很悲观?我倒不这么看。幻觉确实是当前最扎心的短板之一,但正因为它是短板,才给了我们工程上发挥的空间——检索增强、事实核查、红队测试,一层套一层,把本来该"全对"的压力,分摊成"每一层都尽一份力"。我跟那个客户最后是怎么收尾的?把那套事实核查加上了,离职信息这一类刚性事实先走结构化数据源核验,不走模型自由发挥;再把那个"这位同事在职"的幻觉问题拿去红队测试复盘,进了回归清单。到现在快一个月,没再翻过车。

临了抛个问题给你:你在生产里被大模型幻觉坑过吗?是栽在它"编了个像模像样的事实",还是栽在它"顺着半截错信息越说越圆"?你后来是用检索、核查,还是干脆换了一套让它先搜再答的流程来兜底?评论区聊聊,我想收集一波真实的翻车现场,说不定下次能帮你把某个坑提前避开。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询