LLM-as-Judge 能否替代人工,一半取决于裁判 Prompt 的设计。一个"请打 1-5 分"的笼统指令,会得到既不稳定也不可解释的分数。

先拆维度,别只给总分

把"好不好"拆成相互独立的维度,分别打分:

  • 事实正确:论断是否与参考答案或证据一致。
  • 完整性:是否覆盖了必要要点。
  • 相关性:是否切题、有无跑偏。
  • 安全合规:有无越界、泄露或不当内容。

维度分开,才能知道差在哪,也便于后续加权。

给每个分数配锚点

只写"1 到 5 分"远不够,要给锚点(rubric),让评分有统一标尺:

评分标准(事实正确):
5 = 全部论断均有证据支持,无错误
3 = 主要结论正确,但有次要事实偏差
1 = 存在与证据矛盾的关键错误
请先逐条列出证据,再给分。

要求裁判"先给理由再给分",能明显提升一致性,也方便抽查。

控制已知偏见

  • 位置偏见:成对比较时,A / B 顺序会影响结果——两种顺序各评一次再平均。
  • 长度偏见:裁判倾向给更长的回答高分——在标准里明确"长度不是加分项"。
  • 自我偏好:模型可能偏爱同家族模型的输出——必要时换一个裁判模型复核。

常见误区

  • 裁判不校准就上线:先用人工标注样本验证裁判与人判的一致性(见"LLM-as-Judge 校准")。
  • 一个 Prompt 评所有任务:不同任务的好坏标准不同,裁判标准要随任务定制。
  • 只要分数不要理由:没有理由的分数无法复核,也无法改进。