EvalView 是一款面向 AI 智能体的回归测试工具,核心思路是快照测试:记录智能体当前的行为,并在行为发生静默变化时得到通知。
用途
智能体返回 200 状态码、表面看起来正常,但一次模型更新、供应商切换或一行提示词修改,就可能让它跳过澄清步骤、调用错误的工具,或悄悄降低输出质量。此时测试仍然通过,用户却先于开发者发现问题。EvalView 正是为解决这类“静默行为漂移”而设计:它快照智能体的行为——调用了哪些工具、以什么顺序、产生什么输出——并在行为变化的那一刻告知使用者。
主要能力
- 快照与差异对比:记录智能体当前行为作为基线,之后检测与基线的任何漂移。
- 完整轨迹对比:对比整个轨迹,包括工具名称、参数和顺序,而不仅是最终字符串。
- 离线确定性对比:工具与序列的确定性差异对比可离线运行,无需 API 密钥。
- 可选的 LLM 评判:仅在需要输出质量评分时加入 LLM 评判。
- 快照接受:当新行为正确时,可用
evalview snapshot将其接受为新基线,类似 Jest 中更新快照。 - CI 回归门禁:在每次 PR 中给出包含差异、成本/延迟变化和通过/失败门禁的评论。
- 库形式使用:EvalView 也可作为库使用,支持多轮测试、统计/pass@k 运行、录制/回放 cassette、模型漂移金丝雀、带 Slack 告警的生产监控,以及从事故自动生成回归测试。
使用方式
基本循环是 snapshot 与 check。check 会返回结果,并对比整个轨迹。确定性工具与序列差异对比离线运行,无需 API 密钥;只有需要输出质量评分时才加入 LLM 评判。执行智能体本身仍可能产生后端 API 费用,--no-judge 跳过的是评判器,而不是这些调用。基于嵌入的语义比较为可选功能。
如果没有现成智能体,官方提供 30 秒演示,无需 API 密钥即可查看效果。
适用场景
- 在 CI 中作为合并时回归门禁,阻止行为回归进入主分支。
- 与可观测性工具(Langfuse、LangSmith)或指标评分工具(promptfoo、DeepEval、Braintrust)配合使用:后者用于可见性,EvalView 用作门禁。
- 支持的技术栈包括 LangGraph、CrewAI、OpenAI、Claude、Mistral、Ollama、MCP 以及任意 HTTP API。
限制与注意事项
- OpenAI 适配器迁移:OpenAI 已于 2026 年 8 月 26 日关闭 Assistants API。最新发布的 EvalView 0.8.1 仍使用该 API;Responses API 迁移目前是未发布的源码。如果使用
openai-assistants,请在运行测试前遵循迁移指南。仅凭 assistant_id 无法保留智能体的配置。其他适配器不受影响。 - 执行智能体可能产生后端 API 费用。
- 项目较年轻,主要由一位开发者构建。
- 官方每日在 09:00 UTC、PR 和推送到 main 时运行 Core Dogfood,覆盖非实时测试套件、类型检查、本地 mock-agent 快照/检查、
evalview demo、端到端流程和evalview monitor冒烟测试,不使用付费 API 凭据,也不进行付费推理调用。Live Provider Checks 仅在维护者明确选择在 main 上使用付费 API 时测试真实评估器和聊天助手,没有自动计划;绿色核心徽章不代表实时供应商健康,也不能排除供应商漂移。 - 许可证:Apache 2.0。