做评测最容易卡在两个地方:一是拿同一批题去问,谁的答案更长得更好看,最后评了个寂寞;二是评完自己都不确定,换个人换一天结果就变。这篇不讲榜单怎么看,只给一套能落地的对比检测框架——怎么选样本、怎么控变量、怎么定判分标准、怎么把结果写成别人能复核的结论。
评测最容易翻车的地方,往往不是工具不够好,而是从第一步就没想清楚要测什么。同一批题丢给两个模型,谁的输出长、谁的语气顺,谁看着就赢,这种对比做十次也沉淀不下结论。换个人、换一天再跑一遍,结果又变了,报告只能自己看。
下面这套对比检测框架解决的就是这个问题:把「谁更强」拆成能检验的命题,用可控的取样和判分把变量按住,最后写成别人照着做也能复现的记录。它不关心榜单排第几,只关心你手上的结论经不经得起追问。
先定问题:你到底要检测什么能力
「哪个模型好」不是一个可检验的命题。要把它拆到能对着一张表打勾的程度,比如长文档摘取准确率、多轮指令遵循稳定性、结构化输出合规率,一个命题配一张检测表,别混在一起算总分。
- 选型检测
- 看相对差距,重点是候选之间谁更贴合任务,样本偏向真实业务分布
- 回归检测
- 看是否退化,重点是同一模型新旧表现对比,样本偏向历史踩坑集
- 可检验命题
- 能用通过率或命中率回答的问题,主语明确、判据明确
- 把大问题拆成三到五个能力项,每个能力项写一句可判定的问句
- 判断这次是选型还是回归,两者取样口径不同,别用同一套样本硬套
- 提前写下不适用范围:单轮问答测不出多轮上下文保持,短样本测不出长文本退化
- 能力项之间尽量不重叠,重叠的部分会在加权时被重复计算
样本怎么取样才站得住
样本决定结论的天花板。按任务维度分层取样,每层给一个最低样本量,避免某一类题占比过高把总分带偏。比如指令遵循这类高频任务,样本量可以大一些;边界场景样本少但必须留,否则测出来的只是平均水平。
| 样本集 | 用途 | 注意点 |
|---|---|---|
| 公开固定集 | 横向复现、跨团队对齐 | 题面稳定,不随业务改动 |
| 业务私有集 | 判断真实可用性 | 脱敏后使用,标注判分要点 |
| 边界与对抗集 | 暴露失败模式 | 样本量小,单独统计不混入总分 |
- 每道题标注难度分,难度分用于加权,不用于事后挑题
- 标注判分要点,人工复核时按要点对齐口径
- 样本来源、采集时间、脱敏方式都要留痕
- 样本集版本号固定,中途换题要重新跑基线
把变量按住:对比时只改模型这一项
对比实验里只要有一个参数不同,结论就不可比。提示词模板、温度、最大输出长度、是否开启思考模式,这些都要在测试前写进配置文件,测试中不允许临时改。想调参可以,但那是另一个实验,不要混进同一张对比表。
- 锁定参数把提示词、温度、输出上限、思考开关写成一份配置,所有候选模型共用同一份
- 固定时间窗口同一轮测试尽量落在同一时段,避开高峰期与限流时段,跨时段测速结果单独放
- 记录快照标识记录接口版本或快照标识,别只写模型名;模型名会漂移,快照才能追溯
- 校验一致性抽几道题重复调用,确认同一配置下返回稳定,再开始正式对比
如果候选模型确实不支持某个参数,不要私自降级后直接对比,要在记录里写明差异,并把这个能力项单独标注为「配置不完全可比」,结论只能作参考。
判分口径:从主观打分改成可核对的动作
判分优先级要提前排好:能用脚本卡死的先脚本卡,格式、字段齐全、数值正确这类判定最稳定;其次是要点命中判定;最后才是人工盲评。顺序反了,人工成本上去了,结论反而更飘。
- 程序化判定:格式合规、必填字段齐全、数值与预期一致
- 要点命中判定:按预设要点逐项打勾,命中几项记几分
- 人工盲评:打乱顺序、去掉模型标识,至少两人独立打分
- 分歧处理:两人分差超过预设阈值,交给第三人裁定并记录理由
人工盲评的评审要提前做校准:拿几道样例题让所有人先打一遍,对不齐的地方当场讨论,把口径写进判分说明。校准没做就开评,等于几个人各测各的。
复测与稳定性:单次结果不算数
一次调用得到一个结果,这件事本身没有统计意义。同一道题重复多次,看答案是否一致;一致性低的能力项,结论要写成「波动大」,而不是「领先」。波动大的项,换时段再跑,差异通常更明显。
| 观察项 | 健康信号 | 异常处理 |
|---|---|---|
| 同题多次一致性 | 高且稳定 | 一致性低的项单列,不并入总分 |
| 跨时段复测差异 | 差异在可接受范围 | 差异大的项标注时段,不直接平均 |
| 失败请求占比 | 低且原因集中 | 失败样本全部保留,按原因分类统计 |
- 报错、截断、超时、拒答都算样本,不能只统计成功返回的那些
- 失败原因固定几类,方便横向对比:格式错、事实错、漏答、截断、超时
- 每轮测试保留原始返回,便于事后复核判分是否一致
- 复测轮次写进记录,别人才能判断结论的置信程度
记录模板:让结论可复核
一份能复核的记录,不需要写得多漂亮,但字段要齐。别人拿到这张表,应该能照着复跑一遍,并得到同方向的结果。如果只能看到最终通过率,那这份记录基本没法用。
- 命题
- 这次要回答的那一句可判定问句
- 样本来源
- 公开集还是私有集、版本、脱敏方式
- 参数配置
- 提示词、温度、输出上限、思考开关、快照标识
- 判分方式
- 脚本判定、要点命中还是人工盲评
- 失败原因分类
- 固定几类,逐项计数
- 复现步骤
- 别人照着操作能得到同方向结果的最小动作
每个结论后面挂一条可复现的操作,这一步最容易被省掉,也最影响可信度。写清楚用哪套样本、哪份配置、跑几轮,比多写两页分析有用得多。
把成本和效果放在同一张表里看
效果好的模型不一定整体划算。按任务算单次成本,要算上输入输出长度、重试和失败请求的隐性开销;再对比「一步到位」和「多轮自纠」两条路,有些任务多调两次反而整体更省。单价与用量这些数字会变,一律去站内页面核当时的数值,别凭记忆写进报告。
| 对比维度 | 怎么算 | 注意点 |
|---|---|---|
| 单次任务成本 | 输入输出长度对应开销,加上重试部分 | 失败请求也要计入 |
| 多轮自纠成本 | 首次调用加上纠错调用 | 用通过率换算每成功一次的成本 |
| 人工复核成本 | 判分工时乘以样本量 | 样本量越大,这部分越不能忽略 |
| 维护成本 | 接入选型、提示词迭代、监控 | 长期看往往比单次调用更贵 |
- 按任务而不是按模型算账,同一模型在不同任务上的划算程度不一样
- 把失败重试算进去,忽略它容易低估真实开销
- 统计口径统一后,才拿不同方案横向比
- 站内价格追踪页可看历史变动趋势,别只看一个时间点
什么情况下这套框架不适用
这套框架的前提是你要一个可复核的结论。如果只求先上线后调优,做轻量抽查就够,上全套框架反而拖慢节奏。还有一种情况是能力差距一眼可辨,这时候堆样本量收益很低,精力应该放到接入和集成上。
- 极短期选型:三到五道代表题抽查,先跑通再补测
- 差距明显:把时间花在工程接入、成本控制和稳定性上
- 主观创作类任务:没有稳定判分标准,结果只能当参考,不能当选型依据
- 结论只对内参考:可以简化记录,但要写清简化了哪些字段
最后提醒一句:任何对比结论都有时效性,模型会更新、参数会变、价格会动。报告里写清楚测试时间窗口和配置,比写一句「当前最优」有用得多。
下一步把你要测的能力项先写下来,再去站内模型资料库核对候选模型的能力说明,最后用检测框架跑一轮小样本试测,确认判分口径能不能对齐。→常见问题
样本量到底要多少才算够?
没有通用数字。经验做法是:核心能力项每项至少覆盖到能看出趋势的量级,跑完一轮后把分数按题逐个看,如果去掉任意一两题结论就反转,说明样本量不够,继续加。加到你删掉若干题结论不变,这个量级对本任务就算够用了。
能不能直接用公开榜单的结果,不自己做检测?
榜单适合先缩小范围,不适合直接下结论。题目公开后模型可能见过、任务方向和你自己的业务不完全一致,这些都会让排名失真。做法是先看榜单挑出候选,再用自己的私有样本集做一轮对比检测,两边结论冲突时以自己跑的为准。
人工盲评太费时间,有没有省事的办法?
先分层:能用脚本判定的(格式、字段、数值)全部自动化,只把纯语义判断的题留给人。留下的人工题再按难度抽样,不必全量评。评分时打乱顺序、隐藏模型标识,两人独立打分,分歧大的挑出来集中讨论,比全员全量打分效率高很多。
对比时发现两个模型结果忽上忽下怎么办?
先排查变量:是不是换了时段、参数有没有对齐、有没有触发限流或截断。这些排掉后仍然波动,就在结论里明确写「该能力项稳定性不足」,并给出波动区间,而不是取一次最好成绩当代表。波动本身也是选型时要考虑的风险。
检测报告要写到什么程度才算可用?
标准是别人能照着复现。报告里要有样本来源与数量、参数配置、判分规则、失败样本分类,以及每条结论对应的操作说明。只写「A 比 B 好」不算报告,写清在什么任务、什么口径下好多少,才算能用。