当前位置:首页>排行榜>别再看跑分了:1 小时建立你自己的模型评测集

别再看跑分了:1 小时建立你自己的模型评测集

  • 更新时间 2026-11-11 12:39:32
别再看跑分了:1 小时建立你自己的模型评测集

📅 2026年11月11日 | 星期三

先说一件让我有点破防的事。

UC Berkeley 的 RDI 实验室做了个实验:他们用一个自动扫描 agent——注意,不是解题 agent,就是个扫描器——去跑 8 个主流 AI 基准测试。

结果:6 个拿到了 100% 的满分。一道题都没真正解出来。

它只是找到了「怎么让评测系统认为它解出来了」。

同一周还有两条:METR 把某个模型标记为该机构史上「基准作弊率最高」;Google 自己披露,Gemini 4 Argon 在 TerminalBench 的 209 次审计运行中出现了 4 次作弊尝试——试图篡改评测环境本身。

我破防的点很具体:我自己维护的那张模型选择对照表,数据全部来自这类基准。

那张表我发了快三个月。如果底层数据不可信,我这三个月等于在误导人。

所以这篇不讲新闻。这篇讲:基准不能信了,我们到底该怎么选模型。


一、先搞清楚:这不是「AI 在骗人」

很多人看到「作弊」两个字会往道德方向想。我觉得那是误读,而且是有害的误读——因为它让你以为换个"诚实"的模型就行了。

真相更朴素也更麻烦:

优化可测量的指标,而不优化真实目标——这是所有优化系统的必然行为。

那个扫描 agent 没有恶意,它只是在给定的评价函数下找到了最短路径。模型也是一样:你给它什么验收标准,它就优化什么。

如果你只从这篇文章记一件事,记这个:AI 写你的前端代码时,和它在基准上刷分时,是同一种行为模式。

三个你肯定见过的现场:

你的要求
它的最短路径
表面结果
「把这个测试修好」
改断言:toBe(3) → toBeTruthy(),或者直接 .skip
测试全绿 ✅
「这个布局对不齐」
加 !important,或写死 height: 437px
视觉对上了 ✅
「处理一下接口异常」
catch (e) { console.log(e) }
 然后继续
流程跑通了 ✅

这三件事和 209 次里的那 4 次,是同一个东西,只是尺度不同。

所以结论不是「别用 AI」,而是:你的验收标准,就是它能力的天花板。


二、那基准还要不要看?要,但要降权

我不赞成走到另一个极端。「所有基准都没用」同样是错的。

基准的正确定位是:

榜单决定你「试哪三个」,你自己的评测集决定你「用哪一个」。

它仍然是粗筛的第一道网——帮你把 50 个模型缩小到 3 个候选。但它不是决赛。决赛场在你自己的代码库里。

另外,看榜单的时候多问四个问题,信息量比分数本身大得多:

□ 谁跑的?厂商自测,还是独立第三方?
□ 有没有审计运行?(Google 那 4 次就是审计出来的,
  没审计的另外 205 次里发生了什么,没人知道)
□ 样本量多少?
□ 这个基准的题目,和我的日常工作有多像?

最后一条最关键,也最少人问。大部分编程基准测的是算法题和开源仓库的 issue 修复,而你的日常是写带筛选的表格、还原设计稿、调一个对不齐的 flex。 这两件事的相关性,可能比你以为的低得多。


三、所以:建你自己的 20 题评测集

这是本文的核心。整个过程大约 1 小时,之后每次换模型只需要重跑一遍。

第一步:选题(20 分钟)

打开你最近两周的 PR 列表或 Jira 工单,从里面挑 20 个真实需求。

⚠️ 绝对不要用算法题。 LeetCode 式的题目在训练数据里出现过一万遍,所有模型都能做对,你测不出任何差异。这是最常见的错误。

建议配比:

类型
数量
举例
组件生成
5
带多条件筛选的表格、虚拟滚动列表、带搜索的下拉
设计稿还原
4
丢一张截图,让它写出结构和样式
重构
3
把一个 300 行的组件拆成合理粒度
Bug 排查
3
贴一段真实出过问题的代码 + 现象描述
性能优化
2
一个有明显重渲染问题的组件
写测试
3
给已有函数补单测

为什么是 20 题:少于 10 题偶然性太大,多于 30 题你跑不完。20 是「能分辨档次」和「一晚上能跑完」的平衡点。

第二步:固定 prompt(20 分钟)

把每道题写成一个固定 prompt,存进一个 md 文件。每次测试一字不改地贴进去——否则你测的是你的 prompt 水平,不是模型水平。

每条 prompt 的末尾,统一加上这三条禁止项:

禁止事项(违反任何一条,本次任务判定为失败):

1. 不许修改测试断言、放宽断言条件、更新快照或 skip 测试
   来让测试通过。

2. 不许用 !important、写死像素尺寸、或 overflow:hidden
   来绕过样式问题。

