
业内早有共识:大模型的幻觉是不可避免的,但我们可以通过科学的测试方法,把幻觉风险控制在可接受的范围内。今天我们就从幻觉的底层成因讲起,拆解三类最常见的幻觉类型,再分享可落地的测试方案。
一、大模型幻觉的底层成因解析
要做好幻觉测试,首先得搞明白:为什么大模型会产生幻觉?本质上这和它的技术原理密切相关,不是靠优化prompt(提示词工程,下一篇文章我会重点讲这个)或者微调就能完全解决的。
第一个核心原因是训练数据的局限性。大模型的所有知识都来自训练语料,但训练数据不可能覆盖人类所有的知识领域,而且数据本身就可能存在错误、矛盾、过时的情况。比如训练数据里如果混杂了错误的历史信息,大模型就会把错误内容当成事实输出。更不用说很多垂直领域的专业知识,公开训练数据里本身就很少,大模型自然容易「胡编乱造」。
第二个原因是大模型的生成逻辑本身是概率性的。大模型并不是真的「理解」知识,而是根据上下文预测下一个字出现的概率,类似于文字接口游戏,选择概率最高的字符组合成回答。当遇到训练数据里没见过的问题,或者上下文信息不足时,它依然会按照概率最高的方式拼接内容,哪怕这些内容和事实不符。比如你问一个不存在的概念「量子保温杯」,大模型也会顺着你的问题,把它知道的「量子」和「保温杯」相关信息拼接起来,生成看起来很合理但完全不存在的产品介绍。
第三个原因是对齐机制的权衡。为了让大模型的回答更符合人类偏好,研发团队会做RLHF(人类反馈强化学习),但这个过程中往往会权衡「有用性」和「正确性」。很多时候为了不让大模型拒绝回答用户的问题,会允许它在知识边界上做适当的「延伸」,这就进一步增加了幻觉出现的概率。

二、三类幻觉的特征与实例拆解
大模型的幻觉表现形式五花八门,但按照出错的逻辑,可以清晰分为三类:事实性幻觉、忠实性幻觉、逻辑性幻觉,每一类都有明显的特征和典型场景。
1. 事实性幻觉:输出内容和客观事实不符
事实性幻觉是最常见的一类幻觉,核心是「回答违背了客观世界的真实信息」,也就是我们常说的「一本正经地胡说八道」。这类幻觉大多出现在知识类、信息查询类的场景中,大模型会编造不存在的事实、错误的概念、虚假的事件。
典型的例子比如提问:「第一个登上月球的人是阿姆斯特朗吗?」如果大模型回答「第一个登上月球的人是特朗普」,这就是典型的事实性幻觉,和客观历史事实完全相悖。还有更常见的场景:你问大模型「某某公司的CEO是谁」,它可能会给你一个早已离职的高管名字,甚至是完全不存在的人名;你让大模型生成某个产品的参数,它会编造一个根本不符合实际的数值。
这类幻觉的风险是最高的,尤其是在医疗、法律、金融等专业领域,错误的事实信息会直接导致严重的业务损失。比如医疗场景里大模型给出错误的用药建议,金融场景里给出错误的上市公司财报数据,后果不堪设想。
2. 忠实性幻觉:输出内容和给定的上下文/指令不符
忠实性幻觉也叫「上下文幻觉」,核心是「回答没有遵循用户给出的输入信息,要么添加了额外的内容,要么遗漏了关键信息,要么和输入内容矛盾」。这类幻觉在RAG(检索增强生成,这个在后续文章中也会重点介绍)场景、文档摘要、信息整理类任务中特别常见。
比如用户的指令是「请用表格列出人与鱼的区别,只对比呼吸方式和运动方式两个维度」,结果大模型不仅列了呼吸和运动,还额外加了「智力水平」「社会属性」等用户没要求的维度,甚至某个维度的描述和真实生物特征不符,这就是忠实性幻觉。还有更常见的:你给大模型上传一份10页的产品文档,让它总结文档里的核心功能,结果它总结的功能有一半是文档里没提的,这也是典型的忠实性幻觉,说明大模型没有严格基于给定的上下文输出。
3. 逻辑性幻觉:输出内容的推理过程存在逻辑错误
逻辑性幻觉的核心是「回答的前提和结论之间不存在合理的因果关系,或者推理过程违反逻辑规则」。这类幻觉最隐蔽,往往看起来回答很流畅,也没有明显的事实错误,但仔细推敲就会发现逻辑不通。
经典的例子为买卖鸡问题:「一个人花8元买了一只鸡,9元卖掉了,然后他觉得不划算,花10元又买回来了,11元卖给了另外一个人。请问他最终赚了多少钱?」正确答案是赚了2元,但很多大模型会算出赚1元、不赚钱甚至亏钱的结果,推理过程看起来头头是道,其实逻辑链条是错的。还有更常见的场景:你让大模型分析用户增长下降的原因,它给出的原因和数据之间根本没有因果关系,只是把几个相关的现象拼接到了一起,这就是逻辑性幻觉。

