Agent Evaluator:智能体能力自动测试与评估技能
概述
本技能系统化地自动测试与评估智能体(Agent)的综合能力。Agent 的核心公式为:Agent = LLM + 工具使用 + 记忆 + 规划与执行循环。评测从 LLM 基座能力 和 Agent 架构能力 两个层面解耦进行,最终输出综合成熟度等级与精准优化建议。
核心设计理念
- 双轨解耦:LLM 能力(大脑)与 Agent 架构能力(躯干)分开评测,精准定位瓶颈
- 六维场景:覆盖 RAG、小说创作、新媒体创作、编程、行业研究、问题解决 6 大应用场景
- EPFMS 指标:效能(Efficacy)、过程(Process)、效率(Frugality)、记忆(Memory)、安全(Safety)
- 成熟度分级:M0 玩具 → M1 助手 → M2 干将 → M3 专家,附 LLM/Agent 双轨等级
快速开始
# 运行完整评估(交互式选择场景)
python scripts/run_evaluation.py
# 指定场景和被测智能体
python scripts/run_evaluation.py --scenario rag,programming --agent-type openai --model gpt-4o
# 仅执行 LLM 基座能力评估
python scripts/run_evaluation.py --mode llm-only
# 仅执行 Agent 架构能力评估
python scripts/run_evaluation.py --mode agent-only
# 生成评估报告
python scripts/report_generator.py --input results/latest.json --output report
测试六维场景矩阵
本技能覆盖 6 大测试场景,每个场景包含多个子场景测试点。详细内容见 references/test-scenarios.md。
| 场景 | 核心特点 | 重点能力维度 | |------|---------|-------------| | RAG | 外部知识依赖、检索与生成耦合、幻觉控制 | 工具使用、安全、规划 | | 小说创作 | 长文本、长程一致性、人物/设定/情节记忆 | 记忆、上下文/长文本 | | 新媒体创作 | 目标明确(转化/点击)、风格多变、结构化 | Token效率、指令遵循 | | 编程 | 强逻辑、多文件、工具链复杂、错误恢复 | 工具使用、规划、执行 | | 行业研究 | 信息密集、多源整合、强事实性、结构化输出 | 工具使用、长文本、安全 | | 问题解决 | 开放性强、多步推理、环境交互 | 规划、记忆 |
双轨评估架构
1. LLM 基座能力评估(大脑)
见 references/evaluation-model.md。
测试不依赖外部工具时的"内功":
- 指令遵循:多约束生成、角色扮演、格式合规
- 逻辑推理:多步数学推理、因果推断、排除干扰
- 上下文利用:长文本信息提取、"大海捞针"、多文档交叉比对
- 函数调用:嵌套 JSON、枚举值边界、工具参数映射
- 幻觉控制:知识边界测试、拒答率评估
2. Agent 架构能力评估(躯干)
见 references/evaluation-model.md#agent-架构能力评估。
测试与外部环境交互的闭环能力:
- 规划与拆解:任务分解、子任务依赖、并行识别
- 工具编排:精准选工具、参数传递、重试与降级策略
- 记忆管理:上下文窗口与外部记忆协调、摘要压缩、会话隔离
- 执行流控:死循环检测、主动停止、冗余调用剔除
- 异常恢复:空结果、API超时、文件不存在的自救能力
评估模型(AEGIS)
AEGIS(Agent Evaluation & Grading Integrated System)由指标层、评估机制层和综合算分层组成。详见 references/evaluation-model.md。
EPFMS 五维指标
| 维度 | 缩写 | 评估重点 | 测量方法 | |------|------|---------|---------| | 效能 | E | 任务完成度、准确率 | 代码 Pass@k,RAG F1,任务成功率 | | 过程 | P | 规划合理性、工具调用准确率 | 工具选择准确率、反思频次、检索相关性 | | 效率 | F | Token 消耗、API调用次数 | 每任务 Token、步骤数、压缩率 | | 记忆 | M | 长程信息保持、冲突消解 | 精确检索率、多跳检索成功率、冲突消解率 | | 安全 | S | 幻觉率、越权操作率 | 幻觉率、危险操作拒绝率、负样本拒绝率 |
场景权重矩阵
| 场景 | E | P | F | M | S | 说明 | |------|---|---|---|---|---|------| | RAG | 35% | 25% | 15% | 10% | 15% | 准确性最重要 | | 编程 | 40% | 30% | 15% | 5% | 10% | 跑通代码是硬指标 | | 小说创作 | 25% | 10% | 15% | 45% | 5% | 长程记忆是生命线 | | 新媒体 | 30% | 20% | 30% | 10% | 10% | Token成本极度敏感 | | 行业研究 | 30% | 30% | 10% | 15% | 15% | 多源推理与数据防伪并重 | | 问题解决 | 30% | 35% | 15% | 10% | 10% | 动态调整规划能力最重要 |
综合得分 = w₁E + w₂P + w₃F + w₄M + w₅S
成熟度等级体系
LLM 成熟度
| 等级 | 名称 | 表现 | |------|------|------| | L0 | 菜鸟级 | 丢失指令约束,无法生成合法 JSON,严重幻觉 | | L1 | 可用级 | 遵循简单指令,单步推理正确,长上下文易遗忘 | | L2 | 专业级 | 多约束遵循 >95%,多步推理稳定,复杂 JSON 零失误 | | L3 | 专家级 | 涌现能力、自我纠错、极长上下文精准提取 |
Agent 成熟度
| 等级 | 名称 | 表现 | |------|------|------| | L0 | 提线木偶 | 单步执行,无规划,工具报错即崩溃,无记忆 | | L1 | 反射弧 | ReAct 闭环,但易死循环,不会主动退出 | | L2 | 自适应者 | 动态规划,反思换策略,长期记忆读写,自主判断完成 | | L3 | 自主编排者 | 极高容错,DAG 并发,高级记忆管理,Token 极度克制 |
综合成熟度(LLM × Agent 二维矩阵)
| 综合等级 | LLM | Agent | 表现特征 | 优化方向 | |---------|-----|-------|---------|---------| | M0 玩具 | L0-L1 | L0 | 只能聊天,无法做事 | 换模型,重写 Prompt | | M1 助手 | L2 | L1 | 单步工具可用,需人指引 | 优化重试逻辑,加入 ReAct | | M2 干将 | L2 | L2 | 独立完成复杂任务,Token 消耗大 | 优化记忆压缩,规划剪枝 | | M3 专家 | L3 | L3 | 极度鲁棒,自主规划,Token 极省 | Multi-Agent 协作 |
执行流程
测试启动 → 用例生成器(场景×难度随机组合)→ 环境沙箱初始化(注入工具/Mock API/记忆库/长文档)
→ 被测智能体执行(记录轨迹 Trajectory)→ 双引擎评估(规则判定 + LLM-as-a-Judge)
→ 指标聚合(套用场景权重公式计算 EPFMS)→ 输出报告(雷达图 + 等级 + 薄弱项定位)
预置测试用例
见 references/test-cases-db.md,包含每个场景的:
- 标准测试用例(输入 + 预期轨迹 + 评估方式)
- 故障注入测试(API 报错、搜索结果为空、信息冲突等)
- 剥离测试(纯 LLM 测试 vs 纯 Agent 测试)
报告输出
评估完成后生成:
- 控制台摘要:总分 + 等级 + 瓶颈定位 + 优化建议
- JSON 详细数据:
results/{timestamp}/目录,含原始轨迹、各维度得分 - HTML 雷达图报告:可视化 EPFMS 五维得分对比
- 对比报告:(可选)多智能体横向对比
报告输出格式:
{
"agent": {"type": "openai", "model": "gpt-4o"},
"overall_score": 82.5,
"overall_level": "M2",
"epfms": {"E": 88, "P": 75, "F": 70, "M": 85, "S": 92},
"llm_score": 85,
"llm_level": "L2",
"agent_score": 78,
"agent_level": "L2",
"bottleneck": "Agent 执行流控",
"advice": "增加最大步数限制与反思退出机制,优化 Token 消耗"
}
脚本说明
| 脚本 | 用途 |
|------|------|
| scripts/run_evaluation.py | 主评估入口,协调全流程执行 |
| scripts/score_aggregator.py | 分数聚合与权重计算 |
| scripts/report_generator.py | 报告生成(JSON + HTML 雷达图) |
| scripts/mock_environment.py | 沙箱环境初始化与 Mock 注入 |
参考文件
| 文件 | 内容 | |------|------| | references/test-scenarios.md | 6大场景×子场景详细测试点 | | references/evaluation-model.md | AEGIS 评估模型、双轨评估细则 | | references/maturity-model.md | LLM/Agent/综合成熟度等级定义 | | references/test-cases-db.md | 预置测试用例库(含故障注入与剥离测试) |
微信扫一扫