拆解大模型评估的完整框架、主流基准、核心矛盾与行业现状,打破「评估只是算分数」的认知误区,直面当前大模型领域的「评估危机」
一、行业现状:我们看到的,和我们看不到的
当我们谈论「模型好坏」时,看到的东西大致可以分为几类。
最常见的是基准测试分数。每逢大模型发布,技术报告里总会附上一张图表,列出模型在 MMLU、MATH、GSM8K 等基准上的得分。这些数字看起来客观、可比,但值得追问的是:这些基准到底是什么?这些数字背后的含义是什么?不同基准之间为什么不完全一致?
除了单纯的准确率,还有一些平台走得更远。Artificial Analysis 绘制了模型的帕累托前沿,把「智能指数」(多基准融合的综合指标)和「每 token 使用成本」放在一起对比。一些旗舰模型的性能确实很强,但使用成本也极高——如果另一个模型性能相当、价格却低得多,显然也很值得考虑。
另一种思路是基于用户的使用数据。OpenRouter 统计了真实用户的模型选择数据,把流量分发给不同模型,看每个模型收到的 token 量来排名。其逻辑是:用户愿意付费使用的,就是他们认为好的模型。
Chatbot Arena 走的也是类似路线,但更进一步——让用户在两两对话中投票偏好,基于 ELO 分数给模型排序。
此外,X 等平台上也有大量用户分享模型能力案例,展示模型搞定了某个超难问题。这类案例能反映模型的能力,但本质上存在幸存者偏差。
但是,Andrej Karpathy 曾做过一个判断:当前大模型正面临一场全面的评估危机。 MMLU 等经典基准已经接近饱和,甚至被认为存在刷分问题;Chatbot Arena 也出现了流程不规范、刷分等情况。模型越来越多,分数越来越多,但行业始终没有形成统一、可信、贴合真实场景的评估标准。
这并不意外。CS336里讨论的几乎所有话题都是如此——评估也不例外,它本质上充满了不确定性。
二、评估的本质:先问清楚你要回答什么问题
评估在操作层面很简单:给定一个固定模型,输入提示词,拿到输出,计算指标,求平均值。但正因为它看起来太简单了,反而容易让人忽略其中的复杂性。
评估的真正问题在于:没有唯一正确的评估方式。 你得到一个数字,但这个数字能告诉你什么?它真的回答了你最初的问题吗?
不同角色对于评估的目标是完全不同的。
个人或企业在做采购决策时,关心的是贴合自身业务场景的性价比;
学术研究者想剥离一切场景干扰,测量模型的原生能力,看 AI 领域是否在科学意义上取得进步;
政策制定者想客观了解模型带来的收益与风险;
模型开发者则需要评估反馈来指导迭代,想知道哪个优化方案真的有效。
这些完全不同的目标,对应着完全不同的评估方案,自然不存在用一套评估打天下的可能。
一个简明的思考框架是把评估拆成四个环节:输入设计、模型调用、输出评估、结果解读。每个环节都有大量细节需要仔细考量,下面逐一展开。
1. 输入设计:你的提示词,决定了你测的是什么
第一个问题是:这些提示词从哪里来?它们覆盖了哪些使用场景?有没有长尾、高难度的边缘案例,还是只有简单题?
第二个问题是:是否要让输入适配模型?
在多轮对话场景中,输入本身就是依赖模型的历史输出的,这就引入了额外的复杂性。
即便在单轮场景里,你也可能想让输入适配特定模型——比如在红队测试中,适配模型能更高效地找到罕见的长尾风险,但代价是失去了不同模型之间的横向可比性。这是一种明确的权衡。
2. 模型调用:你以什么方式调用模型?
你以什么方式调用模型,这个问题往往被低估。零样本、少样本、思维链——这些选择会极大地影响最终指标。大语言模型对提示词依然高度敏感,评估时必须对提示策略有清晰的说明和记录。
更根本的问题是:你评估的到底是什么? 是语言模型本身,还是包含脚手架、工具调用的完整智能体系统?模型开发者关心前者,外围的脚手架只是获取指标的手段;但终端用户只关心整个系统能不能解决问题。这两者的评估方案设计逻辑完全不同。
3. 输出评估:标准答案干净吗?指标选对了吗?
通常我们会有参考输出来评估结果。但这些参考答案本身是干净的吗?如果基准存在标注噪声甚至错误,这会直接影响评估的有效性。
**然后是指标选择。**代码生成用 pass@1 还是 pass@10?成本怎么纳入考量?大多数榜单完全忽略了成本因素,你根本不知道排名第一的模型是不是比第二名贵了十倍。这也是帕累托前沿更有参考价值的原因。
还有一个问题:**不同错误的严重程度天差地别。**在医疗场景里的一次幻觉,和在娱乐场景里的一次幻觉,影响完全不同。至于没有标准答案的开放生成任务——怎么客观评估「写一个关于斯坦福的精彩故事」?这是一个至今没有良好解决方案的难题。
4. 结果解读:如何理解最终的分数?
假设你在评估中得到了一个 91% 的准确率,你想知道这个分数是否足够支撑模型上线部署。
如果你是研究者,你想知道模型是否真的学会了某种泛化能力,还是训练集污染导致的分数虚高——这要求你直面训练集-测试集重叠的问题。
如果你在评估的是方法本身,你需要问:这个分数反映的是模型效果,还是训练方法的有效性?
三、困惑度:被忽视的基础指标
说完一般框架,有必要专门谈谈困惑度(Perplexity),因为它至今仍有不可替代的价值,却常常被忽视。
困惑度的本质是:语言模型是 token 序列的概率分布,困惑度衡量模型给目标数据集分配的概率高低。数值越低,模型对数据的拟合能力越强。在预训练阶段,我们的目标就是最小化模型在训练集上的困惑度,因此它是大模型最原生的评估指标。
2010 年代的语言建模研究,普遍采用同分布训练-测试的模式,在 Penn Treebank、WikiText-103、10 亿词基准等数据集上优化困惑度。
GPT-2 是转折点。它在 40GB WebText 数据上训练,然后零样本在传统困惑度基准上评估——这明显是分布外评估,但 WebText 的覆盖范围足够广,模型展现了强泛化能力,在小数据集上超越了当时的 SOTA。GPT-2/GPT-3 之后,行业评估的核心从困惑度转向了下游任务准确率。
困惑度有三个至今无法被替代的价值。
**第一,它比下游任务准确率更平滑。**困惑度给你每个 token 的细粒度概率,而准确率只有「对/错」的二元结果。几乎所有缩放定律研究都用困惑度,因为它能更平滑地拟合曲线,避免下游指标的不连续性。
**第二,它具备通用性。**困惑度关注数据集中的每一个 token,不会放过细微的能力差异。而任务准确率可能会漏掉这些细节——模型可能用错误的逻辑得到了正确答案,尤其当基准本身可以被刷分时,这个问题尤为突出。
**第三,它适用范围广。**除了预训练语料,你也可以计算下游任务的条件困惑度,直接拟合针对特定任务的缩放定律。
当然,困惑度也有局限。如果你在运营一个需要对外公布困惑度的榜单,你就必须在一定程度上信任模型提供方——因为困惑度需要模型输出每个 token 的概率,而黑盒模型可以轻易作弊(如果模型给所有序列都分配 0.8 的概率,看起来困惑度极低,但这根本不是合法的概率分布)。任务准确率评估只需要看模型的最终输出,可以完全独立完成验证,但困惑度做不到这一点。
学界有一群被称为「困惑度极致主义者」的人,他们的逻辑是:真实分布是 t,模型分布是 p,最小化困惑度就是让 p 逼近 t,当 p=t 时,你能解决所有任务,实现 AGI。这个论证在理论上相当优雅,但反驳观点认为这可能不是最高效的路径——你可能在优化大量与核心任务无关的分布部分,而人类的学习模式显然不是这样的。
不过有一点是成立的:在基准普遍可以被刷分的当下,只要训练集和测试集严格隔离,困惑度本身是难以被刷分的。
五、知识类基准:从 MMLU 到人类的终极考试
知识类基准的核心是测试模型的知识储备与学科能力,均为有标准答案的结构化题目,是当前大模型发布的核心标配。
MMLU 发布于 2020 年,当时让语言模型零样本或少样本完成大量不同任务是一件超出想象的事。它的设计是 57 个学科的多项选择题,题目来自互联网公开资源。尽管名字叫「大规模多任务语言理解」,实际上测的主要是知识储备,而非语言理解能力。
GPT-3 当时用少样本提示在 MMLU 上取得了 45% 的准确率。现在主流模型的准确率已经达到 90%+,进入了性能饱和区。这也带来了一个问题:大家在 MMLU 上过拟合了。
MMLU 最初是为基座模型设计的,但现在大家用它来评估指令微调后的模型。这里有一个值得注意的认知:如果一个模型没有针对 MMLU 做任何专门训练,仅凭预训练就能在 MMLU 上取得好成绩,那它大概率具备足够的通用智能,可以完成其他大量任务。但如果你专门针对这 57 个学科的选择题做了优化,即便分数很高,模型的通用能力可能也达不到分数所体现的水平。所以解读 MMLU 分数时,分数本身不是全部,还要看评估对象和训练数据的匹配关系。
MMLU-Pro 是 2024 年的改进版,移除了噪声和过于简单的题目,把选项从 4 个增加到 10 个,并采用思维链模式评估。结果是模型准确率普遍下降了 16%-33%,被主流大模型厂商广泛采用,成为新的标配知识基准。
GPQA 进一步把难度拉高到博士级别。它招募了 61 名 PhD 出题,经过多轮专家审核,确保非专家即使用谷歌搜索 30 分钟也找不到答案——这就是「谷歌免疫」。领域专家的准确率仅 65%,非专家用谷歌搜索 30 分钟准确率仅 34%。GPT-4 发布初期在这个基准上只有 39% 的准确率,现在 O3 已经达到了 75%,一年间的进步是显著的。
Humanity's Last Exam(人类的终极考试)号称是最后的考试。它用奖金池和共同作者激励吸引出题,用前沿大模型过滤简单题,做多轮专家审核,最终收集了 2500 道多模态题目。但它有一个根本性的设计缺陷:公开征集题目的方式,导致出题人群严重偏差——收到的是已经深度接触大模型、深知哪些题对模型简单或困难的研究者,题目极度偏向特定领域,完全不代表真实用户的提问分布。当前顶尖模型准确率仅 20%,是目前难度最高的知识类基准。
六、指令遵循基准:如何评估开放生成?
ChatGPT 带火了一种新的交互范式:直接让模型完成指令,没有明确的题目,模型需要自己理解和执行。这带来了一个核心难题:开放回复的评估,没有标准答案,至今没有令人满意的解决方案。
Chatbot Arena 是这个领域最热门的基准。机制是互联网用户输入提示词,收到两个匿名模型的回复,投票选择更好的一个,基于两两对比计算 ELO 分数。优点是输入来自真实用户,永远有新鲜数据,可以动态纳入新模型。
但 Chatbot Arena 也引发了一场不小的争议。过去两年里,它的行业影响力越来越大,甚至谷歌 CEO Sundar Pichai 都会发推特说 Gemini 在上面的表现有多好。当一个指标成为全行业关注的目标,甚至成了 PR 工具,就触发了 Goodhart's law——当一个指标成了目标,它就不再是一个好的指标,必然会被刷分作弊。有一篇叫《榜单幻觉》(The Leaderboard Illusion)的论文就指出,有一些模型提供方拿到了特权访问权限,或是可以多次提交模型做测试,评估流程存在很多不规范的地方,希望后续能得到修正。
更根本的问题是:这些来自互联网随机用户的评估,到底代表了谁的需求分布?这里的「随机」,指的是刚好访问这个网站的人,而不是真正的统计学意义上的随机。
IFEval 的思路是专门测试约束遵循能力——给指令添加合成的约束条件(字数限制、禁用词、格式要求),用脚本自动验证是否遵循。它的好处是完全自动化、可复现,但局限也非常明显:它只评估是否遵循约束,完全不评估生成内容的语义质量。里面的指令也不太符合真实使用场景,比如「你的回复里不允许使用逗号」或「必须包含至少 12 个占位符 token」。
AlpacaEval 基于 805 条指令,用 GPT-4 作为自动标注器,计算目标模型相对于基准模型(GPT-4 Preview)的胜率。它和 Chatbot Arena 的排名强相关,而且完全自动化、可复现。不过后来人们发现其原始版本存在长度偏差,更长的回复更容易被 GPT-4 偏好,所以后来推出了长度控制(LC)版本缓解这个问题。局限是指令偏简单,不覆盖工具使用等复杂场景;不做模型的安全评估;标注器的偏好偏差。
WildBench 的提示词来自 100 万条真实人机对话,提取了 1024 条示例,用 GPT-4 Turbo 带清单式评估框架做裁判。和 Chatbot Arena 的相关系数达到 0.95,成为行业内校验新基准有效性的参考标准。
七、Agent 类基准:脚手架里的智能
有一类任务需要工具调用、多轮迭代、长周期规划——比如写代码需要运行测试,做安全渗透需要执行命令,完成 Kaggle 竞赛需要训练和调参。这类场景的评估对象是「语言模型 + 脚手架逻辑」的完整智能体系统,而非语言模型本身。
SWE-Bench 给模型一个代码库和 GitHub Issue 描述,要求提交能通过单元测试的 PR。这是当前智能体代码能力的核心标杆。
CyBench 专注于网络安全领域,任务是在 CTF 夺旗赛中入侵服务器获取密钥。当前顶尖模型准确率约 20%,但已经能解决人类需要 42 分钟才能完成的挑战。值得注意的是,这个基准既是能力评估,也是安全风险评估——能完成高难度渗透测试的智能体,既可以用于系统安全防护,也可以用于恶意攻击。
MLEBench 包含 75 个 Kaggle 竞赛任务,要求智能体完成数据处理、模型训练、调参、提交的全流程。当前顶尖模型的奖牌获得率不足 20%,是难度最高的 Agent 基准之一。
八、纯推理能力:剥离知识的通用智能
能不能把知识储备的因素剥离出去,只评估模型纯粹的推理能力?很多人认为推理能力才是更纯粹的智能体现——我们应该奖励模型的创造力和解决新问题的能力,而非「因为在互联网上见过所以能做」。
ARC-AGI 就是这个思路的产物,由 Francois Chollet 在 2019 年(大模型爆发前)提出。任务是无语言、无任务描述的图形规律题,传统大模型在这个基准上准确率接近零,但 O3 投入大量算力后取得了显著突破,每道题耗费可达数百美元。现在已经推出了更难的 ARC-AGI-2。这类基准捕捉了其他评估无法覆盖的纯粹推理与泛化能力。
九、安全类基准测试
安全评估的逻辑和其他行业是相通的——汽车做碰撞测试,食品做安全标准,AI 也需要安全评估。但问题是,「安全」在 AI 领域至今没有清晰的定义。
HarmBench 基于 510 种有害行为测试模型的拒绝率。AIR-Bench 参考全球监管框架和企业安全政策,构建了 314 个风险类别、5694 条提示词,把抽象的安全概念和真实合规要求绑定,更贴合实际落地需求。
一个核心话题是「越狱」。大模型经过对齐训练会拒绝有害指令,但通过优化提示词可以绕过安全防护。Greedy Coordinate Gradient(GCG)可以自动优化提示词实现越狱,在开源 Llama 模型上优化的攻击甚至可以迁移到 GPT-4——这是当前大模型的核心安全隐患。
部署前测试方面,美英等国的 AI 安全研究所与主流厂商建立了自愿协议,厂商在发布前提供提前访问权限,由研究所完成安全评估并出具报告,目前没有法律约束力。
关于安全,有几个关键的认知需要建立。
第一,安全是强语境相关的,定义随政治、法律、社会规范、国家不同而变化,不存在全球统一的安全标准。
**第二,安全与能力不是绝对对立的。**减少医疗场景的幻觉等优化,能同时提升模型的能力与安全性。
**第三,必须区分「能力」和「倾向」。**API 模型的核心风险是倾向(是否拒绝有害请求),开源模型的核心风险是能力(可以通过微调轻易关闭安全防护)。
**第四,两用性是核心挑战。**能完成高难度渗透测试的智能体,既可以用于系统安全防护,也可以用于恶意攻击——这意味着我们无法简单通过能力评估来区分安全风险。
十、真实性:贴近真实用户场景
行业里有个根本的矛盾:标准化基准(如 MMLU)本质上是「考模型」,和真实用户的使用场景相差甚远;但真实用户流量里又有大量垃圾和娱乐内容,也不是模型的核心价值场景。
这里的关键区分是两类提示词:「考我」类,用户已经知道答案,目的是测试模型;「问我」类,用户不知道答案,目的是解决问题。「问我」的提示词才是模型落地的真实场景,才是真正为用户创造价值的使用方式。
Anthropic 的 Clio 项目用大模型分析真实用户对话数据,发现编码是最高频的使用场景。
MedHELM 项目则找了 29 名临床医生,基于真实工作流整理了 121 个临床任务,构建了贴合真实医疗场景的评估基准。
然而,真实性和隐私保护存在天然矛盾——很多真实场景数据涉及用户隐私,无法公开。
十一、评估有效性:数据污染与标注噪声
传统机器学习的核心准则是不在测试集上训练。但在当前大模型时代,模型用全网数据训练,几乎不公开训练细节,测试集污染几乎是无解的问题。
一个方向是通过模型行为特征推断它是否在训练中见过测试集(比如对文本顺序的偏好和数据集顺序高度相关)。另一个方向是推动行业规范,要求模型厂商披露测试集与训练集的重叠情况,类似于论文必须报告置信区间和标准误差。
大量基准还存在标注错误和噪声。比如 MATH、GSM8K 的准确率已经到了 90%+,但其中有相当比例的题目存在标注错误,修正后分数会显著提升。SWE-Bench Verified 就是修复原始数据集错误的改进版。
十二、当我们做评估的时候,我们评估的到底是什么
传统小模型时代,我们评估的是「方法」——固定训练集、测试集、训练流程,只改变算法或架构,验证新方法的有效性。这种评估推动了算法创新,保证了公平性和可复现性。
当前大模型时代,评估的是「系统」——无固定规则,一切技术手段均可使用,只看最终效果。这种评估给终端用户提供了选型参考,但无法区分效果提升来自算法创新、数据规模还是算力投入,也推动了底层的刷分文化。
例外是一些算法竞赛,比如 nanogpt 速通赛(固定数据,最小化达到指定验证损失的时间)和 DataComp-LM(固定原始数据与训练流程,优化数据筛选策略)。这些竞赛对推动算法创新有重要价值。
无论做任何评估,必须先明确并公开「游戏规则」,以及你希望通过评估回答什么问题。否则,分数毫无意义。
Takeaways
- 不存在唯一正确的通用评估,必须根据评估目标选择对应方案,脱离目标的分数没有任何意义。
- 不要只看榜单的最终分数,要深入查看单个样本、模型的预测细节与提示词策略,理解分数背后的真实逻辑。
- 模型评估是多维度的,必须综合考虑能力、安全、成本、场景真实性,单一维度的分数会严重误导决策。
- 做评估前,必须明确「游戏规则」:你要评估的是底层训练方法,还是最终模型/系统效果,两者的设计逻辑完全不同。