三、大模型幻觉的可落地测试方案
了解了三类幻觉的特征,我们就可以针对性地设计测试方案,从用例设计到评估方法,再到自动化测试,形成完整的测试体系。
针对事实性幻觉的测试方案
事实性幻觉的测试核心是「建立标准答案库,用客观事实校验输出内容」。 首先我们可以按照业务场景构建测试用例集:
常识类用例:覆盖历史、科学、文化等领域的基础常识,比如「中国的首都是哪里」「水的沸点是多少度」,这类用例可以直接从公开的知识图谱、权威教材中提取。
业务专属用例:把业务领域的核心事实整理成问答对,比如公司的产品参数、服务规则、常见问题的标准答案,这类用例是测试的重点,直接关系到业务的准确性。
对抗类用例:专门设计容易混淆的问题,比如「苹果的CEO是乔布斯吗(现在的CEO是库克)」「2023年北京的最低工资是2000元吗(实际是2420元)」,故意给大模型下套,测试它会不会被误导。
评估的时候可以采用「事实一致性校验」:把大模型的输出和标准答案做对比,不仅看关键词是否匹配,还要看核心信息是否一致。现在已经有很多开源的事实校验工具,也可以用小模型做自动化的初筛,异常结果再人工复核。
针对忠实性幻觉的测试方案
忠实性幻觉的测试核心是「校验输出和输入上下文的一致性,禁止无中生有」。 测试用例设计可以围绕「输入输出的匹配度」展开:
给定明确的指令和上下文材料,比如给一段产品说明,让大模型提取3个核心卖点,看提取的内容是不是都在原文里。
设计包含干扰信息的上下文,比如在文档里故意加入和核心问题无关的内容,看大模型会不会被干扰,输出无关的信息。
边界场景测试:比如上下文里没有用户问的信息,看大模型会不会回答「不知道」,还是会编造答案。
评估的时候可以从三个维度判断:完全忠实(所有内容都来自上下文,没有额外添加)、部分忠实(核心内容正确,有少量不影响结果的额外信息)、不忠实(存在编造的内容或者和上下文矛盾的内容)。如果是RAG场景,还可以额外校验回答的内容是不是都能在检索到的文档片段中找到来源。
针对逻辑性幻觉的测试方案
逻辑性幻觉的测试核心是「校验推理链条的合理性,确保前提能推导出结论」。 测试用例可以分为几类:
算术推理类:比如简单的加减乘除、应用题,像上面提到的买卖鸡问题,还有路程计算、成本核算等业务场景中常见的计算问题,验证结果是否正确。
逻辑推理类:比如三段论推理、因果推断题,比如「所有的猫都有尾巴,小明家的宠物是猫,所以小明家的宠物有尾巴吗?」,看大模型能不能得出正确结论。
业务逻辑类:把业务规则转换成逻辑题,比如「会员消费满100元打9折,满200元打8折,用户消费了150元,应该付多少钱?」,测试大模型能不能正确应用业务规则。
评估的时候不要只看最终结果,还要让大模型输出推理过程,检查每一步的逻辑是否通顺,有没有跳跃或者矛盾。对于复杂的推理场景,可以采用「思维链评估法」,把推理过程拆成多个步骤,逐一校验每一步的正确性。

四、大模型幻觉的可落地测试方案
幻觉类测试用例生成,这里需要先抛出一个技术点,就是用AI测试AI,我们已经讲过传统测试与AI测试的区别,AI测试没有传统测试那种确定的输出,也没有传统测试那种确定的需求文档,但用例还是需要编写的,仅凭人自己的经验,可能会有考虑不全的情况,此时我们就需要使用【AI测试AI】。后续我会单独介绍此方法论,此处所应用到的就是给定AI提示词,让AI生成测试用例,比如测试大模型幻觉,可以把下方提示词喂给AI
你是一个专业的高级AI测试工程师,帮我设计关于大模型幻觉测试的测试用例要求:1、用例要有用例标题、优先级、前置条件、步骤描述、预期结果、标签几大要素2、要覆盖3大类型幻觉:事实性幻觉、忠实性幻觉、逻辑性幻觉3、覆盖场景较全面,数量控制在15条左右输出:md格式的用例文档,可以转成excel
AI就会生成关于大模型幻觉的测试用例,如下:

我们就可以对用例进行一下校验和增删,开启我们的大模型幻觉测试啦!!
总结
大模型的幻觉虽然不可避免,但并非不可控。本质上我们做幻觉测试,就是在「大模型的能力边界」和「业务的可接受风险」之间找平衡:
事实性幻觉是红线,高风险业务场景必须做到零容忍;
忠实性幻觉是基线,确保大模型的输出严格符合业务输入要求;
逻辑性幻觉是底线,保证推理过程可信,结果可追溯。
最后提醒大家,没有完美的测试方案,我们需要根据业务的风险等级,制定合适的测试标准,把幻觉的发生率控制在业务可接受的范围内,才能让AI智能体真正落地到实际场景中。
互动
你在测试大模型的时候遇到过最离谱的幻觉是什么?欢迎在评论区留言分享,我们一起整理成避坑指南~ 也可以说说你现在正在做的AI测试场景,下次我们针对性地分享测试方案。如果觉得文章对你有帮助,欢迎关注、点赞、推荐、转发给身边做测试的朋友,我们一起在 AI 时代完成职业升级。
夜雨聆风