考察点
这道题出自快手大模型评测岗位一面,考的是评测体系搭建的方法论,属于这个岗位的核心日常。面试官想看的是:你有没有系统性的评测思维——维度从哪来、数据集怎么攒、标注怎么控质量、怎么迭代,而不是只会跑几个公开 benchmark。追问常往「LLM-as-judge 可不可靠」「线上 bad case 怎么回流」「样本量要多少才可信」走。
参考答案
初期怎么增加评测维度
评测维度不要拍脑袋想,有三条稳定的扩展路径:
第一条,从能力框架拆。 通用大模型评测有成熟的能力分类可以参考:知识问答、推理(数学/逻辑/代码)、指令遵循、长文本理解、多轮对话、安全与价值观、工具调用。初期先按这个骨架铺开,保证没有明显的能力盲区。公开 benchmark(MMLU、GSM8K、HumanEval 这类)能帮你快速建立基线,但它们只能覆盖通用能力,且容易被训练数据污染,只能当起点不能当全部。
第二条,从业务场景拆。 这是更重要的维度来源。拿业务的真实流量做分析:用户的 query 分布在哪些意图上,每类意图下「好回答」的标准是什么。比如客服场景,维度会变成「答案正确性、是否幻觉编造政策、语气是否符合话术规范、拒答是否恰当」。业务维度的颗粒度要比通用框架细得多,而且和体验直接挂钩。
第三条,从 bad case 长出来。 每轮评测和线上反馈发现的失败案例,归类聚簇后往往能发现新维度——比如发现模型在「多约束指令」上频繁漏约束,就把「指令遵循-多约束」单独立为一个维度加重采样。评测维度的迭代本质上是失败驱动的。
评测数据集怎么建立
数据集的构建我按「来源 → 清洗 → 标注 → 质控 → 迭代」这条流水线讲。
来源有几个层次:公开数据集改造(快,但防不住数据污染,要做污染检测)、业务真实 query 采样(最有价值,注意脱敏和分布代表性,不能光采样高频简单问题)、人工构造(针对特定维度的对抗样本、边界 case,比如多跳推理、嵌套指令)、模型合成(用强模型批量造题再由人筛,效率高但要防模型自身的偏见被继承)。
标注是最吃资源的环节。客观题(有标准答案的数学、代码)可以自动判分;开放式回答需要人工或模型评判。人工标注的关键是评分标准要先于标注写清楚:每个维度 1-5 分各自对应什么表现,给出打样示例,否则标注员之间一致性差到没法用。重要数据集做多人标注算一致率(比如 Cohen's Kappa),一致性不达标先修标准再标注。
LLM-as-judge 是降本的主力手段:用强模型按评分标准打分,可以覆盖主观维度。但要清醒——它和人工的相关性要先验证(抽几百条人模型双标,算相关度,够高才敢放量),它对长回答有位置偏置和冗长偏好,pairwise 比较时要交换顺序各打一次消偏。
规模与分布上,初期的经验值是每个维度至少 100-300 条才能有统计意义地分辨模型差异,太少的话 3 个点的提升可能只是噪声。样本难度要有梯度:全送分题分不出模型好坏,全地狱题大家都是零分也没区分度,通常按难中易配比。
迭代机制:评测集是活资产。线上 bad case 定期回流进集子;模型升级后老题被「刷穿」(准确率趋近 100%)就降权或替换;定期抽查防止评测集本身过时。
收尾观点
评测体系的成熟度不看 benchmark 跑了多少,看两件事:一是评测结论能不能指导决策(这个版本能不能上),二是 bad case 回流和维度迭代的循环转不转得起来。初期宁可维度少但每个都扎实在业务数据上,也不要铺一堆用公开集凑数的维度。
可能的追问
- 怎么防止模型对评测集过拟合(刷榜)? 答:评测集保密、分级(开发集随便用,验收集隔离),定期换血;用动态生成的题目(如参数化数学题)检测是否靠背题。
- LLM-as-judge 的一致性怎么量化? 答:抽样人模型双标算 Spearman 相关或一致率;同一题目让 judge 模型多次采样看自一致性;pairwise 评判做 A/B 顺序交换消除位置偏置。
- 评测结果波动多大算显著? 答:按样本量算置信区间,几百条样本上 1-2 个点的差异通常不显著;对主观维度可以用 bootstrap 重采样估计显著性,小改动别急着下结论。