【免费下载链接】pandaprobe
open source agent engineering platform: traces, evals, and metrics to debug and improve your AI agents. Integrates with LangGraph, CrewAI, Claude Agent SDK, and more.
PandaProbe 是一款开源的 AI Agent 工程平台,提供 traces、evals 与 metrics 能力,帮助你调试并持续改进基于 LangGraph、CrewAI、Claude Agent SDK 等框架构建的智能体。这篇文章面向新手,用一篇就能讲清 PandaProbe 评估体系(Evals)的四大核心概念:Eval Runs(评估运行)、Metrics(指标)、Scores(评分)与Monitors(监控器),帮你快速建立完整心智模型。
评估体系全景:一张图看懂四个核心概念
在深入细节之前,先看一张图。PandaProbe 的评估体系可以概括为四步流水线:
- 一个Eval Run选定要评估的 traces 或 sessions;
- 一个或多个Metrics作用于每个被选中的对象;
- 每个 metric 产出一条Score,包含分数值、原因与元数据;
- 可选的Monitor按调度周期重复创建 Eval Runs。
上图即控制台中的 Evaluations 页面,五大入口正好对应本文要讲的核心概念:两次评估运行(Trace/Session Eval Runs)、定时监控(Monitors)与两类评分(Trace/Session Scores)。
四个概念的关系可以记一句话:Monitor 是"闹钟",Eval Run 是"一次批处理",Metric 是"评分标准",Score 是"成绩单"。
Eval Runs 入门:一次批量评估任务是如何执行的
Eval Run(评估运行)是一个批量作业:把一组指标应用到一批目标 traces 或 sessions 上。每个 Eval Run 都有这些要素:
| 配置项 | 说明 |
|---|---|
| 目标类型 | TRACE(单次交互)或SESSION(整个会话生命周期) |
| 指标列表 | 本次运行要执行哪些 Metrics |
| 过滤器 | 按时间、状态、用户、标签等筛选评估范围 |
| 采样率 | 只评估匹配数据的一部分,控制成本 |
创建 Eval Run 后,PandaProbe 会异步处理:解析目标数据 → 采样 → 分发给后台 worker → 立即返回PENDING状态(API 返回202 Accepted)。运行生命周期有四个状态:
| 状态 | 含义 |
|---|---|
PENDING | 已创建,等待 worker 接手 |
RUNNING | 正在评估中 |
COMPLETED | 全部指标执行完毕(个别分数可能失败) |
FAILED | 运行本身遇到致命错误 |
💡 新手提示:评估是异步的,提交后无需等待,稍后回到控制台查看结果即可。运行记录中会跟踪evaluated_count与failed_count,方便你监控进度与失败。
Metrics 指标:11 个内置指标怎么选
Metric(指标)是可复用的评估函数,对单条 trace 或单个 session 打分。PandaProbe 内置11 个指标,分两大类:
Trace 级指标(9 个):单次交互答得好不好
大多数 trace 指标采用LLM-as-judge方式:从 trace 中提取关键信息 → 让裁判 LLM 对某个质量维度打分 → 解析结构化结果为分数。
| 指标 | 方法 | 回答的问题 |
|---|---|---|
task_completion | LLM 裁判(2 阶段) | Agent 完成了用户的任务吗? |
tool_correctness | LLM 裁判(2 阶段) | Agent 选对工具了吗? |
argument_correctness | LLM 裁判(3 阶段) | 工具调用参数正确吗? |
step_efficiency | LLM 裁判(2 阶段) | 执行过程有多精简高效? |
confidence | LLM 裁判(1 阶段) | Agent 的行动果断、有依据吗? |
plan_adherence | LLM 裁判(3 阶段) | Agent 遵守了自己声明的计划吗? |
plan_quality | LLM 裁判(3 阶段) | 计划本身完整且结构良好吗? |
coherence | 嵌入余弦距离 | 输出与输入逻辑一致吗? |
loop_detection | 混合相似度 | Agent 是否在跨 trace 重复打转? |
其中coherence与loop_detection不走 LLM 裁判,而是用嵌入或相似度分析,速度快且结果确定。
Session 级指标(2 个):整个会话可靠吗
Session 指标评估完整的 Agent 生命周期,聚合会话内所有 trace 的信号:
| 指标 | 聚合方式 | 回答的问题 |
|---|---|---|
agent_reliability | Max-compose + top-k 尾部风险 | 最坏情况下会失败得多严重? |
agent_consistency | 加权 RMS 聚合 | 全程表现是否平稳一致? |
Session 聚合是确定性的:先为每条 trace 计算四个信号(confidence、loop_detection、tool_correctness、coherence),再做数学合成,聚合阶段零 LLM 调用。这种两步式设计让低分会"可解释"——你能回溯到具体是哪几条 trace、哪个信号拖低了会话分数。
📌 新手建议:调试具体失败案例时选 trace 级指标(从task_completion入手);想评估整个会话/工作流的可靠性时选 session 级指标(从agent_reliability入手)。
Scores 评分:评估结果长什么样
Score(评分)是"一个指标作用于一个 trace/session"后落库的结果,也是你在控制台查看、通过 API 查询、观察趋势的基本单位。每条 Score 包含:
| 字段 | 说明 |
|---|---|
name | 产生它的指标,如task_completion |
value | 分数值(0–1 的数值、布尔或分类值) |
data_type | NUMERIC/BOOLEAN/CATEGORICAL |
source | 来源:AUTOMATED(评估运行)/ANNOTATION(人工标注)/PROGRAMMATIC(SDK 提交) |
status | SUCCESS/FAILED/PENDING |
reason | LLM 生成的评分理由,人类可读 |
metadata | 结构化元数据:阈值、中间结果、信号分解等 |
eval_run_id | 回链到产生它的 Eval Run(手动评分为 null) |
阈值(Threshold):不改分数,只改"及格线"
每个指标都有一个默认阈值(如 0.5),分数 ≥ 阈值即为通过。阈值可以按 Eval Run 覆盖——你可以在不改指标本身的前提下,随时调整质量标准。阈值只影响通过/失败的判定,不会改变分数值本身。
Monitors 监控器:让评估自动定时跑
Monitor(监控器)是一份"保存的评估配置 + 调度计划":把目标类型、指标、过滤器、采样率与调度周期固化下来,由系统按节奏自动创建 Eval Runs。典型场景:
- 每日生产 trace 质量巡检
- 每周 session 可靠性审计
- 版本发布后的回归监控
- 对高价值用户、特定标签或环境的持续评估
关键配置项:
| 配置项 | 说明 |
|---|---|
| Cadence(调度) | every_6h、daily、weekly,或自定义 cron(如cron:0 3 * * *每天凌晨 3 点) |
| Sampling rate | 每次运行评估匹配数据的比例,如0.1表示只评估 10% |
only_if_changed | 上次运行后没有新数据就跳过本次运行,避免重复评估、控制成本 |
Monitor 有两个生命周期状态:ACTIVE(按计划运行)与PAUSED(暂停调度)。你也可以随时手动触发(trigger)一次立即运行,不必等下一个调度点。
Trace 评估 vs Session 评估:怎么选?
| Trace 评估 | Session(Agent)评估 | |
|---|---|---|
| 回答的问题 | "这次请求处理得好吗?" | "整个会话可靠吗?" |
| 评估单元 | 单条 trace | 同一session_id下的所有 trace |
| 典型指标 | task_completion、tool_correctness | agent_reliability、agent_consistency |
| 适用场景 | 调试具体失败、回归测试单次交互 | 观察质量随会话的衰减、定位需优先复查的会话 |
两者共用同一套底层机制(过滤器、指标、评分、监控器),只是评估粒度不同。实践中通常两者搭配使用:trace 评估定位"哪一步错了",session 评估回答"这个 Agent 整体能不能上生产"。
核心概念在源码中的位置
想进一步深入了解,可以从这些模块入手(均为相对仓库根目录的路径):
- 评估领域实体(EvalRun / TraceScore / SessionScore):backend/app/core/evals/entities.py
- 指标基类与工具:backend/app/core/evals/metrics/base.py
- Trace 级指标实现(每个指标一个目录):backend/app/core/evals/metrics/trace/
- 会话级指标实现:backend/app/core/evals/metrics/session/agent_reliability/metric.py、backend/app/core/evals/metrics/session/agent_consistency/metric.py
- 调度周期(cadence)解析:backend/app/core/evals/cadence.py
- 评估 API 路由:backend/app/api/v1/routes/evaluations.py
- 官方概念文档:docs/evaluation/get-started/concepts.mdx
总结:一张表记住 PandaProbe 评估体系
| 概念 | 一句话定义 | 类比 |
|---|---|---|
| Eval Run | 把一组指标应用到一批目标上的批量任务 | 一次考试 |
| Metric | 可复用的评估函数,产出 0–1 的分数 | 评分标准 |
| Score | 指标作用于单个对象后落库的结果 | 成绩单 |
| Monitor | 保存的配置 + 调度计划,自动重复创建 Eval Run | 闹钟/排课表 |
掌握这四个概念,你就能自由组合出从"手动评估单条 trace"到"每周自动审计生产会话"的完整工作流,正式进入 PandaProbe 评估体系的实战阶段。
【免费下载链接】pandaprobe
open source agent engineering platform: traces, evals, and metrics to debug and improve your AI agents. Integrates with LangGraph, CrewAI, Claude Agent SDK, and more.
相关推荐
solidcraft 参数化入门:约束、尺寸与历史树,一次讲清核心概念
solidcraft 参数化入门:约束、尺寸与历史树,一次讲清核心概念 如果你用过传统 CAD,一定熟悉这样的操作:画一条线、拉一个体,图纸就是最终结果,改尺寸
图形学3D渲染桌面应用MCP 服务Capistrano 核心概念速览:Stage、Role、Task 与 Filter 一次讲透
Capistrano 核心概念速览:Stage、Role、Task 与 Filter 一次讲透 Capistrano 是一款基于 Ruby、Rake 和 SSH
DevOpsCLI如何快速掌握TensorFlow核心概念:从入门到实战的完整指南
如何快速掌握TensorFlow核心概念:从入门到实战的完整指南 TensorFlow Course是一个专为初学者设计的开源项目,提供简单易用的TensorF
教程深度学习机器学习
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考