Agent Engineering 课程阅读

在 GitHub 查看原文

本页目录

L08 练习

run_chaos_eval.py 或 research-assistant 的代码,运行观察变化。本课零外部依赖。


练习 1:读收益矩阵,给每类故障配机制(理解类)

python eval_agent/run_chaos_eval.py,看混沌收益矩阵。

  1. 每类故障(slow/flaky/loop/crash/bomb/sideeffect)是被哪课的机制兜住的?
  2. 哪类故障的收益最大(浪费 token 降幅最大)?为什么?
  3. crash 场景全开的重做倍数(rerun_factor)是 1.3 而非 1.0,为什么?(提示:L06 checkpoint 续跑会重做最后一个未完成节点,不是零重做。)

验收:能给出「故障 → 机制」的对应表,指出收益最大的故障及其原因。


练习 2:设计实验——单机制开关矩阵(设计实验类)

现状矩阵只有「全关 vs 全开」两列。更细的矩阵是「每个机制单开」。

  1. 假设:每类故障主要由一个机制兜住,单开该机制就能挡住。
  2. 实验设计: - 在 run_chaos_eval.py 的 PROTECTIONS 加 "only_L01"(只开步数预算)/ "only_L02"(只开成本预算)等单开配置。 - 跑「故障 × 单机制」矩阵,看 slow 故障是不是只有开 L03(熔断)才被挡住。
  3. 预期:slow 故障在 only_L01/only_L02 下仍 polluted(只有 L03 能挡慢工具的降级污染)——证明机制和故障是一一对应的。
  4. 思考:为什么全开比单开好?(提示:故障会叠加——一次运行可能同时遇到慢工具 + 超支,需要多个机制协同。L09 的端到端会演示这种叠加。)

验收:产出「故障 × 单机制」矩阵,能指出每类故障的最小必要机制。


练习 3:设计实验——治理零税的严格证明(设计实验类)

纯净跑回归行证明「全开不劣于全关」,但只看了 token。更严格的证明要看耗时不劣化。

  1. 假设:全开防护对纯净跑的耗时影响 < 5%(治理零税)。
  2. 实验设计: - 在 run_chaos_eval.py 给每个场景加 elapsed 字段(计时)。 - 跑 pure 全关 vs pure 全开,对比耗时。 - 算耗时差异百分比。
  3. 预期:差异 < 5%(防护机制只在故障时生效,正常路径几乎零开销)。
  4. 思考:哪些机制即使无故障也有固定开销?(提示:step_count 记账、token 记账是每步几行代码,开销极小;熔断器是每次工具调用查一次状态。这些都是「常数级」开销,不随任务规模增长。)

验收:产出纯净跑耗时对比(全关 vs 全开),证明治理零税(差异 < 5%)。


练习 4:思考题——mock 数字和真实数字差多少(取舍类)

报告里标注「mock 演示数字,真实需 --real」。

  1. 思考:mock 的成功率(33%→100%)和真实的会一样吗?(提示:成功率是结构性的——故障下裸奔必崩、开防护必兜住,这个结构 mock 和真实一致。绝对 token 数不同。)
  2. 思考:为什么 mock 跑批也够做可靠性验收?(提示:验收的是「机制有没有生效」,不是「绝对成本」。机制生效(步数预算触发、熔断打开、幂等 no-op)这些是确定性的,mock 能精确复现。)
  3. 结论:用一句话说清 mock 验收什么(机制生效的结构),真实 API 验收什么(绝对数字/延迟)。

验收:能说清 mock 验收「机制生效的结构」(确定性),真实 API 验收「绝对数字」(成本/延迟),以及为什么两者都要。