本文档介绍了如何使用智能体评估来衡量和提升智能体的性能、安全性和质量。
如需详细了解模型评估,请参阅 Gen AI Evaluation Service 概览。
过程摘要
| 阶段 | 活动 | 目标 |
|---|---|---|
| 设计 | 定义评估案例 | 指定智能体任务和预期结果。 |
| 执行 | 运行推理 | 生成真实或模拟的对话轨迹。 |
| 评分 | 计算指标 | 使用自动化评分器(任务成功率、安全性)对跟踪记录进行评分。 |
| 优化 | 优化智能体 | 提出并验证对指令或工具的改进。 |
评估流程
评估遵循结构化的迭代工作流:
- 定义评估案例:评估案例是定义智能体任务的规范。一个评估用例可以包含一个或多个对话步骤、对话上下文(代理的状态),以及用于在推理期间模拟用户回答的规范。
- 运行推理:推理是指执行评估用例。如果评估用例包含对话方案,则在推理期间会模拟用户回答。
- 生成跟踪记录:每次推理运行都会在跟踪记录中捕获智能体的行为。跟踪记录是智能体行为的真实、不可变记录,包括模型输入、回答和工具调用。
- 计算指标:指标是使用预构建或自定义评分器为每个跟踪记录计算的分数。某些指标(例如完全匹配)是基于参考的,需要包含参考答案的评估用例。其他指标(例如实用性)则不依赖参考,而是单独评估跟踪记录。通过这种自动化评估,您可以对从生产流量或外部日志中捕获的跟踪记录进行评分,而无需依赖托管式测试环境。
- 进行分析:分析指标、评分标准和判定结果,找出智能体的主要问题,将智能体问题与测试用例联系起来,并生成改进建议。
- 优化代理:使用优化功能管理整个评估周期。此自动化流程会分析结果,向智能体提出改进建议,并反复重新运行该流程,以验证性能提升情况。
评估工作流
您可以在工作流的两个主要阶段集成评估:
- 本地开发迭代:在本地评估基于智能体开发套件 (ADK) 的智能体,以便快速迭代提示词工程和工具配置。
- 已部署智能体评估:通过分析历史轨迹或针对智能体端点运行合成基准测试,衡量已部署智能体的质量。
核心功能
即使没有现成的测试数据,智能体评估也能帮助您构建初始评估套件。以下功能有助于自动生成测试用例并优化智能体系统:
场景生成和用户模拟:根据智能体的指令和工具定义,自动生成多样化的多轮合成测试场景。通过这种自动化,您无需手动编写初始测试用例,即可立即开始测试。
环境模拟:拦截特定工具调用,以注入自定义行为、模拟数据或模拟错误(例如 HTTP 503 错误或延迟时间峰值)。通过此模拟,您可以验证代理弹性,而不会影响生产后端。
多轮评估:使用多轮自动评估器自动评估整个对话历史记录。这些评估器会分析意图提取、动态生成评分准则,并提供客观的验证结论,以帮助确保模型遵循指令。
提示优化:使用提示优化功能,以编程方式生成和验证经过优化的系统指令。优化框架会识别故障点,并以迭代方式提出有针对性的更新。
使用 AI 编码辅助进行评估
如果您使用 Gemini CLI 或其他 AI 编码辅助,则可以安装智能体技能,让助理学习本页面中介绍的智能体评估方法。每项技能都会直接在编码会话中提供评估工作流、数据集架构、指标选择指南和失败分析步骤,因此您的助理无需离开编辑器即可构建、评分和改进评估。
每个技能后面都有安装说明。
Agents CLI 评估技能
一个由 CLI 驱动的工作流,用于使用 agents-cli eval 命令评估和优化智能体开发套件 (ADK) 智能体。此技能涵盖以下内容:
- 准备评估数据集并使用用户模拟功能合成多轮场景
- 运行推理、对轨迹进行评分以及分析故障集群
- 通过“评估-修复”循环迭代提示和工具
如需安装 ,请运行以下命令:
npx skills add https://github.com/google/agents-cli --skill google-agents-cli-eval
Agent Platform GenAI Evaluation Service 飞轮技能
一个由 SDK 驱动的 playbook,旨在通过 Gemini Enterprise Agent Platform GenAI Evaluation Service,使用 Agent Platform GenAI Evaluation SDK (client.evals.evaluate()) 评估和改进模型和智能体。此技能涵盖:
- 通过会话跟踪记录、DataFrame 或合成生成构建评估数据集
- 选择、配置和编写自定义指标,并使用 LLM 作为评判者进行评分
- 分析评分标准判定结果和损失模式,以推动具体改进
如需安装 ,请运行以下命令:
npx skills add https://github.com/google/skills --skill agent-platform-eval-flywheel