跳到主要内容

LLM 作为验证器的反模式:为什么你的 AI 质量门禁存在盲点

· 阅读需 10 分钟
Tian Pan
Software Engineer

你的 AI 功能上线时带有一个质量门禁:每个回复都会经过一个 GPT-4 提示词,根据帮助性、准确性和语气进行评分。绿色分值不会触发报警。仪表盘显示通过率为 97%。与此同时,你的支持工单翻了一倍。

问题出在结构上。你使用了与生成输出相同类型的系统来验证这些输出。当生成器产生一个听起来很合理的虚假事实(幻觉)时,基于相同互联网文本分布训练的评判模型会认为这个幻觉是可信的并予以通过。两个模型共享相同的盲点。你的质量门禁衡量的是置信度,而非正确性。

这就是 LLM 作为验证者(LLM-as-validator)反模式:将 LLM 部署为另一个 LLM 输出的主要质量门禁,而缺乏确定性检查、统计测试或人工审查的补充层。这种做法很常见,构建容易,但具有系统性的误导性。

为什么循环验证会无声无息地失效

这种失效模式非常隐蔽,因为它仅在共享的错误类别上触发。对于生成器能很好处理的问题,评判模型也能很好处理——系统看起来很可靠。而对于系统性故障,生成器和评判模型往往都认为输出没问题。结果是,质量指标准确地衡量了一个模型相对于另一个模型先验知识的校准程度,而对基准真相(ground truth)却毫无用处。

已证实的偏见加剧了这一问题。对 LLM 评判模型的研究显示了连贯的模式:自我提升偏差(GPT-4 在两两比较中给自己的输出评分高出约 10%;Claude-v1 显示了约 25% 的自我偏好)、位置偏差(两两评估倾向于先展示的输出)以及冗长偏差(无论质量如何,较长的回复得分更高)。当你使用与生成器同系列的评判模型时,仅自我提升偏差就会污染信号。

温度(Temperature)参数让情况变得更糟。运行温度大于 0 的评判模型在不同运行中会对相同的输出给出不同的分数。让同一个模型对同一个回复评分三次,你可能会得到三个不同的分数。该指标不仅存在偏差,而且是非确定性的,这意味着它无法用于回归测试。

更深层的问题是标准漂移。用户和产品团队会根据观察到的输出不断完善对质量的预期。如果你的主要质量信号来自一个与生成器自身偏好一致的 LLM 评判模型,标准会逐渐向模型的故障模式倾斜,而不是强制执行实际需求。你并不是在提高质量,而是在校准接受度以匹配模型能力。

生产环境中什么会最先崩溃

无声故障是主要的生产风险。LLM 故障不会抛出异常。延迟和错误率监控保持绿色,而输出却变得错误。2025 年的一项行业调查发现,51% 在生产中使用 AI 的组织至少经历过一次因 AI 不准确导致的负面后果。在未经验证的部署中,现实生产环境的幻觉率仍高达 27%。如果你的唯一质量层是 LLM 评判模型,无声故障在设计上就是不可见的。

第二种失效模式是评判模型的不稳定性。当你更换评判模型提示词或升级评判模型时,即使产品模型没有变化,你的质量指标也会发生偏移。你无法区分是真正的能力退化还是测量伪影。你的历史趋势数据变得无法解释。

第三点:细粒度评分比二元评分更脆弱。从通过/失败(Pass/Fail)转向 1-5 分的量表,会极大地增加 LLM 评判模型的随意波动。量表越精细,信号越少,噪音越多。

分层评估策略

解决办法不是取消 LLM 评判模型——它们在规则无法编码的主观质量维度上确实有用。解决办法是将 LLM 评判模型视为评估栈中的一层,而不是唯一的关卡。

第一层:确定性检查

确定性评估器的运行时间以微秒计,成本几乎为零,并且对相同的输入产生相同的结果。它们应该放在每个评估流水线的最前端。它们适用于任何可以表达为明确规则的标准:

  • Schema 验证:必需字段是否存在、类型是否正确、无多余键。
  • 格式门禁:回复长度在范围内,所需的结构(列表点、标题、JSON)存在。
  • 政策检查:必需的免责声明存在,禁止术语不存在。
  • 工具契约验证:工具调用参数有效,返回值符合预期类型。
加载中…
References:Let's stay in touch and Follow me for more thoughts and updates