AI Agent & Skill 测评方案及落地实践
一句话概括
腾讯技术工程网关测试团队给出一套生产级 Agent/Skill 测评框架:用确定性评分器、Rubric 评分器、人工评分器三类评委,围绕功能正确性、过程质量、效率成本、鲁棒性安全、体验对齐五大维度,结合 Trace、基线、用例集和 CI 流水线做可重复回归。
实践内容
Eval 公式
Eval(评估)= Agent 输入
-> 执行
-> 捕获执行过程(Trace + 产物)
-> 一组检查规则
-> 可对比的分数
Trace 是 Agent 执行过程中的结构化日志,记录每一步工具调用、参数、返回值和思考过程。作者强调,测评目标不是偶尔人工验证,而是每次变更都能快速跑出可比较分数,用数据代替直觉,用全量代替抽查。
三类评分器
确定性评分器
- 脚本 / 断言 / Lint / AST
- 快、便宜、客观、可复现
- 负责所有"能用代码判断"的事
Rubric 评分器
- LLM-as-Judge + Prompt + JSON Schema
- 处理开放式输出
- 负责"代码搞不定但能结构化描述"的事
人工评分器
- 领域专家
- 昂贵、慢、黄金标准
- 负责校准、诊断、兜底
优先级是:确定性评分器 > Rubric 评分器 > 人工评分器。能用代码判断的绝不用模型,必要时用模型,人工用于校准。
确定性规则示例
expected_behavior:
# 过程检查:是否调用了指定工具
- tool_call: "mcp"
contains: "tperf-mcp"
# 结果检查:产物是否存在
- file_exists:
- "cpu.json"
- "nic.json"
# 响应检查:是否包含关键结论
- response_contains:
- "测试有效"
- "出现CPU瓶颈"
- "业务QPS平稳"
# 效率检查:工具调用次数
- max_tool_calls: 10Rubric 规则示例
rubric:
observation_points:
- 回答是否基于项目规范/知识库而非通用知识
- 推理过程是否清晰连贯
- 是否存在幻觉或编造内容
scoring:
process_score: 0-100 # 过程分
result_score: 0-100 # 结果分五大维度
| 大类 | 子维度 | 主要评委 | 优先级 |
|---|---|---|---|
| 功能正确性 | 结果正确性、任务完成度、指令遵循、工具调用正确性 | 代码 | P0 |
| 过程质量 | 推理合理性、步骤最优性、信息完整性、上下文利用率 | Rubric + 人工 | P1 |
| 效率与成本 | Token 消耗、工具调用次数、延迟、失败重试率 | 代码 | P1 |
| 鲁棒性与安全 | 一致性、异常恢复、抗对抗、幻觉率、越权风险、合规性 | 代码 + 人工 | P0 |
| 体验与对齐 | 语气风格、清晰度、主动澄清、同理心、品牌一致性 | Rubric + 人工 | P2 |
用例设计四场景
1. 触发条件用例
- 正向:合法表述都能触发
- 负向:相似但不相关的 prompt 不误触发
2. 核心逻辑用例
- 按 Skill 核心分支逐条覆盖
- 每条核心分支至少一个用例
- 关注组合、阈值边缘、跨分支冲突
3. 产物质量用例
- 文件完整、格式正确、关键结论完整
- 负向覆盖内容缺失、格式错误、幻觉编造
4. 异常容错用例
- ID 不存在、非法格式、缺少 ID、数据量极大、数据为空、工具故障
基线方法
用例基线是单个用例执行一次后,经人工确认的预期过程和预期结果快照。基线同时服务确定性评分器和 Rubric 评分器:
过程对比:
- 本次工具调用序列 vs 基线
- 关键步骤缺失或顺序偏离 -> 过程退化
- Rubric 判断思维链合理性与步骤选择
结果对比:
- 本次响应/产物 vs 基线
- 关键内容缺失或产物不一致 -> 结果退化
- Rubric 判断结论准确性、表述完整性、建议质量
效率对比:
- 本次 token/步骤数 vs 基线
- 超出基线一定比例(如 >50%) -> 效率退化
TPerf 落地案例
TPerf AI 分析 Agent 是功能工具型 Agent,部署在 Knot 智能体平台,通过 MCP 工具调用 TPerf-API 获取性能压测数据,结合知识库检索做深度分析,经决策树判断资源瓶颈和压测有效性,输出结构化性能分析报告。
评分实现:
- 操作步骤评分:使用 LCS 对齐基线与 Trial 的操作步骤序列;步骤不一致、多余、缺少、顺序错误各扣 2 分
- 效率评分:耗时以 300s 为基准,每超标 10% 扣 1 分;Token 以基线消耗为基准,每超标 10% 扣 1 分
- 报告评分:调用 CodeBuddy CLI 逐项对比基线报告与 Trial 报告;关键判定不一致直接扣 80 分
工程结构:
- API 封装层:Knot 智能体 API + TPerf 平台 API
- 配置层:模型、超时、评分标准、凭证、模型定价
- 用例定义层:按场景分组的 YAML 用例文件
- 采集层:基线数据采集器
- 评分层:操作步骤评分、效率评分、报告评分
- 执行层:用例执行器
- 工具层:快速评测脚本、报告生成器、重新评分工具、基线同步工具
- 解析层:AG-UI 事件流解析器
- 结果层:基线落盘、评分结果、中间文件、HTML 报告
摘录
当 AI Agent 从”Demo 可用”走向”生产可靠”,测评就是那道必须跨过的门槛。本文介绍了 TEG云架构平台部 网关测试团队 在 AI Agent 测评领域的体系化实践,面对 Agent 非确定性、黑盒化、错误级联放大三大难题,建立了一套”确定性评分器 + Rubric 评分器 + 人工评分器”三类组合的完整测评框架,覆盖功能正确性、过程质量、效率成本、鲁棒性安全、体验对齐五大维度,并已在 TPerf 性能平台智能分析 Agent 项目中落地验证。
Agent 的输出既有可程序化验证的硬指标(文件存在、调用正确),也有只能靠语义理解才能判断的软指标(推理合理性、建议质量)。单一评分手段无法兼顾两者,因此 Agent 测评没有”银弹评分器”,必须三类组合使用。
设计完用例后,我们只定义了 prompt 和检查规则,但并不确定 Agent 实际的执行过程和结果是什么样的。因此需要先跑一轮,看到真实的过程和结果,由人工评估是否可接受——如果 OK,就将这轮的过程和结果保留下来,作为该用例的预期基线。
过程评测的前提是能拿到结构化的执行轨迹。如果被测 Agent 只输出最终回答,没有可解析的中间过程,那么”工具调用检查”、“过程对比”、“基线对比”等评分器就无从下手。
涉及实体
- Prompt评估体系 —— 本文把 Prompt/Agent/Skill 的评估从场景回归扩展到 Trace、基线和 CI 流水线。
- Generator-Evaluator —— 三类评分器共同扮演独立评判者,避免被测 Agent 自评。
- Harness-Engineering —— 评测是 Harness 的验证闭环,决定 Agent 是否能进生产。
- OpenClaw-Skills —— Skill 是测评对象之一,文章提供触发、核心逻辑、产物质量、异常容错四类用例设计。
涉及主题
我的评注
这篇文章的价值在于把 Agent/Skill 测评从”跑几个 prompt 看看”推进到工程闭环:Trace 是可观测性基础,基线是可比较性基础,用例集是覆盖率基础,三类评分器是成本与可靠性的权衡。尤其是”负向触发用例”和”结构化 Trace”两点,能直接防住 Skill 误触发和过程不可复盘这两个常见坑。