使用 Arize Phoenix 对 smolagents 进行跟踪与评估
Hugging Face 详细介绍了将 Arize Phoenix 与 smolagents 库集成的工作流,以提供 AI 代理的实时可观测性和系统化评估。此集成使开发者能够可视化代理的逐步决策过程,并使用基于 LLM 的评判来衡量其工具输出的相关性和准确性。
实时跟踪以实现代理可观测性
跟踪提供了对代理内部工作流的细粒度视图,使开发者能够通过跟踪从工具调用到最终响应生成的每一步来调试问题并优化性能。
在 smolagents 中实现跟踪,开发者使用 OpenTelemetry 和 OpenInference 进行仪表化,Arize Phoenix 充当可视化平台。设置过程包括安装 smolagents[telemetry] 模块并注册指向 Phoenix 实例的 tracer provider。配置完成后,每次代理调用都会自动捕获为 Phoenix 仪表盘中的一次跟踪,从而提供代理决策过程的“X 光”视图。
通过 LLM‑as‑a‑Judge 进行系统化评估
评估(evals)用于衡量代理检索、处理和呈现信息的效果。实现此目标的主要方法是 “LLM‑as‑a‑judge” 方法,即使用高能力模型(如 GPT‑4o)对另一个模型或工具的表现进行打分。
评估工具相关性
在实际实现中,可以通过以下步骤评估搜索工具(如 DuckDuckGoSearchTool)的相关性:
- 检索执行 Span:使用
SpanQuery提取调用该工具的特定跟踪,以隔离输入(查询)和输出(结果)。 - 应用提示模板:使用专门的提示模板,例如
RAG_RELEVANCY_PROMPT_TEMPLATE,来引导评判 LLM。 - 分类结果:评判 LLM 分析输入和输出,将结果分类为 “相关” 或 “不相关”。
- 记录结果:将二元分数(相关为 1,不相关为 0)记录回 Arize Phoenix,以进行系统化分析。
多样化的评估模板
Arize Phoenix 提供了一套预编写、预测试的评估模板库,可适配不同的代理类型和使用场景。通过切换提示模板,开发者可以衡量超出简单相关性的各种性能指标。
| 评估模板 | 适用的代理类型 |
|---|---|
| 幻觉检测 | RAG 代理、通用聊天机器人、基于知识的助理 |
| 检索数据问答 | RAG 代理、研究助理、文档搜索工具 |
| RAG 相关性 | RAG 代理、基于搜索的 AI 助手 |
| 摘要 | 摘要工具、文档消化器、会议记录生成器 |
| 代码生成 | 代码助理、AI 编程机器人 |
| 有害内容检测 | 审核机器人、内容过滤 AI |
| AI 与人类(真实标签) | 评估与基准工具、AI 生成内容验证器 |
| 参考(引用)链接 | 研究助理、引用工具、学术写作辅助 |
| SQL 生成评估 | 数据库查询代理、SQL 自动化工具 |
| 代理函数调用评估 | 多步推理代理、调用 API 的 AI、任务自动化机器人 |
Sources
相关
- Dispatch
- Dispatch
- Dispatch
- Dispatch
- 项目