模型判分:让另一个模型当裁判
实测 12/12 的理解力,和它 5/6 的长度偏好
规则判分卡在 58%,因为它不懂"一周之内"等于"7 天"。解法很自然:让另一个模型当裁判。
实测它的理解力:12/12,满分——规则判错的 5 条它全判对了。
但请先看第二个实验:同样两份答案,内容信息量完全相同,只是一份写得啰嗦——裁判在 6 轮里有 5 轮选了长的。
你的裁判有偏好。不知道这一点,你会优化出一堆又长又啰嗦的答案。
请老师阅卷比标准答案卡灵活得多。但老师也是人:字迹工整的、写得长的、卷面干净的,容易多给两分。
好的考务制度不会因此不用老师,而是设计流程去抵消这些偏好:密封姓名、双人阅卷、交换复核。模型判分要做的是同一件事。
实验一:理解力(12/12)
给裁判"问题 + 标准答案要点 + 候选答案",让它判对错:
人工=True 规则=False 模型=True 「一周之内都可以退。」
人工=True 规则=False 模型=True 「会员一年不到两百块。」
人工=True 规则=False 模型=True 「订单满五十九元即可免运。」
人工=False 规则=True 模型=False 「24 小时内响应即可。」 ← 规则误命中,裁判没上当
规则评分准确率:7/12 (58%)
模型判分准确率:12/12 (100%)
裁判的价值就在这四条:语义等价它认,子串误命中它不上当。
判分提示词的关键设计:
判断候选答案是否正确表达了标准答案的要点
(表述方式不同没关系,数字可以用中文写法)。
只输出 JSON:{"correct": true/false, "reason": "一句话"}
三个要点:给标准答案(别让它凭自己知识判)、明确"表述不同没关系"(否则它会变得像规则一样严)、要求结构化输出(便于自动统计,AP3 的老规矩)。
实验二:位置偏差(本次 4/4 一致)
经典风险:把同样两份答案调换 A/B 位置,裁判会不会改主意?
✅一致 「退货几天内?」 正序赢家=A 反序赢家=B
✅一致 「会员费多少?」 正序赢家=A 反序赢家=B
✅一致 「市区免运门槛?」 正序赢家=A 反序赢家=B
✅一致 「投诉响应时限?」 正序赢家=A 反序赢家=B
判定一致率:4/4
这次表现很好——但别因此省掉这个检查:位置偏差在候选答案质量接近时最明显(本次两份答案差异明显,裁判容易分辨)。规矩:重要的 A/B 评测,永远做双向换位取平均。
实验三:长度偏差(5/6,警报)
这次给两份信息量完全相同的答案,只是一份啰嗦:
- 简版:
7 天内。 - 长版:
关于您咨询的退货时限问题,根据我们现行的退换货政策规定,自您签收商品之日起计算,在 7 个自然日之内,您都可以申请无理由退货,我们会为您妥善处理。
长版获胜 2/2 轮 「退货几天内?」
长版获胜 1/2 轮 「会员费多少?」
长版获胜 2/2 轮 「市区免运门槛?」
长版总获胜:5/6 轮 —— 明显偏高说明存在长度偏差
这是个真问题。如果你用模型判分做 A/B 优化,而裁判偏爱长答案,你会一路"优化"出又长又贵、用户还嫌啰嗦的产品。(注意:长答案的 token 成本也更高——偏差直接烧钱。)
四条压制偏差的规矩
- 双向换位取平均:每对比较跑两次(A/B 和 B/A),两次一致才算数,不一致标记为"打平";
- 判分标准写死在提示词里:与其让它"判断哪个更好"(主观),不如给明确的评分维度("是否包含关键事实""是否有多余内容""是否带引用")——评分维度越具体,偏差越小;
- 显式反制已知偏差:在判分提示词里加一句"简洁不是缺点,冗长不加分;只看信息是否准确完整";
- 定期用人工标注校准裁判:留一批人工标注的样本,定期测你的裁判准不准(本节实验一就是在做这件事)——裁判也要被评测。
成本与选型
| 做法 | 成本 | 适用 |
|---|---|---|
| 规则判分 | 免费 | 主力,每次提交全量跑 |
| 同款模型判分 | 一次调用 | 日常评测,规则判不了的部分 |
| 更强模型判分 | 更贵 | 关键评测、上线前把关 |
| 多裁判投票 | N 倍 | 高风险决策(如内容安全) |
一条实用原则:判分模型最好比被测模型强或至少同级——用弱模型判强模型的答案,等于让实习生给专家打分。
🔧 动手做:给你的裁判做一次体检(15 分钟)
- 跑本节代码,看三组实验结果。
- 测你的裁判准不准:拿 12-20 条你人工标注过的样本,跑一遍模型判分,算准确率——低于 90% 就别用它做决策。
- 测长度偏差:造 3 对"信息相同但一长一短"的答案,跑双向比较——你的裁判偏长吗?
- 加反制语句:在判分提示词里加上"简洁不是缺点,冗长不加分",重测长度偏差——降了多少?
- 把双向换位逻辑写进你的评测脚本(以后所有 A/B 都走它)。
✅ 做到这里你应该有:裁判的准确率数字、长度偏差测量、一个带双向换位的评测函数。
为什么:模型判分是评测体系的扩展器——它让"没法用代码判"的东西(语义、质量、语气)也能被量化。但它自己就是个 AI,同样会犯错、有偏好。把它当同事而不是仪器:用之前先考核,用的时候有制度约束。
一个隐蔽的坑:用同一个模型既生成答案又判分。研究和实践都发现模型存在自我偏好(更认可自己风格的输出)。三条防御:① 换一个模型当裁判(不同厂商更好);② 判分时不告诉它答案是谁生成的(本节实验二三就是匿名比较);③ 关键结论用人工抽检复核。本课实验用同款模型是为了教学简便,你的生产评测应该尽量换个裁判。
我要用模型判分评测【什么任务】的答案质量。请帮我写判分提示词:1) 给出 3-5 个具体的评分维度(而不是笼统的「哪个更好」);2) 每个维度的判定标准要可操作;3) 加入反制长度偏差、位置偏差的表述;4) 输出结构化 JSON(含各维度得分和总判定);5) 再给我一套「校准样本」的设计建议,用来定期检验裁判本身的准确率。
模型判分三句话:理解力强(12/12)、有长度偏差(5/6)、用前先考核用时有制度;四条规矩:双向换位、评分维度写死、显式反制、人工校准。
下一节挑战全课最难量化的指标:幻觉率——它没有标准答案可比,但 ap4.6 的引用机制给了我们一把尺子。
🔎 来源与核验· 2 条,点开核对
