面试知识库
高 困难

Agent评测平台设计#

一句话答案#

Agent 评测平台的核心是「数据集版本化+多维度评测+发布门禁+回归守护」:用版本化数据集保证可复现,离线评测覆盖准确性/忠实度/工具调用/任务完成度四维,评测结果作为发布门禁阻断劣化版本上线。

核心要点

一、评测平台架构

数据集管理 ──→ 评测引擎 ──→ 结果分析 ──→ 发布门禁
     │              │            │            │
 版本化存储    多维度评测    统计+可视化   CI/CD集成
 标注协议      并行执行      回归检测     阻断/放行
 采样策略      成本控制      报告生成     通知告警
plaintext

二、数据集版本化

数据集结构:

版本管理原则:

操作版本变更示例
新增样本minor (3.2→3.3)扩展数据集
修正标注patch (3.2.0→3.2.1)修复错误答案
修改 schemamajor (3→4)新增评测维度
删除样本major(破坏性、不兼容)+ changelog移除低质量样本

三、标注协议与质量控制

标注流程:

原始问题 → 标注员A标注 → 标注员B交叉验证
                              ↓
                    一致 → 入库
                    不一致 → 仲裁员裁决 → 入库 + 记录分歧
plaintext

一致性度量:

  • Cohen’s Kappa:两人一致性(>0.6 可接受,>0.8 优秀)
  • Fleiss’ Kappa:多人一致性
  • 单人标注时:诚实披露偏差 + 定期抽检 + 下轮交叉验证

标注规范示例:

维度评分标准
相关性 (0-1)1=完全相关,0.5=部分相关,0=不相关
忠实度 (0-1)1=完全基于检索内容,0=凭空编造
完整性 (0-1)1=回答所有子问题,0.5=部分回答,0=未回答

四、多维度评测

维度评测什么指标方法
检索质量召回的文档是否相关Recall@K, MRR, NDCG对比 ground_truth docs
生成质量回答是否准确完整Faithfulness, RelevanceLLM-as-Judge + 人工抽检
工具调用是否调对工具、参数正确Tool Accuracy, Param F1对比 expected_tools
任务完成度端到端是否达成目标Task Completion Rate人工判断 or 脚本验证
安全是否拒绝恶意输入Rejection Rate注入测试用例
性能延迟和成本P99 Latency, Cost/Query计时 + token 计数

Agent Task Completion 评测(最难的维度):

  • 简单任务:脚本验证(如”查询后返回格式正确”)
  • 复杂任务:人工判断 + 评分标准(“是否完成了用户意图”)
  • 多步任务:检查每一步的工具调用序列是否合理
  • 开放任务:LLM-as-Judge 评分 + 人工校准

五、发布门禁体系

代码合并 → 触发评测 Pipeline
  │
  ├─ 快速评测(5分钟):核心 20 条 query
  │   └─ 任何指标劣化 >5% → 阻断合并
  │
  ├─ 标准评测(30分钟):完整数据集
  │   └─ 关键指标低于 SLO → 阻断发布
  │
  └─ 完整评测(2小时):多次运行+统计显著性
      └─ 用于版本里程碑评审
plaintext

门禁规则示例:

指标门禁条件动作
Recall@5不低于上个版本 -0.03低于→阻断
Faithfulness≥0.80低于→阻断
安全拒绝率100%(adversarial set)<100%→阻断
P99 Latency不高于上个版本 +20%超过→告警
Cost/Query不高于上个版本 +30%超过→告警

六、回归检测

新版本评测结果 vs 基线版本评测结果
  │
  ├─ 逐 query 对比:哪些 query 变好/变差?
  │   └─ 变差的 query → 自动归类(检索劣化/生成劣化/工具调用错误)
  │
  ├─ 分类别对比:哪个 category 整体劣化?
  │   └─ factual 类劣化 → 可能是 BM25/索引问题
  │   └─ reasoning 类劣化 → 可能是 prompt/模型问题
  │
  └─ 统计显著性检验
      └─ paired t-test / bootstrap → 差异是否显著
plaintext

七、现成评测框架与平台(2026-09 现状)

自建平台前先看现成工具能覆盖多少,通常是「开源框架跑评测 + 可观测平台存结果」:

