Week 4 · Evaluation 与 Debugging
可复习 · 待写自己的解释本章材料
- OpenAI Agents SDK · Tracing:Agents SDK 怎样记录每一步(trace 和 span)
- DeepLearning.AI · Agentic AI(吴恩达):Module 1 的 Evaluating agentic AI (evals)
- Anthropic · Building effective agents:测试 agent、在沙盒里充分测试再上线
你四周计划里的具体视频(OpenAI Academy、DeepLearning.AI、Agents SDK 教程)还在 Notion 里,导入后放在这里。
重点
- Trace 是一次运行的完整记录。 每一次模型调用、工具调用、交接和 guardrail 检查都是其中的一段(span)。Agents SDK 默认开启 tracing。
- 调试 agent 先看 trace。 找到第一步出错的地方,而不是只盯着最终答案。
- Eval 是用一组固定的测试任务反复运行,衡量改动之后是变好了还是变坏了。可以评估最终结果(端到端),也可以评估单个步骤,比如有没有选对工具、参数对不对。
- 误差分析:把失败的例子按原因归类,比如选错工具、参数错、理解错题意、工具本身出错,然后先修数量最多的那一类。
- 修复后用同一组 eval 重新跑,确认真的修好了,而且没有把别的地方弄坏。
由 Claude 根据 OpenAI Agents SDK 的 Tracing 文档、DeepLearning.AI《Agentic AI》课程的 evals 一节,以及 Anthropic 的 Building effective agents 整理。读的时候哪一条看不懂,就把它记到「复习」的“我卡在哪里”。
难点
- 最终答案对,过程可能是错的,只是碰巧答对;最终答案错,原因可能在很早的一步。
- 模型的输出有随机性,同一个任务要多跑几次才能下结论。
- 用另一个模型来打分(LLM-as-judge)也会出错,要先用人工标注检查这个“评分员”靠不靠谱。
- 只看平均分会掩盖严重但少见的失败,这和分类专题里“准确率掩盖漏报”是同一个道理。
由 Claude 根据 上述材料;第 3、4 条是评估方法里的常见问题,不出自某一份特定文档 整理。读的时候哪一条看不懂,就把它记到「复习」的“我卡在哪里”。
动手看
下面是一次运行的 trace(虚构的例子):用户问“我上个月给房东转了多少钱?”
| 步骤 | 类型 | 内容 |
|---|---|---|
| 1 | 模型调用 → 工具调用 | get_transactions({ "month": "2026-09", "payee": "房东" }) |
| 2 | 工具结果 | []:收款人叫“房东”的记录有 0 条 |
| 3 | 模型回答 | “上个月你没有给房东转账。” |
容易混淆的几个概念
| 概念 | 回答的问题 |
|---|---|
| Trace | 这一次运行,每一步具体发生了什么? |
| Eval | 在一组固定任务上,这个版本表现得怎么样? |
| 端到端评估 | 最终结果对不对? |
| 单步评估 | 某一步(选工具、填参数)做得对不对? |
| 误差分析 | 失败的例子主要是哪一类原因造成的? |
一个记法:trace 看一次运行的细节,eval 看很多次运行的整体。
来源
- 材料见本页“本章材料”,所有链接都在 2026-10-29 打开确认过;trace 和 span 的说法来自 Agents SDK 的 Tracing 文档。
- 重点、难点、示意流程和测验由 Claude 根据本页“本章材料”里的文档整理。示意流程和操作清单是虚构的教学例子,不是真实运行的结果。
- 学习目标来自你的四周 Agent 学习计划截图;计划里的具体视频和任务尚未导入。