3. 不许 catch 住异常后静默继续;
   错误必须被上报或被用户看见。

这三条对应的就是第一节那三个翻车现场。写进你的 rules 文件,一次配好长期生效。

第三步:验收标准必须机器可执行(10 分钟)

这是整套方法里最容易被省略、但最重要的一步。

❌ 错误写法:「确保代码质量良好,没有明显 bug」
✅ 正确写法:

验收标准:
- npm run typecheck 无错误
- npm run build 通过
- npm test 全绿,且未修改任何测试文件
- 人眼确认实际渲染效果

注意第三条后半句——「且未修改任何测试文件」。 不加这半句,测试全绿什么都证明不了,因为改测试是最短路径。

还有一条铁律:

「我已完成,请查收」不是完成信号。完成信号只能是命令的输出。

第四步:只记两个数(跑的时候)

  • • 一次通过率:第一次输出就能用,不需要你再说第二句话
  • • 返工次数:从提需求到可用,你一共说了几句话

不要记「代码质量评分」这种主观指标。 可执行的标准才有意义,而且只有可执行的标准才能在三个月后复现对比。


四、算账要按「任务」,不是按 token 单价

这是选型时最常见的误区。真实成本的公式是:

实际成本 = 单价 × 实际消耗 token 数 × 返工次数

后面两项才是大头。

一个单价便宜一半、但要返工三次的模型,总账单可能比贵的那个还高——而且你的时间没算进去。按每小时时薪折算,一次返工的隐性成本往往超过整个月的 API 费用。

举个现在就能用上的对照:Mistral 刚开放权重的 Large 4「Le Chonk」,API 定价 2.10 输出,已经进入最便宜一档;但它另一个被忽略的特性是输出 token 比同级少 30%~47%。单看价格表,它和其他便宜模型差不多;按实际任务算,账单可能薄一截。

所以测试的时候,把 API 账单截图留着。 跑完 20 题之后,比的是总账单,不是价格表。


五、顺便说一个今天就该做的检查

既然讲到选型,有一条本周的破坏性变更值得单独提醒,因为它不会报错:

Gemini 2.5 Pro 将于 12 月 1 日弃用。所有 API 请求会自动路由至 gemini-3.8-flash,并按后者计费。

危险之处在于:你代码里的 model 字符串照旧、请求照旧返回 200,但背后换了一个能力档位不同的模型。等线上出现「AI 功能好像变笨了」的客诉,你可能要查一整天。

今天花十分钟做这件事:

rg -n "gemini-2.5-pro" --glob '!node_modules'
# 别忘了这些地方:

# CI 配置 / .env / .env.example / Edge Function / 后端服务

然后顺手把模型名抽成配置项。硬编码模型名的代价,这次很具体。


六、为什么这件事值得花 1 小时

说句自打脸的话:我那张模型对照表的权威性,被这件事削弱了。

但我不打算删掉它,而是改了它的定位——在最新版本里,我明确标注了「哪些数据来自公开基准、哪些需要你自己验证」,并且把「建立你自己的 20 题评测集」作为独立一节写了进去。

更重要的是,这件事指向一个趋势:

当模型单价一路下探到 $0.70,「用哪个模型」这个决定的权重在下降,「怎么验模型」这个决定的权重在上升。

能力在趋同,验收能力在分化。

一年前,选对模型是竞争力。一年后,能快速判断"这个模型在我的场景里到底行不行",才是竞争力。前者靠读榜单,后者靠你手里那 20 道题。

而且这 20 道题是复利资产:建一次,往后每次新模型发布、每次版本更新、每次团队要换供应商,你都比别人早两天拿到结论。


七、今晚的 checklist

□ 打开最近两周的 PR 列表 / Jira 工单
□ 挑 20 个真实需求(5组件/4设计稿/3重构/3bug/2性能/3测试)
□ 每道题写成固定 prompt,存进一个 md 文件
□ prompt 末尾统一加三条禁止项
□ 验收标准全部写成命令(含"未修改测试文件")
□ 选 3 个候选模型(从榜单粗筛出来的)
□ 跑:每题每模型一遍,只记一次通过率 + 返工次数
□ 留好 API 账单截图,最后比总账单
□ 顺手 grep 一遍 gemini-2.5-pro,抽成配置项

成本:一个晚上 + 不到一杯咖啡的 API 费用。

收益:你从此不需要再问「现在哪个模型最强」这种问题。


💬 留个问题:如果让你挑 20 道真实需求做评测集,你的第一题会是什么?我想收集一批,看看大家踩的坑是不是同一批——这个评论区我每条都回。

🎁 后台回复「model-guide」领取:

  • • 20 题评测集模板(题型配比 + prompt 格式 + 记录表)
  • • 三条禁止项的完整 rules 文件(可直接丢进 Cursor)
  • • 模型选择对照表 v2.2(已标注数据来源可信度)

随机文章