AI 事实核查的判定该交给哪个模型:2026 年 9 月的验证记录
原文更新于 · 中文译文
先说结论:不要只看准确率来选择
选择用于判定的模型时,不要只根据它在预先准备了正确答案的测试题上的准确率来决定,这样更稳妥。在 Rootpublish 的验证中,有些在合成数据上准确率达到 97% 以上的模型,对于在真实 AI 文章中发现的 4 处夸大自家服务的记载,一处也没有找出。记录中写着:“合成数据上的成绩并不能保证在真实文章上的表现。”
这次验证是一个小样本:6 个网站,每个网站最多 12 篇文章,人工确认也尚未完成。因此,请不要把这里介绍的结果当作“某个模型总是更好”的依据,而是把它当作思考选择模型时应该确认什么的材料。
验证确认了什么
这里所说的核对,并不是调查一般事实的真假,而是将公开页面拆分为段落,挑选包含公司名、服务名或“本公司”“我们”等词语的段落,再与公司概况、价格和服务页面的记载核对是否矛盾。每个网站的对象最多为最新的 12 篇文章。矛盾的判定使用了 Claude Opus,候选再由 Claude 阅读确认。人工确认只覆盖了一部分。
在模型比较中,我们让 5 个模型判定同样的 281 道题:其中 102 道是预先准备了正确答案的合成数据,179 道是根据公开页面制作的题目。我们没有告诉判定方哪些题目有正确答案。参与的模型是 Claude Opus 5.5、Sonnet 5、Haiku 4.5、Fable 5.1,以及通过 Codex 使用的 GPT。Gemini CLI 因认证设置不完整而没有参加。
在合成数据上,差距很小
在 102 条合成数据上,准确率分别是:Claude Opus 5.5 和 Fable 5.1 为 100%,Sonnet 5 为 99%,通过 Codex 使用的 GPT 为 97%,专用于判定的模型 Jev 为 97%,Haiku 4.5 为 88%。除 Haiku 4.5 之外,差距只有几个百分点。
5 个模型的多数表决在合成数据上的准确率为 99%,指出矛盾的精确率和召回率都是 100%。精确率是“被指出的内容中真正矛盾的比例”,召回率是“实际存在的矛盾中被指出的比例”。
根据公开页面制作的 179 道题没有预先准备的正确答案,因此我们比较了 Jev 的答案与多数表决的一致率。一致率为 86.6%。在多数表决出现分歧的 28 道题中,有 26 道只是在“一致”还是“未提及”之间看法不同。这说明,在文章的记载是与公司信息相符,还是根本没有谈到同一件事这条界线上,模型的判断容易出现分歧。
在真实文章上,差距显现出来
对于在真实 AI 文章中发现的 4 处夸大自家服务的记载,Jev 和 Sonnet 一处也没有找出,而 Opus 找出了。在合成数据上成绩接近的模型,在真实文章上的结果却明显不同。
发现的矛盾中,夸大自家服务范围或条件的记载多于单纯的数字错误。例如,把免费诊断提供的范围写得比实际更广;用另一个名称称呼某项服务;价格页面写的是“无最短合同期”,文章却写最短合同期为“3 个月”;自家客户案例中写的价格低于价格页面上最便宜的方案。这些与合成数据中“一句话清楚地表达一个主张”的题目,性质不同。
在 6 个网站的审核中,有 3 个网站发现了与公司信息的矛盾。在一个用 AI 批量生产文章的企业博客中,12 篇文章里有 4 处(其中 1 处存在不同解读);在一家发布 AI 相关专栏的企业中,12 篇文章里有 2 处。在一个由人工撰写的个人博客,以及两家把文末的公司介绍做成固定模板的企业中,没有发现明确的矛盾。
在 Rootpublish 自家网站上,322 个段落中发现了 2 处。WordPress 版页面的标题——日文的「自動運営」和英文的“On autopilot”——被判定与“发布前必须经过人工批准”的产品规格相矛盾,因此我们将标题改为日文「一次情報で育てる」和英文“Grown from what you know”并发布。发布后对同一页面的 129 个段落重新审核,没有发现矛盾。
专用于判定的模型 Jev 的长处与短处
Jev 是一种专用于判定的模型,会返回每个选项的概率。在一句话只有一个主张的合成数据上,它把包含数字不一致、单位的不同表述、提及过去的价格以及双重否定的 63 组全部判定正确。可以说,它擅长比较简短、明确的主张。
另一方面,当对公司信息的所有组合进行核对时,在“批准”这类用词重叠的公司信息之间出现了错误的检出。精确率在逐一询问的方式下为 0.91,在一次询问全部的方式下为 0.82。在 12 篇真实的 AI 文章中,它列为候选的 22 组全部错误,而 4 处夸大自家服务的记载并不在候选之中。在这次验证中,它的倾向是容易对重叠的用词作出反应,而难以找出在上下文中扩大范围或条件的记载。
指令中的一句话改变了答案
影响结果的不只是模型的性能,还有判定指令的写法。Sonnet 5 判定了从真实 AI 文章中挑选的 114 个段落,没有指出任何矛盾。它其实考虑过那个用另一个名称称呼服务的段落,但以指令中的一句话“即使是同一个词,如果指向的对象不同,就不判断其关系”为理由,把它排除在矛盾之外。在同样的指令下,Opus 将其判定为矛盾。
这个例子说明,当某个模型漏掉问题时,需要区分原因是在模型还是在指令,并加以确认。为减少误判而加入的一句话,有时会把想要找出的矛盾也一并排除。
用低成本模型筛选的设计为何会漏掉问题
作为降低成本的方法,我们还验证了一种两段式设计:先用专用于判定的模型 Jev 只挑出概率在 0.3 以上的候选,再用多数表决加以确认。在合成数据上,精确率和召回率都是 100%;在公开页面上,需要确认的组合减少到 875 组中的 9 组(约 1%)。
然而在真实的 AI 文章上,这种设计仍然出现了遗漏。由于第一段的 Jev 没有把夸大自家服务的记载列为候选,无论第二段的模型多么准确,都没有机会进行判定。在两段式设计中,第一段漏掉的矛盾,之后无法再找回来。
因此,Rootpublish 改为用词语条件挑选描述自家公司的段落,再交给 Opus 判定的方式。也就是把缩小候选范围的任务,从模型的判断交给了词语条件。
成本估算
用 Jev 对 12 篇文章、共 1,212 个段落进行全量核对,按公开价格计算约为 0.25 美元。但是,这种方法没有找出实际存在的矛盾。
只挑选描述自家公司的段落(约占全部的一成)再交给 Opus 判定的方式,估算每篇文章约 0.05 美元。这只是估算,我们没有计量推理所用的 token 数。实际成本会因所用模型的计费方式和被挑选的段落数量而变化。
本次验证的局限
本次审核是一个小样本:6 个网站,每个网站最多 12 篇文章。许多判定只经过了 Opus 的判定和 Claude 的确认,人工确认尚未完成。另外请注意,真实文章上的比较结果并不是与经人工确定的正确答案进行的比较。
挑选段落的词语条件也有弱点。如果文章与公司信息对产品的称呼不同,描述自家公司的段落就可能被漏掉。此外,即使发现了矛盾,如果作为基准的公司信息本身更旧,需要修改的也是基准页面,而不是文章。
用自家文章选择判定模型的步骤
以下是根据上述验证记录提出的编辑建议,这些步骤本身并未经过验证。
- 准备核对的基础。确定用于核对的基准页面,例如公司概况、价格和服务,并先确认内容是最新的。如果基准页面已经过时,正确的文章也可能被判定为错误。
- 确定挑选判定段落的条件。以包含公司名、服务名或“本公司”“我们”等词语的段落为对象,并把文章中常用的其他称呼也加入条件。
- 用自家已知的矛盾来测试。不要依据公开的基准测试或合成数据的成绩,而是准备几处在自家文章中实际发现的范围或条件的夸大记载,确认候选模型能否找出它们。
- 检查指令的措辞。如果出现遗漏,阅读模型的推理过程,确认排除的理由是否来自指令中的某一句话。
- 如果设置筛选候选的环节,要确认是否有遗漏。用低成本模型筛选时,一定要确认第 3 步准备的矛盾仍保留在第一段的候选中。
- 按判定的段落数量估算成本。核对全部段落,还是只核对描述自家公司的段落,成本和容易遗漏的问题都会不同。
- 把检出结果当作由人确认的候选。不要直接根据判定模型的输出改写文章,而是由人阅读正文和出处后作出判断。在 Rootpublish 的设计中,生成的结果也会以等待批准的状态保存,由拥有发布权限的人确认正文和出处后决定是否发布。
这些确认是为了保持记载的准确,并不承诺改善搜索排名或增加来自 AI 的引用。