工具类型适合
Langfuse开源(核心 MIT)可观测 + 评测平台Trace 上挂 score、数据集与实验管理、线上抽样打分;2026-01 被 ClickHouse 收购,官方称继续开源可自托管
LangSmith商业平台(LangChain 官方)LangChain/LangGraph 项目最顺手,也支持 OTel 接入其他框架
Arize Phoenix开源(ELv2)追踪 + 评测基于 OpenTelemetry/OpenInference,数据集、实验、LLM 评估器
Braintrust商业评测平台数据集、实验对比、线上日志打分一体(能力以官方文档为准)
promptfoo开源(MIT)CLI配置文件驱动的 prompt/模型对比和红队测试,易接 CI;2026-03 被 OpenAI 宣布收购,官方称继续开源
DeepEval开源(Apache-2.0)Python 框架pytest 风格写评测用例,内置 RAG / Agent / G-Eval 等 LLM 指标
Ragas开源(Apache-2.0)RAG 专项指标:Faithfulness、Response Relevancy、Context Precision/Recall 等
Inspect AI开源(MIT),英国 AI Security Institute 出品支持工具调用、多轮、模型打分,自带 200+ 现成评测,偏模型能力与安全评测
OpenAI Evals开源框架 + OpenAI 平台内置 Evals老的 registry 式框架;OpenAI 现在主推在 Dashboard / API 里直接配评测

八、公开 Agent 基准(做选型参考,不能替代自建评测集)

基准测什么现状要点
SWE-bench Verified / Pro真实 GitHub issue 修复Verified 为 500 道 Python 题;OpenAI 2026-02 宣布不再报告 Verified(测试缺陷 + 训练数据污染,已饱和),推荐 Scale AI 的 SWE-bench Pro(1,865 题、41 个仓库)
τ-bench / τ²-bench(Sierra)工具 + 模拟用户多轮对话(客服场景)领域有 airline / retail / telecom / banking_knowledge;2026-07 的 v1.0.1 修了评分,新旧版本分数不可比
GAIA通用助手:检索、多模态、工具组合分三个难度等级,答案短、可精确匹配
OSWorld / OSWorld-Verified操作真实桌面和 Web 应用369 个任务,需要虚拟机环境,基础设施最重
BrowseComp(OpenAI,2025-04)浏览 Agent 在开放网络找难查的事实1,266 题,短答案精确匹配;头部模型分数已很接近
Terminal-Bench命令行环境中完成真实任务每题带 Docker 环境、验证测试和参考解;版本迭代快,引用分数必须注明版本

看公开基准分数要注意:Agent 分数受脚手架(harness)影响很大,厂商自报分数和第三方复现常有差距;同一基准不同版本不可比。

面试回答(2分钟版)

Agent 评测平台我设计了四个核心模块。第一是数据集版本化管理,每个数据集有版本号和 schema,新增样本是 minor 版本,修正标注是 patch 版本,保证评测可复现。标注质量通过交叉验证和 Cohen’s Kappa 一致性度量控制。第二是多维度评测引擎,不只看生成质量,还要评检索质量用 Recall 和 MRR、工具调用正确性、任务完成度和安全性。其中 Agent Task Completion 是最难评的维度,简单任务用脚本验证,复杂任务需要 LLM-as-Judge 加人工校准。第三是发布门禁,CI/CD 中集成快速评测和标准评测两级门禁,关键指标劣化超过阈值直接阻断发布。第四是回归检测,逐 query 对比新旧版本找出劣化点,按类别归因是检索问题还是生成问题,用统计检验判断差异是否显著。落地时不必全部自研:评测可以用 DeepEval、Ragas、promptfoo 这类开源框架跑,结果挂到 Langfuse 或 LangSmith 的 trace 上;公开基准像 SWE-bench Pro、τ²-bench 只做模型选型参考,而且要注意版本和污染问题,比如 OpenAI 已经不再报告 SWE-bench Verified。整个平台的核心价值是把”凭感觉调参”变成”数据驱动迭代”。

追问与易错

追问方向:

  • “LLM-as-Judge 有什么偏差?”→ 位置偏差(偏好第一个答案)、冗长偏差(偏好更长的回答)、自我偏好(偏好自己模型的输出);缓解方法:多次评测取均值、用不同模型交叉评、定期人工校准评分标准
  • “评测成本怎么控制?”→ 快速迭代用核心子集(50-100 条代表性用例),全量评测定期跑;LLM 评分先在人工对齐集上验证小模型(各家 mini / flash / turbo 档)是否够用,够用就替代昂贵模型;缓存重复评测结果避免相同输入重复调用
  • “数据集多大才够?”→ 取决于置信区间要求。通过率的 95% 置信区间半宽约 1.96×√(p(1−p)/n):通过率 0.8 时,50 条约 ±0.11(只够粗筛),200 条约 ±0.055,要到 ±0.03 需要约 700 条。比较两个版本时用同一批样本做配对检验(逐 query 对比),比单纯堆数量更有效
  • “怎么处理非确定性?”→ 同一 query 多次运行(3-5 次)取中位数或均值消除随机波动;设置 temperature=0 减少采样随机性;评测报告附带置信区间而非单一数字

易错点:

  • ❌ “单次评测就能下结论”——必须多次运行+统计检验
  • ❌ “只评最终答案”——Agent 需要评工具调用序列和中间步骤
  • ❌ “人工标注一定准确”——需要一致性度量和仲裁机制
  • ✅ 核心思路:可复现(版本化)+多维度(不只看准确率)+自动化(CI门禁)+可归因(回归分析)