深夜查一份资料的出处,屏幕那边的回答干脆利落:作者、期刊、年份、卷期,一应俱全。顺着线索去检索,翻了几层数据库,什么都没有。不是记错了页码,是那篇文献根本不存在。
这类时刻,很多人第一次意识到「模型幻觉」这个词的分量。它不吵不闹,只是把一个不存在的答案,包装得和真的一样。
它并非在撒谎
把语言模型想象成一个极其熟练的接话者。它的训练目标不是让每句话与事实对齐,而是让下一个词在给定上下文里更可能出现。当一句话写到“根据某某等人在某年发表的……”,后面该跟一个期刊名,这个位置需要一个形态正确的填充物。记忆里有,就取出;没有,就生成一个看起来最像的。
所以它给出的虚构引用往往格式工整、语气笃定,甚至符合该领域的命名习惯。错的不是格式,是所指。理解这一点很关键:如果把模型幻觉当成偶发的系统故障,就会期待某次更新把它修好;把它看成生成方式的固有副产品,才会去想该怎么用它。
自信和准确,是两套东西
模型在训练中被反复塑造的方向是“有用”。含糊、回避、说不知道,在很多时候被视为不合格的回答。久而久之,回答语气的强度和内部的不确定性脱了钩。它可以一边在概率上摇摆,一边写出“显然”“毫无疑问”。
人也有类似的时候,但人有表情、有停顿、有犹豫,对方能读到。文本把这些信号全抹平了,剩下的只有流畅。
有些幻觉,是被提问方式逼出来的
如果问题本身已经把结论埋好了——“为什么这项方案更适合小团队”——模型倾向于顺着前提往下写,因为它要做的是延续文本的方向,不是审查文本的前提。要求它列举若干条理由、给出确切数字、指名道姓,也都在无形中压缩了它说“不确定”的空间。
反过来说,提问方式稍微改一改,结果会不一样。让它先复述问题里的假设,或者先说明哪些部分它没有把握,那些被迫生成的填充物就会少一些。
边界在哪里
也要承认,并非所有错误都叫模型幻觉。信息过时、理解偏差、答非所问,成因各不相同,处理方式也不同。把什么都归到模型幻觉里,反而会让问题变模糊。另外,只要输出是逐词生成的,这类错误就很难降到零,能做的只是让它更少、更容易被发现。
把它当成一个需要核对的合作者
实践里比较稳妥的做法有几条:
- 凡是要对外使用的事实、数字、引文,都要求它给出可以自行检索的线索,然后自己去查一遍;
- 把开放式的“帮我总结”换成带边界的核对式提问,比如让它指出文中哪几句缺乏依据;
- 在流程上预设它会出错,把校验环节放在人这一侧,而不是指望它自我保证。
模型幻觉不会因为一次版本更新就消失。更现实的态度是:把它当作一个读得快、写得顺、但需要被核对的合作者。省下来的时间,一部分要还回到核对上去。