不知道从什么时候开始,每次各大厂商发布一个新模型,总会附上一张分数表,用来表示自己在各个方面吊打了竞品,以及自己之前的模型。
在很久之前,这些分数好像确实能够代表模型的能力。但也不知道从什么时候开始,分数越来越虚了,并开始流行一句话:跑分没输过,一用就拉垮。

那每次官方到底是通过什么方式证明自己的模型比别人更厉害呢?这些测评分数的计算逻辑是否有问题?又能不能体现模型的真实水平?接下来说道说道。
我们先看看大模型是怎么测出来的,很简单,就是一大堆测试题,做对多少道就给多少分,然后排个名。
根据输出的格式,有选择题、填空题、问答题、Agent 任务等类型。
选择题和填空题就直接通过一个等式验证答案就好,用提示词把模型的输出规范一下,然后再用程序提取答案,再和正确答案做相等判断,非常简单。

问答题由于没有绝对的标准答案,或者说答案不太好用写死的程序做等值判断,那可以用另一个大模型来判断,叫做 LLM as judge,和标准答案的意思对上了即可,不要求完全的字符串级别的相等。比如 HLE 的答案就需要另一个大模型来评分。

Agent 类型的任务更是没有标准答案了,但是可以通过测试用例来判断对错,比如 SWE-bench 中每道题都提前写了一堆测试用例,必须全部跑通才算通过,既要把问题修复,同时又不能引入新的问题导致老的测试用例失败,很严格。

更艰难的 SWE 马拉松更是每个任务就成百上千个测试用例,因为每道题都堪比一个团队需要几个月时间完成的大型项目了。

还有一类我上面没说,就属于是完全没有标准答案的,比如让模型输出一个漂亮的 HTML 页面。这种题目就是即使用大模型也不好判断对错,只能通过人类的喜好反馈。比如最著名的 Chatbot Arena 榜单,就是让人类对匿名的两个模型的回答选择一个更好的,然后整体通过一个叫 Elo 的分数计算逻辑排行。

以上就是模型测试方法的分类,具体怎么测试,就有好多说法了。
首先,题目前要不要加一些示例,是可以设置的。
比如加了五个例子,就叫做 5-shot,一个例子都不加直接问,叫做 0-shot。通常来说,给出例子可以让模型回答正确率高一些。这个参数的设置就不一定标注在跑分表里了,而且真实场景下哪个用户提问前还先给个例子呢,偏差由此产生。


还有是否开启思考、思考的强度是多大、是否允许使用工具、允许使用哪些工具,这些都会影响模型的分数。
拿著名的 HLE 测试来说,GPT5 自己的报告里,就有好多个版本的分数。不思考也不允许使用工具,仅仅只有 6.3 分。如果全都开启,可以提升到 35.2 分。简直天差地别。

还没完,你再看这个评分表纵轴还有个 pass@1,这表示模型只输出一次答案然后判断是否正确。
这不废话么?不,人们还发明了 pass@5,表示让模型输出五次答案,只要采样出一次正确的答案就算对,已经有点玩赖的意思了,但这也是个可以被设置的测评参数。
还没完,再看 HLE 官网,这里写了个小字,即使用的评价模型是 o3 mini。没错,HLE 这个测试题是需要另一个大模型来评分的。

而另一个著名的 AA 评测中,它使用的是 GPT-4o 来作为评测模型,而且把评测的提示词也给附上了,非常严谨。


很显然,评价模型和评价提示词的不同,也会影响分数。有的时候他们还会专门调整评测模型,来让分数更准确。但实际上也有提高分数的嫌疑,比如你看 GPT 5 的小字部分,就说了自己对评测模型做了调整,那你如果只看跑分的话,就完全是黑箱了。
总结一下,示例个数、采样次数、思考强度、工具使用、评分模型、Token 预算,都会影响最终的分数,极端点左边的和右边的测出来的分可能一个天上一个地上,很多不标注这些测评参数的分数表就是在耍流氓。

不把这些基准对齐而对比两个模型的分数差距,是没有意义的。有的报告里的小字部分,其他模型使用了公开的数据,自己的模型是内部测得,那是否保证了这些参数设置的是一样的呢?我就不乱猜了。

随着大模型能力的不断提高,这些榜单的意义逐渐降低了。一方面,模型能力的上限已经远远超过普通测试题能考察的范围,就好比所有学生的水平远超老师一样,老师已经没有能力出一张试卷区分学生的水平了。另一方面,模型的跑分越来越不能代表在真实环境中的水平,真实环境中很少有标准答案,更多是需要模型有丰富的想象力和经验指导人们走向正确的路线,比如像 Fable5 这种不需要人类给很详细的提示词,也能自己探索出非常有创意和专业性的方案,完成人类给出的目标。
反观现在的测试集,无一例外都需要给出完美的前提条件、边界限制、可方便验证的标准答案等,但真实世界并不是这个样子的。更何况,很多模型通过刷分来提升自己的成绩,这反而可能因为过拟合而导致真实使用体验下降,甚至连最基本的能力都丧失了。
所以接下来非常重要且还未能很好解决的问题就是,当模型能力已无法用传统的测评方式评价时,我们应该怎么办呢?欢迎到云栈社区和众多开发者一起交流,或许你就能给出一个拯救人类的答案。