📑 本页目录(点开跳转)
11 · 评测体系:Benchmark 的真相
⏱ 32 分钟 | ⭐ 一半的内容站内已经讲透,这一章补另一半
🎯 一句话
榜单分数远不如你想象的可信。这一章讲的是:通用 benchmark 怎么回事、为什么会骗人、以及你该怎么判断一个模型好不好。
🗺️ Benchmark 的四种类型
| 类型 | 代表 | 测什么 | 局限 |
|---|---|---|---|
| 知识问答 | MMLU、GPQA | 多选题,学科知识 | 容易被污染、和实际能力脱节 |
| 真实任务 | SWE-bench(修真实 GitHub issue) | 端到端完成任务 | ⭐ 最接近现实,但贵且慢 |
| 人类偏好 | LMArena(两两盲测投票 Elo) | 人更喜欢谁 | 受"话痨/排版好看"影响,有讨好偏差 |
| 专项能力 | 数学、代码、长上下文、多语言 | 单点能力 | 只反映局部 |
⚠️ 这张表缺了整整一类:Agent 基准。 上面四类测的都是「模型答得对不对」, 而现在真正影响选型的问题往往是「它能不能在一个有工具、有状态、会多轮的环境里把事办完」——这两件事分数不相关。 🔗 《智能体工程教程》14 · 评测 Evals 有一张五个基准的速查表: SWE-bench(真实 GitHub issue,⭐ 看到这三个字先问是哪一版,Verified 是人工核验过的 500 题子集,分数不可直接比)、 τ-bench(客服场景,用户由另一个模型扮演)、GAIA(多工具协作,答案是唯一短字符串)、 WebArena(自建可复现网站里的浏览器任务)、OSWorld(真实操作系统里的跨应用桌面任务)。 ⭐ 去那里的真正理由不是记住这五个名字,是抄它们的判分手法——分数会过期,手法不会: τ-bench 的
pass^k(k 次全对才算过,面向客户的 Agent 必须看它)、 WebArena / OSWorld 的状态校验(不看 Agent 说了什么,只看世界被改成了什么样——「评产出不评路径」最干净的实现)、 GAIA 的唯一短答案(把开放问题改造成能精确匹配的形式,代码评分器就能接管)。 这三招你都能直接搬进本章后面要建的那个私有评测集。
🕳️ 五个必须知道的陷阱
① 数据污染(最严重)⭐
评测题目 → 出现在互联网上 → 被爬进训练数据
→ 模型"背过"答案 → 分数虚高
→ 这就是为什么 新发布的、私有的评测集 才有说服力
→ 也是为什么各家要专门做"去污染"工序(第 4 章)
② 饱和
MMLU 从 30% 涨到 90%+ 之后,就失去区分度了
→ 剩下的题要么太难要么标注有误
→ 差 1 分毫无意义
🔗 智能体教程第 14 章讲过:饱和的评测应该"毕业"进回归套件。
③ 过拟合榜单
针对 benchmark 优化(刷榜),但泛化到真实任务不行。「为考试而学」。
④ 测量噪声
🔗 智能体教程第 14 章的数据:光是基础设施配置差异,就能造成 6 个百分点的分差——常常大于模型之间的真实差距。
实用结论:对 3 个百分点以内、未说明测试条件的差距保持怀疑。
⑤ 报告条件不对等(最不容易察觉)⭐
同一个 benchmark,测出来的分数可以差很多:
· 提示词不同 (有的用了精心调过的 few-shot)
· 采样温度不同 (T=0 vs T=1)
· 跑几次取最好 (pass@8 报成 pass@1)⭐
· 有没有用工具/联网
· 输出解析的宽松程度("答案是 B" 算不算对)
⚠️ 各家发布分数时,往往【给自己用最优配置,给对手用默认配置】
🔑 看到任何模型对比图,先找这三行小字: ① 用的什么提示词 ② 跑了几次怎么取 ③ 温度是多少。 找不到 → 这张图只能当广告看。
🧮 一个能自己算的例子:为什么 3 分不算差距
评测集 100 题,模型 A 答对 82 题,模型 B 答对 79 题
Q:A 真的比 B 强吗?
二项分布的标准误:√(p(1−p)/n) = √(0.8×0.2/100) ≈ 4.0%
→ 95% 置信区间约 ±7.8%
⭐ 82% 和 79% 的置信区间【大幅重叠】
→ 这个差距在统计上【毫无意义】
💡 推论:100 题的评测集,只能分辨 8 个百分点以上的差距。 想分辨 3 个点,你需要约 700 题——
🔗 这和推荐算法第 12 章算 A/B 实验样本量是同一套数学。
🔗 这一章连到哪里
| 去哪 | 为什么 |
|---|---|
| 数据这一关 13 · 评测集也是数据 | 这四处讲的是各自场景怎么评测;评测集本身怎么造、多大够、有没有被污染、评分器准不准、结果该怎么报 在那一章 ⭐ |
| 智能体工程 14 · 评测 Evals ⭐ | 本章测的是「模型答得对不对」,那一章测的是「Agent 能不能把事办完」——完全不同的一类基准(τ-bench / GAIA / WebArena / OSWorld),以及三类评分器、pass@k vs pass^k、评委校准的完整方法论。本章第 ②④ 个陷阱(饱和、6 个点的基础设施噪声)的原始出处就在那里(⚠️ 第 ③ 个陷阱「刷榜过拟合」那一章没讲,它讲的是反过来的一面:基准被模型追上了就该换题) |
✅ 那该怎么正确判断一个模型
❌ 错误做法:看榜单排名,选第一名
✅ 正确做法:
① 用 benchmark 做**粗筛**(排除明显不行的)
② 拿你自己的 20–50 个真实任务做**私有评测** ⭐ 这才是决定性的
③ 关注和你场景匹配的专项(做代码就看代码,做中文就看中文)
④ 实测成本和延迟(分数不代表能用)
⑤ 小流量 A/B(如果已有系统)
🔑 一句话:别人的榜单回答"谁通用能力强",你的私有评测回答"谁适合我"。后者才是你要的。
🔨 私有评测集:一个下午就能建好
① 翻线上日志 / 用户反馈,捞出【真实失败的 20-50 个案例】⭐
不要自己编题——编的题总是太规整,测不出真实问题
② 每条记下:输入、期望的输出特征、为什么当时错了
③ 分维度打标签(按你的业务分:意图理解 / 格式 / 事实准确 / 语气…)
④ 定评分方式:
· 能写代码判的 → 代码评分器(最可靠,优先)
· 判不了但有标准 → LLM-as-Judge(要校准)
· 主观的 → 人工抽样
⭐ 20-50 条就够开始了。别等"建完整套"才开始用
⚠️ 三个建评测集时的常见错误:
| 错误 | 后果 |
|---|---|
| 只放难题 | 分数全是 20% 上下,没有区分度 |
| 只放当前模型答错的 | 换个模型后这套题失去代表性 |
| 不分维度只看总分 | 总分持平,但其实"格式变好了、事实变差了"——你看不见 ⭐ |
🧪 这一章有一半站内已经讲透
⭐ 最实用的那一半不在这里,在 《智能体工程教程》第 14 章—— 它讲的是「怎么给自己的系统造一套评测」,本章讲的是「怎么看懂别人的榜单」。两边这样对应:
| 那一章讲的 | 在这里的对应 |
|---|---|
| 从真实失败取 20–50 个任务 | 私有评测集的建法 |
| 三类评分器(代码/模型/人工) | 完全通用 |
| 评产出不评路径 | 同样适用 |
| pass@k vs pass^k | 一致性度量 |
| 读转录、校准评委 | 同样必做 |
| 基础设施噪声、饱和 | 就是本章的陷阱 ④(测量噪声)和 ②(饱和) |
| 分维度看,别只看总分 | 同样适用 |
💡 所以读完那一章再读这一章,本章几乎不是新知识——而是「把同一套方法论换到模型选型这个场景上」。 反过来,先读到这里的人,动手做评测时请一定去那一章:本章给的是常识和陷阱,那一章给的是可执行的八步。
📦 深挖的话要学什么
📍 每条后面标了它在哪: 📗 本库有 = 站内已经讲透,点进去就行;📙 半有 = 站内讲了一半,另一半得外找; 📕 要外找 = 站内没有,得去论文或别处。 (这份清单以前只列词不说去哪,指到的坑有些站内根本没挖过,按图索骥会扑空。) ⭐ 这一章的深挖清单是全站"本库有"命中率最高的几张之一——评测这件事同时被四个板块从不同角度讲过。
- 主流 benchmark 的设计与局限:MMLU/GPQA/SWE-bench/AIME/LiveBench 各自测什么、怎么被攻破 → 📙 半有:智能体工程 14 · 评测Evals 的「公开基准都在测什么(以及测不到什么)」把 SWE-bench、SWE-bench Verified(人工核验的 500 题子集)、τ-bench 的构造方式和各自的盲区摊开讲了,⚠️ 还给了一条能直接用的纪律:看到「SWE-bench」三个字先问是哪一版——不同版本的分数不可直接比。MMLU / GPQA / AIME 这几个纯知识类基准的构造细节站内没有,要外找
- 污染检测:n-gram 重叠、canary string、私有 holdout 集 → 📗 本库有,而且比本章细得多:数据这一关 13 · 评测集也是数据 给了四种查法(去重 / n-gram 重叠 / 改写测试 / 新鲜题对照)和 n 该取多少的实跑精确率-召回率表;⭐ 最有用的一条是查污染不能看总分要看分组差——2% 污染率下总分只虚高 0.6pp(看不见),但"见过组 vs 没见过组"的差已经稳定在 27 个百分点。本章说「数据污染是最严重的陷阱」,那一章是把它变成可执行体检的地方。 ⚠️ 只有 canary string 站内没有
- 动态评测:LiveBench 类(题目持续更新,防污染) → 📙 半有:「什么时候该换评测集」在 数据这一关 13 有专门一节,智能体工程 14 的第 7 步「监控饱和」和第 8 步「长期维护」讲的是同一件事的工程侧。但 LiveBench 这类"公开榜单持续换题"的具体机制站内没有,要外找
- 人类偏好评测:Elo/Bradley-Terry 模型、标注一致性、讨好偏差校正
→ 📗 本库有:Bradley–Terry 在 强化学习基础 12 · RLHF全流程(
L = −log σ(r(win) − r(lose)),只关心分数的差,所以打出来的分没有绝对含义——这正是它能被用来排名的原因);标注一致性在 数据这一关 10 · 标注一致性怎么量;讨好/长度偏差这一侧,RL 12 里点了 ⚠️ 标注者倾向选长的 → 模型变啰嗦,人类一致率仅 70~80% 就是精度天花板 - LLM-as-Judge:偏差(位置偏差、长度偏差、自我偏好)与校准方法 → 📙 半有:智能体工程 14 的「三类评分器」把模型评分器必须对照人类专家校准立成了规矩,数据这一关 13 有「评分器也要校准」一节。但位置偏差 / 长度偏差 / 自我偏好这三种偏差各自的表现和纠正手段,站内没有专门讲,要外找
- 统计:置信区间、多次运行的方差、显著性判断 → 📗 本库有:数据这一关 13 的「多大才够:把置信区间算出来」直接回答本章「为什么 3 分不算差距」;模型上线之后 12 · AB实验你以为你懂了 给了样本量、偷看(peeking)、多重比较这三个最常见的翻车点;测量噪声那一侧还有 Claude博客 · 智能体评测-03 基础设施噪声
- 领域评测集构建:怎么为你的业务造一套有区分度的题 → 📗 本库有,这是本章最该点开的一条:智能体工程 14 的八步(⭐ 最贵也最容易跳过的是第 2 步写无歧义任务+参考解、第 3 步正反平衡——只测正例会让系统学成"什么都做"、第 6 步读转录);抽样和"多大才够"配 数据这一关 13。本章的「私有评测集:一个下午就能建好」是入门版,那八步是能撑住长期维护的版本
需要的前置:不多——智能体工程 14 的评测方法论,加一点 A/B 实验的统计常识(推荐算法 12 那一章就够)。这两块站内都是现成的。
⚖️ 要不要深挖
| 你的情况 | 建议 |
|---|---|
| 做应用、要选模型 | 🟡 本章 + 智能体工程第 14 章已经够用 |
| 要为团队建评测体系 | ✅ 值得,但重点是「造私有评测集」不是研究公开榜单 |
| 做模型研发 | ✅ 必须 |
| 写技术选型报告 / 做技术决策 | ✅ 至少要懂五个陷阱,否则容易被榜单误导 |
🔑 我的判断:这块不值得单独成套—— 最核心的方法论已经完整地在智能体工程第 14 章里了,本章补的只是「通用 benchmark 的常识和陷阱」。
✅ 深挖直接去《智能体工程教程》第 14 章, 那里有三类评分器、pass@k vs pass^k、评委校准的完整方法论; 挑战项目 B 会让你亲手建一套。
✅ 检查点
- 四类 benchmark 各有什么局限?
- 什么是数据污染?为什么私有评测集才有说服力?
- 「报告条件不对等」是什么意思?看模型对比图时先找哪三行小字?
- 100 题的评测集能分辨多大的差距?想分辨 3 个点需要多少题?
- 看到「A 模型比 B 高 2 分」该怎么想?
- 建私有评测集该从哪里取题?为什么不能自己编?
- 建评测集的三个常见错误是什么?
- 正确的模型选型流程是什么?
- LMArena 这类人类偏好评测有什么偏差?
👀 答案
- 知识问答易污染且脱离实际;真实任务最接近现实但贵慢;人类偏好受话痨和排版影响;专项能力只反映局部。
- 评测题目出现在互联网上被爬进训练数据,模型等于背过答案。私有/新发布的题没进过训练数据,才能反映真实能力。
- 各家发布分数时往往给自己用最优配置、给对手用默认配置(提示词、温度、跑几次取最好、有没有用工具、解析宽松程度)。先找三行小字:①用的什么提示词 ②跑了几次怎么取 ③温度是多少。找不到就只能当广告看。
- 100 题时二项标准误约 4%,95% 置信区间约 ±7.8% → 只能分辨 8 个百分点以上的差距。想分辨 3 个点需要约 700 题。
- 保持怀疑——基础设施噪声就能造成 6 个百分点差距,100 题的评测集本身也分辨不了 2 分。要看测试条件是否说明、是否多次运行、置信区间多大。
- 从线上日志和用户反馈里捞真实失败案例。不能自己编,因为编的题总是太规整,测不出真实问题。20-50 条就够开始。
- ①只放难题(分数全在 20% 上下,没区分度)②只放当前模型答错的(换模型后失去代表性)③不分维度只看总分(总分持平但其实格式变好、事实变差,你看不见)。
- benchmark 粗筛 → 自己的 20-50 个真实任务做私有评测(决定性)→ 看匹配场景的专项 → 实测成本延迟 → 小流量 A/B。
- 讨好偏差:回答话多、排版好看、语气讨喜的更容易赢,不一定更正确。还有位置偏差等。
🛑 可以停在这里
⚡ 走神救援
榜单不可信。四类:知识问答(MMLU,易污染)/真实任务(SWE-bench,最接近现实)/人类偏好(LMArena,有讨好偏差)/专项。五陷阱:数据污染、饱和、刷榜过拟合、测量噪声(配置差异就能造成6个点)、⭐报告条件不对等(各家给自己用最优配置给对手用默认)——看对比图先找三行小字:什么提示词/跑几次怎么取/温度多少,找不到就当广告看。⭐ 算一下:100题的评测集置信区间约±7.8%,只能分辨8个点以上的差距;想分辨3个点要约700题。正确做法:benchmark粗筛→自己20-50个真实任务的私有评测(决定性)→场景专项→成本延迟→AB。建私有评测集:从线上真实失败案例里捞,别自己编(编的题太规整);三个常见错误:只放难题(没区分度)/只放当前模型答错的/不分维度只看总分(格式变好事实变差你看不见)。深挖直接去《智能体工程教程》第14章+挑战B。
下一节 👉 12-对齐与AI安全.md