这篇是对论文 Holistic Evaluation of Language Models 的学习笔记。
如果只选一篇论文作为 LLM 评测入门,我会先选 HELM。它不是某个新榜单,也不是又提出一个更难的题库,而是在回答一个更基础的问题:
我们到底应该怎样描述一个语言模型“好不好”?
很多人看模型评测,第一反应是找排行榜:MMLU 多少分,GSM8K 多少分,HumanEval 多少分,综合排名第几。这个习惯很自然,但它会制造一个错觉:好像模型能力可以被压缩成一个总分。
HELM 反过来提醒我们:模型不是一台只在单一场景工作的机器。它可能数学强但事实性弱,开放问答流畅但校准差,英文表现好但方言和小语种差,准确率高但成本和延迟不可接受。单一分数越漂亮,越容易遮住这些真实差异。
1. HELM 要解决什么问题
在 HELM 之前,模型评测有几个常见问题。
第一,大家跑的任务不一样。一个模型报告 MMLU,另一个报告 SuperGLUE,还有一个报告自己挑的内部集。结果看起来都很强,但很难横向比较。
第二,大家看的指标太窄。准确率当然重要,但真实系统还关心鲁棒性、偏见、毒性、校准、效率。一个模型答题准确,不代表它知道自己什么时候不确定,也不代表它对不同人群的表现稳定。
第三,评测透明度不够。论文里给一个总表,但原始 prompt、模型输出、失败样例不一定完整公开。读者很难判断分数背后的行为差异。
第四,任务覆盖有偏。主流 benchmark 往往集中在容易自动打分的场景,很多真实使用场景被低估,比如长文本写作、信息抽取、开放问答、风险内容、被忽视的语言或方言。
HELM 的名字里有个词很关键:Holistic。它不是想找一个“终极 benchmark”,而是想让评测变成一张多维地图。
2. HELM 的核心框架:场景 × 指标
HELM 最重要的设计是把评测拆成两个维度:
scenario:模型被放进什么使用场景
metric:在这个场景里,我们关心什么性质
这比“跑一个数据集得一个分数”更接近工程现实。
比如同样是问答场景,我们可能同时关心:
- 答案是否正确。
- 模型是否在不确定时表现出不确定。
- 换一种措辞后结果是否稳定。
- 对不同群体是否存在系统性偏差。
- 是否输出有害或不当内容。
- 推理成本和延迟是否可接受。
HELM 在论文里选择了 16 个核心场景,并尽可能对每个场景测 7 类指标:accuracy、calibration、robustness、fairness、bias、toxicity、efficiency。它还做了 7 组 targeted evaluation,用 26 个更专门的场景分析 reasoning、disinformation 等特定问题。
这套设计最有价值的地方,是把“模型好不好”从一个排名问题,改成一个诊断问题。
如果模型 A 在 accuracy 上赢,但 robustness 和 toxicity 差,模型 B 准确率低一点但更稳定,我们就不能简单说 A 全面更好。具体选谁,取决于你要部署到什么场景。
3. 关键数字背后的意义
论文做了一个大规模实验:30 个代表性语言模型,在 42 个场景上评测,其中 21 个场景此前并不是主流评测常客。
HELM 还指出,在它之前,模型平均只被评测了核心 HELM 场景的 17.9%。换句话说,很多模型看起来都在“被评测”,但彼此之间实际没有多少共同测试面。HELM 把这个覆盖提升到 96.0%,让同一批模型在标准化条件下被密集比较。
这个数字很有启发。
它告诉我们,很多模型比较并不是“谁更强”的问题,而是“大家有没有在同一张卷子、同一套指标、同一套提示条件下比较”。如果没有,排行榜很容易变成宣传材料,而不是工程证据。
HELM 还公开原始 prompts 和 completions。这一点比很多总分更重要。因为模型评测真正有价值的部分,常常藏在失败样例里:它为什么错,错得是否危险,错得是否稳定,是否在某类问题上系统性退化。
4. HELM 给工程团队的启发
如果把 HELM 的思想迁移到日常 LLM 应用评测,我觉得可以落成一个很实际的流程。
第一步,不要先选工具,先画场景地图。
比如一个客服机器人,至少要拆成:
- 常规问答。
- 产品政策解释。
- 多轮澄清。
- 投诉处理。
- 退款和订单相关场景。
- 超出能力范围时的拒答。
- 安全和隐私边界。
每个场景再定义不同指标。常规问答看准确率和可读性;政策解释看忠实度;投诉场景看语气和升级策略;隐私场景看是否泄漏;多轮任务看上下文保持。
第二步,不要只报平均分,要报切片。
平均分最容易骗人。一个模型可能整体 90 分,但退款政策场景只有 60 分;另一个模型整体 86 分,但关键业务路径更稳。工程上真正要看的,是核心场景是否达到门槛。
第三步,保留原始输入、输出、评分和失败原因。
评测不是为了得到一个数字,而是为了决定下一步怎么改。如果只保留 score,就无法判断该改 prompt、改检索、改工具、换模型,还是补训练数据。
第四步,把效率放进评测,不要事后再算。
HELM 把 efficiency 放进指标体系,这是很工程化的判断。一个模型准确率高 2%,但成本高 5 倍、延迟高 3 倍,未必是更好的产品选择。
5. HELM 的局限
HELM 很重要,但它不是万能答案。
首先,它覆盖很广,代价是每个具体业务场景不可能都足够深。你不能拿 HELM 分数直接替代自己的产品 eval。
其次,场景和指标的选择本身带有价值判断。什么叫公平,什么叫有毒,哪些语言和任务应该优先覆盖,这些都不是纯技术问题。
第三,模型能力发展太快,静态 benchmark 会老化。HELM 后来变成 living benchmark,并且框架本身在 2026 年进入维护模式,这也说明评测基础设施需要长期运营,不是一篇论文能一次性解决。
第四,HELM 更适合回答“模型整体能力画像”,不直接回答“我的 Agent 在真实工作流里会不会把事情办成”。后者还需要工具调用、执行轨迹、RAG 忠实度、线上反馈这些更应用层的评测。
6. 我的 takeaway
HELM 最值得学的不是某个具体分数,而是它的评测观:
不要问:哪个模型第一?
要问:在什么场景、什么指标、什么约束下,哪个模型更适合?
这句话看起来朴素,但能避开很多坑。
很多团队做模型选型时,会先看公开排行榜,再用少量样例试一试,然后就决定上线。HELM 的方法会逼你把问题拆细:场景是什么,指标是什么,失败样例是什么,关键业务路径是什么,成本和延迟怎么算,哪些风险不能平均掉。
所以我更愿意把 HELM 看成一篇“评测架构论文”。它告诉我们:模型评测不是找一个分数,而是建立一张能力地图。地图越清楚,你越知道模型适合放在哪里,也越知道它不该被放在哪里。
如果要搭自己的 eval system,第一步不应该是接入十个 benchmark,而是先写下这张表:
场景 | 样本来源 | 主要指标 | 失败类型 | 发布门槛 | 人工复核策略
这就是 HELM 留给工程实践最有用的东西。