跳到主要内容

Rubric 与 LLM-as-a-Judge

为什么验证方式要沿可机械验证程度向右移动?​

  • 谱系: 横轴是任务的可机械验证程度,从左侧确定性验证到右侧模型评判;
  • 左侧现状: SWE-bench 运行测试套件、AndroidWorld 断言最终 UI 状态、GAIA 精确字符串匹配、τ²-bench 四层检查,全部由代码执行;
  • 左侧优势: 不引入额外模型开销、结果完全可复现、可像单元测试一样纳入持续集成、便于在不同模型之间排名;
  • 左侧局限: 只能评估最终结果对不对,不能给出错误原因——0 分不说明 Agent 是在线路选择环节出错,还是漏掉了流量充值步骤;
  • 右侧需求: 许多判断根本无法写成代码可检查的断言——投诉回复是否得体、调研报告是否遗漏关键信息、记忆检索是否弄错了人物关系;
  • 原则: 向右移动不等于放弃左侧,凡是能写成程序化断言的检查都应继续用断言,LLM 评判只用于确实无法机械判定的维度;

LLM-as-a-Judge 的定位与已知局限是什么?​

  • 定位: 让语言模型根据专家定义的评分标准(Rubric)进行评判,在自动化规模与人类专业判断之间取得平衡;
  • 适用: 开放式任务,如生成报告、处理客户投诉、创意内容——没有标准答案可自动对比,人工评估成本高且难以规模化;
  • 局限一: 评判模型可能有自己的偏见;
  • 局限二: 相同输入多次评判也可能有波动;
  • 典型偏差 长度偏差: 倾向于给更长、更详尽的回复打高分,哪怕内容并不更正确;

如何防范长度偏差?​

  • 手段一: 在 Rubric 里显式惩罚冗长,对同类任务规定回答的长度上限;
  • 手段二: 做配对比较时先把两个候选的长度控制到相近再评;
  • 手段三: 定期审计评分与回答长度的相关性,若高分几乎总是伴随长回答,说明评判已被长度带偏,需要回炉修订 Rubric;

Rubric 设计必须遵循哪四条准则?​

  • 准则一 基于专家指导: 必须反映领域知识,捕捉核心事实和推理步骤;医疗问答的 Rubric 需包含诊断标准与必须避免的医学错误,缺乏专业基础只能捕捉语言流畅度等表面特征;
  • 准则二 全面覆盖: 涵盖事实准确性、逻辑连贯性、完整性、安全性,并明确陷阱(Pitfall),即高风险的常见错误,如医疗建议中推荐未经验证的疗法;
  • 准则三 按重要性加权: 分为必要项(Essential)、重要项、可选项、陷阱项,支持一票否决机制(Veto)——客服场景中幻觉是典型的否决维度,无论其他维度多优秀,只要出现虚假信息就必须否决;
  • 准则四 评价标准自包含: 每个评价项独立可操作,不依赖评价者的领域知识;避免 “回应展示了深刻理解”,改为 “引用了至少两个权威理论并准确解释如何支持结论” 这类可验证标准;

一个可执行 Rubric 还要补充哪些实践?​

  • 评分档次: 为每个维度定义客观可验证的评分档次,提供具体示例与边界案例以区分模糊情况;
  • 奖励作弊(Reward Hacking): Agent 找到获取高分的 “捷径” 却没有真正完成任务,需明确惩罚幻觉、讨好用户、关键词堆砌、回避棘手问题;
  • 迭代: 通过试用收集评价者的分歧并逐步完善,最终从抽象准则演化为详尽的判例集;
  • 结构示例(用户记忆问答 “我女儿的儿科医生是谁?”,答案需跨两次对话关联):
rubric:
dimensions:
- name: 事实正确性
weight: essential
scoring:
{
4: "准确回答 Dr. Chen,且关联到女儿 Lily",
3: "准确回答但未提及关联",
1: "错误医生或回答不知道",
}
- name: 信息完整性
weight: important
scoring: { 4: "主动补充上次就诊时间等关联信息", 1: "关键信息缺失" }
- name: 思考正确性
weight: important
scoring: { 4: "正确关联'女儿=Lily'与'Lily的医生=Dr. Chen'", 1: "错误关联" }
- name: 幻觉检测
weight: veto
scoring: { pass: "所有信息均可溯源到历史对话记录", fail: "编造了对话中不存在的信息" }
edge_cases: ["多个女儿分别看不同医生时应追问", "'Dr. Chen' 与 '陈医生' 应识别为同一人"]
  • 判读流程: 把 Rubric 与实际回答一起交给评判模型逐项打分并说明理由,汇总几十个用例的结果后,笼统的 “成功率下降” 可拆成几类具体问题——没检索到信息、把人物关系想错、补充了没有依据的内容;
  • 诊断价值: Rubric 不只回答 “得了多少分”,还提示下一步该改哪里;

三套记忆方案的对照实验得出什么结论?​

  • 设置: 同一组 60 个问题、三种配置、共 180 条真实 API 运行轨迹;
  • 总体成功率: Advanced JSON Cards 68.3%(41/60)、混合系统 66.7%(40/60)、RAG 48.3%(29/60);
  • 分层表现: 基础回忆 95%/80%/90%、多会话消歧 60%/70%/40%、跨会话隐藏关联 50%/50%/15%(顺序同上次);
  • 结论一: 混合方案并没有自然胜出——它在 3 道题上做到两种单一方案都没做到的事,却在另外 8 道题上不如表现更好的单一方案;
  • 结论二: 纯 RAG 在基础回忆题上与结构化卡片相差不大,一到跨会话关联题成功率降到 15%;
  • 结论三: 180 次评判中幻觉否决触发 28 次,可见一票否决项的重要性;
  • 相关: 评判者自身的偏差见 评判偏差与多模态评判;