洞察

基准分数几乎不可迁移, 而我们仍在用它做选型

一个分数只说明在该分布上的表现, 而实际任务几乎总在分布之外

2026-09-03

一个日常但站不住的推理

选型讨论里最常见的一句话是: "这个模型在某某基准上更高, 所以我们用它。"

这句话隐含一个推断: 在基准分布上的表现可以迁移到我们的任务上。而这个推断几乎从不被检验。

我们的立场很直接: 公开基准的指导价值远低于普遍假设, 尤其是在任务具体、输入不干净、后果不对称的场景里。

三个具体原因

一、分布不匹配, 且不匹配的程度无法估计。 基准的输入是整理过的; 实际任务的输入包含格式混乱、信息缺失、前后矛盾。模型在干净输入上的表现, 与它在遇到缺失时是补全还是标注, 是两件不同的事——而后者恰恰是我们最关心的失败模式。

二、分数是聚合的, 而失败是具体的。 你需要知道的不是平均对多少, 而是它在哪一类输入上会错。聚合分数把这个信息抹掉了。两个同分的模型可能有完全不同的错误分布, 其中一个的错误分布对你是致命的。

三、基准会被优化。 一旦某个基准成为选型依据, 它就成了优化目标, 于是它作为独立度量的价值开始衰减。这不是谁的过错, 是度量的普遍规律。

替代做法

我们在自己的项目里不使用公开基准做判断依据, 只用针对具体任务构建的评测集。构建它的成本很高——往往超过 Agent 本身的实现成本, 这一点我们在Agent 设计方法里写明了。

但它给出的是可行动的信息: 这次改动在哪类输入上变好了、在哪类上变差了。而这正是选型需要知道的。

★ 一个实际的建议: 与其比较模型的基准分数, 不如用你自己的 50 条真实样本各跑一遍。这个成本比多数团队想象的低, 而信息量高得多。

★ 什么会改变我们的判断

如果出现证据表明在分布外仍然稳定迁移——即某类基准的排序能可靠预测真实任务上的排序——那么这条立场需要修正。

我们也承认一个现实约束: 在没有资源构建评测集的场合, 基准分数是唯一可得的信息。此时用它是次优但合理的; 我们反对的是把它当作充分依据, 而不是反对参考它。