评测驱动迭代

本节目标

建立“发现失败—修改一个假设—回归验证”的循环,而不是凭几次聊天体验调整提示。

构造最小评测集

教学实验或首次原型可先从 20~50 个经过去标识化、标签清晰的代表性样例起步,再按风险与失败模式扩展。这只是便于启动的工程建议,不代表统计上已经充分。每条至少包含:输入、期望结果或评分规则、业务切片、风险等级和标签依据。加入正常、边界、空输入、超长输入、语言变化与对抗文本。

本库的 12 条案例 是代码契约的最小教学夹具,故意不足以估计生产质量。每条包含期望标签、切片、风险和标注依据;它的作用是让你先验证数据格式、分组统计和失败路径,再自行扩展评测集。

数据分成三部分:

  • 开发集:允许频繁查看,用于定位失败。
  • 回归集:每次发布运行,防止修好一种错误又破坏另一种。
  • 保留集:少看或晚看,用于估计对新样本的泛化。

仓库中的固定 fixtures、评分代码、版本与 CI 结果应是可复现基线;供应商评测产品只是可替换的运行器。动态能力要检查生命周期:截至 2026-07-21,OpenAI 已宣布其 Evals platform 弃用,现有 evals 计划于 2026-10-31 变为只读,dashboard/API 计划于 2026-11-30 停止服务。不要把托管产品 ID 当成唯一评测资产,也不要把这条 OpenAI 时间线外推到其他供应商。

指标与门槛

分类任务可用准确率、各类 precision/recall;抽取任务可用字段级完全匹配;生成任务需要基于明确量表的人工评审或经过校验的自动评分。还要记录非质量指标:解析成功率、拒答率、延迟、输入/输出用量和单位任务成本。

总平均可能掩盖关键失败。按语言、输入长度、客户类型、风险等级等切片。高风险误报可以设置“不得回退”的硬门槛,而不是被总体得分抵消。

一次只验证一个假设

例:观察到 other 被误判为 technical,假设是缺少“信息不足”示例。只增加这个边界例,固定模型与检索,运行回归并比较置信区间或至少逐例差异。若改善只来自几个已见样本,把新失败加入分类表并重新审视标签定义。

模型输出具有波动。关键样例应重复运行,记录通过率分布、模型标识、采样配置和调用时间;不要因为单次成功就宣布修复。供应商允许时固定模型快照,并在升级前跑回归。若使用 LLM-as-a-judge,应先用人工样本校准评分器、固定 rubric,并检查位置偏差、风格偏差和同源模型自评偏差。线上还要观察真实分布漂移和人工纠正。

常见误区

  • 用同一模型生成答案又无审计地为自己评分。
  • 只看“回答看起来不错”,没有任务级成功标准。
  • 评测集含真实敏感信息或与训练/提示示例重叠。
  • 指标上升但成本、延迟或安全失败不可接受。

练习与自测

为工单分类列出 12 条评测样例及 4 个切片,写出发布门槛和一个必须人工复核的失败类型。自测:如果新版本总体提高 2%,但高价值客户的漏报翻倍,你的门槛会阻止发布吗?

掌握检查

  • 每条案例都有期望、切片、风险和标注理由。
  • 开发、回归与保留样例的用途分开,提示示例不会污染保留集。
  • 我同时检查任务质量、解析、拒答、延迟、用量、成本和安全失败。
  • 发布门槛保护关键切片,并能指出逐例改善与退化。
  • 线上模型结论来自重复运行,而不是一次看起来不错的回答。

下一步

进入 提示注入与信任边界,把对抗样例与真实权限控制结合。

参考资料