场景 1 · 能力上限 vs 业务可靠性 7.2 重点
同一组概率,看上限近满分、看可靠性却几乎为零
同一组概率:能力上限 99%,业务可靠性只剩 7.8%
最容易犯的错: 拿 Pass@k 的宣传数字去承诺 SLA。它衡量「至少成功一次」,而 Pass^k = p^k 衡量「连续 k 次全过」;同一组 p = 0.6、k = 5,两者差 12 倍。
场景 2 · 技术奇观:Pass@k 的奇迹 7.2.1
只要一次成功,就证明这件事原则上做得到
只要成功一次,就证明原则上做得到 —— Pass@k 描述的是能力边界
读榜技巧: 看到惊人的 Pass@k 数字,先问「k 是几、跑了几次」。下排的 Manus 与 OpenClaw,则是把这种「一次」做成了可复现的产品体验。
场景 3 · τ²-bench 的双控环境 7.1.2 重点
故障藏在数据库看不见的用户侧,Agent 只能引导、不能代操作
故障藏在数据库看不见的地方,reward 只认环境断言 ENV_ASSERTION
设计精髓: 用户模拟器自带一套工具(check_status_bar / toggle_airplane_mode / run_speed_test),发工具的是用户而不是 Agent。reward 只采信 ENV_ASSERTION 环境断言 ——「信息不对称」因此成了可评估的对象。
场景 4 · SWE-bench 的双重验证 7.4.2
只验「修好了」或只验「没破坏」都会被蒙混
只验修好或只验没破坏,都会被假象蒙混 —— 两把锁必须同时开
可迁移到任何回归测试: 一组证明「改对了」,一组证明「没改坏」,缺一不可,还要排除 flaky test。同类还有 OSWorld(134 个评估函数)与 Terminal-Bench(真的构建 Linux 6.9)。
场景 5 · GAIA 的防泄漏与难度分级 7.4.3 / 7.4.4
答案要组合多源、且互联网直接查不到
评估集最大的敌人是记忆 —— 答案能搜到,分数衡量的就不是能力
评估集最大的敌人是记忆: 答案只要能搜到,衡量的就不是能力,而是训练数据。GAIA 全 466 题分三级,到 Level 3 连 GPT-4 都是 0%;Terminal-Bench 还嵌 canary GUID 查泄漏。
场景 6 · LLM 裁判与一票否决 7.5.1
没有标准答案的任务,用 Rubric 拆维度打分
没有标准答案就用 Rubric 拆维度 —— 但必须有一票否决兜住底线
两个必须防的偏差: 自家人评自家人(用异构模型)、偏爱长回答(控长 + 配对 + 审计相关性)。案例里这条幻觉否决在 180 次评判中触发了 28 次 —— 它才是兜住底线的那条。
场景 7 · 失败归因:做对了但说错了 7.5.2 重点
根因不在模型,而在 Harness 的观察通道缺失
记成「模型不会 OCR」会改错方向 —— 先归因,再动手
最重要的思维习惯: 失败先分层 —— 是模型不行、工具不行,还是它根本看不到?τ²-bench 基线 704 次里失败 240 次,其中 80 次(1/3)是「环境对了但信息没告知」。
场景 8 · Elo 配对排名 7.5.4
不靠绝对分,靠盲选对决量化「谁更好」
不靠绝对分,靠盲选对决 —— 位置偏差用交换顺序各评一次抵消
相对排名的好处: 不需要一把公认的尺子,只要「两两比较谁更好」这个更弱、更可靠的判断。更新式 R_A' = R_A + K·(1 − E_A) 背后是 Bradley-Terry 模型。
场景 9 · RE-Bench 的人机预算曲线 7.6.1
短预算领先,不能外推成长时间能力
短预算领先不能外推 —— 关键在于两条曲线在哪相交
选型时的关键一问: 我的任务给多少预算?2 小时下 Agent 约是人类 4 倍,8 小时人类略超,32 小时人类约 2 倍。思考也不便宜:50 tokens/s 下 2000 个思考 token 就要 40 秒。
场景 10 · AndroidWorld 的调优闭环 7.9 重点
分数跌先查评测系统,再动 Agent;一轮只改一个变量
分数跌先查评测系统 —— 一轮只改一个变量
最反直觉的一条:「加提示」毫无效果(25% → 25%),因为问题不在「不会做」,而在「看不见」。换元素树后 25% → 100%,代价 token ×2.498;再精简,守住 100% 且 token ×0.506。
场景 11 · 上下文成本的雪球 7.6.3
每轮重发全部历史,成本按轮数累加而非线性
压缩会缩短可缓存的前缀,两者不叠加 —— 优化之间会互相干扰
呼应第 2 章: 这就是 KV Cache 为什么是架构约束 —— 省的不是一点延迟,是按轮数平方增长的账单。但优化会互相干扰:稳定前缀省 28.3%、压缩历史省 17.5%,两个同开只省 30.0% —— 因为压缩本身缩短了可缓存的前缀。