Appearance
第 06 课 · 自主 Agent:最后才选的那档
前五种模式路径都由你定;自主 Agent 是唯一「路径由模型定」的。 它最强也最危险 —— 所以放在模式篇最后,且默认答案是「先别用」。
本课要解决的问题
前面五课(提示链 / 路由 / 并行 / 编排-执行 / 评估-优化)都是 Workflow:结构你写死。本课讲第六种,也是唯一真正的 Agent:
给模型 一个目标 + 一组工具,让它 自己规划、循环执行,直到自认为完成。
本课回答:什么时候才真需要它、上线前必须备齐什么、以及为什么它这么危险。
一、自主 Agent 长什么样:ReAct 循环
┌── 想(Reason):看目标和现状,决定下一步调哪个工具
│ ↓
│ 做(Act):真的调用工具(查库 / 算数 / 写数据)—— 要沙箱 + 权限
│ ↓
│ 看(Observe):把工具结果拼回上下文
│ ↓
└── 没做完 → 回到「想」;做完 → 输出最终答案- 和 Function Calling 的区别: 单次 Function Calling 调 一次固定 工具;自主 Agent 循环多次、调哪个由模型临场决定。
- 另一种形态: Plan-and-Execute —— 先让模型规划完整步骤,再逐步执行(步骤较明确时用)。
二、什么时候才真需要(必须四条全中)
只有 同时满足 以下几点,才值得上自主 Agent:
① 任务开放:步骤无法预先定义(你自己都写不出固定流程图)
② 要多步、且下一步依赖上一步的真实结果
③ 工具组合不确定:可能查、可能算、可能改,顺序说不准
④ 价值足够高:低频但重要,扛得住成本和延迟只要有一条不满足,回退到 Workflow。 比如「顺序其实固定」→ 提示链;「只是要分类」→ 路由;「只查一次」→ 单次 Function Calling。
网校里少数合理场景
「学习规划助手:根据我最近的成绩、进度、错题,自己查数据、分析薄弱点,制定并动态调整一份补习计划。」
这类任务步骤真的说不准(要查几张表、分析几轮、要不要调组卷),才配得上自主 Agent —— 而且仍要人在环审批关键动作。
三、为什么它危险(四个坑)
| 坑 | 说明 |
|---|---|
| 错误累积 | 每轮基于上轮结果,一步错则步步错,越跑越偏 |
| 提示注入 | 工具 / 检索结果拼回上下文,若藏恶意指令,模型可能当命令执行(见第 07 课) |
| 成本 / 延迟失控 | 循环轮数不定,3 轮和 15 轮成本差数倍,延迟不可预测 |
| 上下文爆窗口 | 每轮工具结果累积,跑久了撑爆窗口 → 必须压缩 / 丢弃旧结果(见第 09 课) |
长程 Agent 崩溃,一大半是「上下文没管好」+「错误累积」。
四、上线前必备清单(缺一不可)
□ 沙箱:工具在受限环境执行,炸了也影响不到生产
□ 人工审批:高风险 / 写操作(改成绩、发通知)必须人点确认
□ 审计日志:每一步「想了什么、调了什么、返回什么」全记录,可回溯
□ 上限与熔断:最大循环轮数 / 最大成本 / 超时,到了就停并降级
□ 上下文管理:及时压缩旧工具结果,关键结论存记忆
□ Eval:在你自己的任务上评过成功率与轨迹(见第 10 课)没有这份清单,就别把自主 Agent 放到用户面前。
五、渐进演进里的位置
提示链 / RAG(V1)
→ 路由 + RAG(V2)
→ 单次 Function Calling(V3)
→ 才轮到自主 Agent 分支(V4,且仅对开放任务)自主 Agent 不是起点,是终点。 前面都跑稳、确有开放任务、清单齐备,再开这道口子。
本课结论
- 自主 Agent 是唯一「模型定路径」的模式,最强也最险。
- 四条前置(开放 / 多步依赖 / 工具不定 / 高价值)缺一,就回 Workflow。
- 四大坑: 错误累积、提示注入、成本失控、上下文爆窗口。
- 上线六件套: 沙箱、审批、审计、上限熔断、上下文管理、Eval。
- 它是演进的终点,不是默认选项。
课后自检(3 分钟)
- [ ] 我确认任务四条前置全中(否则我该用 Workflow)
- [ ] 我写不出这个任务的固定流程图(能写出就别上 Agent)
- [ ] 我准备了沙箱 + 人工审批 + 审计日志
- [ ] 我设了最大轮数 / 成本 / 超时的熔断
- [ ] 我有上下文压缩策略,且在自己任务上做过 Eval
全勾 → 可以谨慎上自主 Agent。有缺 → 先补齐或退回 Workflow。
下一课预告
第 07 课 · 工具设计与安全 —— 进入第三篇「工程篇」:工具描述怎么写、多层安全防御怎么叠、提示注入怎么防。
延伸阅读
© 曹宇春