阶段学习任务单:AI Agent 与智能体系统
这个阶段的目标是让你理解 Agent 如何把大模型、工具、记忆、规划和执行流程连接起来。不要把 Agent 理解成“更会聊天的模型”,它更接近一个能分解任务、调用工具、记录状态并处理失败的工作流系统。
本阶段必须完成的任务
| 任务 | 产出物 | 通过标准 |
|---|---|---|
| 理解 Agent 基本结构 | 一张架构图 | 能解释模型、工具、记忆、规划器和执行器的关系 |
| 跑通工具调用 | 一个最小 tool calling 示例 | 能定义工具参数、处理返回值和错误 |
| 完成规划执行流程 | 一个多步骤任务 Demo | 能记录每一步输入、输出、状态和失败原因 |
| 加入评估与安全 | 一份 Agent 测试记录 | 能评估任务成功率、工具准确率和权限风险 |
| 完成阶段项目 | 一个可追踪 Agent 项目 | 有 trace、日志、回放样例和人工确认边界 |
推荐学习顺序
先理解 Agent 是什么,再学习推理与规划、工具调用、记忆、MCP、框架、多 Agent、评估与安全。框架可以帮助实现,但不要让框架掩盖核心问题:状态如何流转,工具何时调用,失败如何恢复,权限如何限制。
学 Agent 时要特别注意可观测性。一个 Agent 如果不能解释自己做了什么、为什么这么做、在哪一步失败,就很难进入真实应用。
和 AI 学习助手项目的关系
本阶段对应 AI 学习助手的 v0.9 学习规划 Agent。它不仅能回答问题,还能根据学习目标拆解任务,推荐章节,生成学习计划,调用检索工具查资料,并记录每一步执行轨迹。
建议最小功能包括:输入学习目标,输出阶段计划;调用课程检索工具查找相关章节;生成本周任务清单;记录 trace。标准版本可以加入长期学习记录、复习提醒、错题整理和人工确认。
常见卡点
常见问题包括工具描述不清导致调用错误、Agent 无限循环、任务拆解过细或过粗、记忆污染、把用户输入直接传给工具造成安全风险、没有日志导致无法排查问题。Agent 项目里,权限边界和停止条件和功能本身一样重要。
轻松版 / 标准版 / 挑战版任务
| 难度 | 你要完成什么 | 适合谁 |
|---|---|---|
| 轻松版 | 让 Agent 完成 3 个固定任务并打印步骤 | 第一遍学习、时间少或刚入门的学习者 |
| 标准版 | 保存 agent_traces 和 tool_calls | 希望把本阶段放进作品集的学习者 |
| 挑战版 | 增加越权测试、人工确认和 trace replay | 已有基础、想做更强项目证据的学习者 |
本阶段徽章与 Boss 战
| 类型 | 内容 |
|---|---|
| Boss 战 | 无限循环魔王 |
| 可解锁徽章 | Trace 记录员、Agent 安全官 |
| 最小通关口号 | 先跑通、再解释、再记录失败 |
| 证据保存建议 | 把截图、日志、失败样本或评估表保存到 reports/、evals/ 或 logs/ |
完成轻松版就可以继续前进;完成标准版才建议写进作品集;挑战版只在你有余力时再做。
阶段作品集交付物
如果你想把本阶段成果沉淀到作品集,建议至少保留下面这些文件或等价材料。
| 交付物 | 说明 |
|---|---|
tools_schema.md | 每个工具的名称、用途、参数、返回值和使用边界 |
agent_traces.jsonl | 每次运行的 goal、step、action、arguments、observation、next_decision |
safety_boundary.md | 工具风险分级、人工确认规则、最大步数、权限限制 |
human_approval_examples.md | 高风险动作确认文本示例,包括动作、对象、风险和回滚方式 |
failure_cases.md | 工具选错、参数错误、循环调用、引用不支持、安全拦截等失败样本 |
README.md | 项目目标、工具清单、运行方式、trace 示例、评估结果和限制说明 |
这些材料会让你的 Agent 项目从“会调用工具”升级成“可追踪、可控、可复盘”的系统。
阶段通关问题
学完后,你应该能回答这些问题:Agent 和普通 LLM 应用有什么区别,工具描述为什么重要,什么任务适合 Agent,如何避免循环调用,为什么需要 trace、replay 和人工确认。
完成状态 Checklist
- 我能解释 Agent、普通 LLM 应用和 RAG 应用的区别。
- 我能定义一个工具的名称、用途、参数和返回值。
- 我能记录 Agent 的计划、工具调用、输出、错误和停止条件。
- 我已经完成一个可追踪的学习规划 Agent 或等价多步骤任务 Demo。
- 我能说明哪些操作需要人工确认,哪些工具权限必须限制。