AI 说的话怎么验证:一套 5 步核实流程,加 3 个我们自己踩过的翻车案例——哪些答案要查、去哪查、查到什么程度算够
先说一个数字:我们后台统计过用户反馈的「AI 答错了」,七成以上不是模型算错、推理错,而是它给了一个看起来很具体、其实不存在的东西——一个法条编号、一个函数参数、一个「某某在某年说过」。这类错误的可怕之处在于它长得跟对的一模一样,格式规范、语气笃定,你没有理由怀疑。
这就是「幻觉」。术语那篇解释过它为什么会发生,这篇不重复原理,只讲一件事:怎么在合理的时间成本内把它抓出来。
「每句都查」不现实,「都不查」出事的时候你兜不住。所以流程的第一步不是查,而是分类——先知道哪类话值得花时间。
先交代立场:我们做的不墨 AI 助手把 DeepSeek、Kimi K3、通义千问、GLM-5.1 放在一个窗口里,下面第二步「换一家问」对我们的用户是点一下的事,但整套流程在任何平台都能走。
第 0 步:先分类,决定查不查
AI 的一段回答里通常混着好几种内容。把它们拆开,你会发现只有一部分需要查:
| 内容类型 | 例子 | 出错概率 | 要不要查 |
|---|---|---|---|
| 具体数字 | 「利率 3.85%」「占比 62%」「2019 年发布」 | 高 | 查 |
| 编号、名称、版本 | 「第 47 条」「--max-workers 参数」「XX 法 2021 修订版」 | 很高 | 必查 |
| 引用、出处 | 「某某说过……」「某研究表明……」「某书第三章提到……」 | 极高 | 必查,且默认它是编的 |
| 时效性信息 | 「目前最新版本是……」「现在的政策是……」 | 高 | 查,且优先开联网 |
| 推理、方案、建议 | 「这种情况建议先……再……」 | 低(错也是逻辑错,不是编) | 不查事实,查逻辑 |
| 改写、翻译、总结 | 你给的原文它加工过 | 低 | 对照原文看有没有加东西 |
| 常识性解释 | 「什么是复利」「HTTP 是什么」 | 很低 | 不查 |
看出规律了吗:越具体、越像「可以去查证」的东西,越可能是编的。 因为模型的训练目标是生成「像真的」的文本,一个具体的编号比「相关法规」听起来更可信,它就更倾向于给你编号——哪怕它并不真的记得。
所以判断标准只有一条:这句话如果错了,我会不会有损失?而它是不是那种「长得很具体」的话? 两个都是,就往下走。
第 1 步:让它自己交代来源
最省事的一步,很多时候到这里就结束了。
原话追问:
你刚才说的「第 47 条」,具体是哪部法律的第 47 条?条文原文是什么?如果你不确定,直接说不确定。
关键在最后一句。给它一个「不确定」的出口,它就更愿意承认。 不给的话它会继续编条文原文给你。
三种反应:
- 改口了(「抱歉,应该是第 39 条」或「我不确定具体条款编号」)→ 第一版是编的,现在的也未必对,往下走。
- 给出了原文 → 拿原文去搜。原文是可以精确搜索的,编号不能。
- 坚持原答案 → 不能说明对,往第 2 步。
这一步对 DeepSeek 和 Kimi K3 尤其有效,它们在被追问时改口的比例比较高;通义千问更倾向于坚持,所以它坚持的时候你也别太放心。
第 2 步:换一家问同一个问题
不是换一家问「上面这个答案对不对」,而是把原问题原样再问一遍。 前一种问法会让第二家顺着你给的答案说;后一种才是独立的第二意见。
我们在稳定性实验里发现:事实类问题,两家独立给出相同的具体答案,那个答案是对的概率非常高;两家给出不同的具体答案,至少有一家在编,多半两家都在编。
所以这一步的读法:
- 一致 → 基本可信,如果损失不大到此为止。
- 不一致 → 别投票,投票没意义(三家都编的情况我们见过)。往第 3 步。
在一个聚合平台里这一步是 10 秒钟;分开在各家官网也就两三分钟,别省。
第 3 步:让它反驳自己
这一步专门对付「坚持原答案」和「两家不一致」的情况:
假设「第 47 条」这个答案是错的。请你找出它可能错在哪里,以及正确答案可能是什么。
或者更直接:
请列出三个理由说明你刚才的答案可能不对。
模型在「反驳」模式下会调出跟「肯定」模式不一样的记忆。经常出现的情况是:它反驳的时候顺手说出了真正的条款编号,或者说出「该法律 2021 年修订后条款顺序有调整」这种关键线索——这种线索比答案本身更有用,它告诉你去哪查。
推理类模型(DeepSeek R1)在这一步表现最好,因为它的思考过程是展开的,你能看到它在哪里犹豫。R1 实战那篇讲过怎么读它的思考过程。
第 4 步:找原始出处
前三步都是「问 AI」,成本低但上限也低。真正的核实只有这一步:找到原始出处。
按类型:
- 法条:去法律法规数据库或官方公开的条文全文搜关键词,不搜编号搜内容。
- 数字、统计:找发布这个数字的机构原文。AI 说「某协会数据显示 62%」,去那个协会的官网找报告。找不到就当没有这个数字。
- 软件参数、API、函数:查官方文档,或者直接跑一遍。这类是最容易验证的——错了会直接报错。
- 「某某说过」:搜原话的关键词加上人名。搜不到就是编的,这类的编造率高到我们默认它是假的。
- 时效性信息:开联网让 AI 重新搜一遍,然后点进它给的链接自己看。联网那篇讲过联网结果也要看来源。
一个可以省时间的做法:让 AI 帮你生成搜索关键词,而不是让它直接给答案。「我要核实 XX 法关于试用期解除的条款,帮我列 3 组搜索关键词」——它给关键词的可靠度远高于给答案。
第 5 步:定级,决定用不用
查到什么程度算够,取决于你要拿它干什么。给自己定三档:
- A 级:找到了原始出处,内容一致 → 直接用,可以对外说。
- B 级:两家以上独立一致 + 反驳步骤没找出问题,但没找到原始出处 → 可以内部用、可以作为线索,对外说要标「待核实」。
- C 级:只有一家的说法,或者各家不一致 → 不能用。写进文件里就是埋雷。
对外发的文章、给客户的方案、合同里的条款——只用 A 级。自己的笔记、内部讨论、下一步去哪查的线索——B 级够用。
三个翻车案例
流程说完了,讲三次我们自己被骗的经历。每一次都是流程还没建起来的时候。
案例 1:一个不存在的条款编号
事情:写劳动仲裁那篇的初稿时,让 AI 给「用人单位单方解除的赔偿标准」的法律依据。它给了一个具体条款编号,还附了一段「条文原文」。
怎么被骗过去的:编号具体、原文通顺、和我们对这条规则的印象一致。三个「看起来对」叠在一起,没查。
怎么发现的:发稿前另一个同事顺手在法规库搜了条文原文,搜不到。再搜编号,那一条讲的是完全不相干的事。编号是编的,「原文」是模型按自己的理解写的。
补的办法:所有法条只写内容不写编号,除非编号是从法规库复制的。这条现在是我们的硬规定。
案例 2:一个不存在的软件参数
事情:让 AI 写一条命令行,处理一批文件。它给的命令里有一个参数,名字非常合理,功能描述也正是我们要的。
怎么被骗过去的:参数命名风格和这个工具的其他参数一模一样。用过这个工具的人会觉得「它应该有这个参数」。
怎么发现的:跑了,报错「未知参数」。这是所有幻觉里最幸运的一种——它自己会报错。
补的办法:代码和命令一律先跑再用,程序员那篇里说的「AI 写的代码默认当成有 bug 的代码来 review」就是从这次来的。
案例 3:一句「某某说过」的话
事情:写一篇文案,让 AI 找一句名人关于「效率」的话做开头。它给了一句,署名一位很有名的企业家,措辞漂亮,很像那个人会说的话。
怎么被骗过去的:这是最难防的一种——它编的话符合那个人的风格,你的直觉会说「对,他就是这么说话的」。
怎么发现的:文案发出去之后有读者留言问出处。搜了一圈,找不到任何原始来源。删了改了。
补的办法:「某某说过」这一类默认全是编的,除非搜到原始出处。找引言的正确做法是让 AI 给关键词,自己去搜真实的语录库。
三个案例的共同点:被骗的原因都是「看起来很像真的」,而不是「不够仔细」。 这就是为什么要靠流程而不是靠直觉——直觉恰恰是它骗过的东西。
把成本压下来:什么时候可以跳步
整套 5 步走完要 10~20 分钟,不可能每次都走。按损失大小决定走几步:
- 随口问问、自己知道就行:第 0 步分类完,不查。
- 写进自己的笔记:走到第 2 步,两家一致就记下来,标个「未核实」。
- 发给别人、写进方案:走到第 4 步,找原始出处。
- 对外发布、涉及钱和法律:走完 5 步,只用 A 级。
另外两个能整体降低出错率的习惯,在常犯的 12 个错误里也提过:
- 问题里先给材料。「根据下面这段条文,回答……」比「XX 法怎么规定的」编造率低一个量级,因为它在引用你给的东西而不是回忆。
- 明确要「不确定」。在问题末尾加一句「不确定的地方请直接说不确定,不要猜」,能砍掉相当一部分自信的编造。
最后
AI 不会因为你用得更熟练就不编了,这是它的工作方式决定的。能改变的是你的流程:先分类,知道哪些话是高危的;高危的按步骤查;查到的程度决定你怎么用它。
这套流程建起来之后,我们的体感是:AI 依然会编,但编的东西再也没有走到「发出去」那一步。对于一个每天要处理几十条 AI 回答的人来说,这就是能要求的全部了。
如果你想先测测自己对幻觉的敏感度,10 道自测题里有两道专门考这个。