专栏 · Course

从零到一造 Agent

每章围绕一段可运行的代码逐步生长;穿插思考题与章末测验;每个组件都与 50 个框架的真实实现对照。克隆仓库即可跟着跑:python labs/ch01/agent.py

0%

Part I · 内核

模型、循环、工具、上下文——一个 agent 能跑起来的最小要素。

  1. 01
    最小 Agent
    • chatbot 和 agent 的本质区别是什么?
    • 为什么工具结果必须回灌给模型?
    • 一个 agent 最少需要哪几样东西?
  2. 02
    工具系统
    • 工具的 JSON Schema 能不能从函数签名自动生成?
    • 工具报错时,循环应该崩溃还是把错误交给模型?
    • 工具和技能(skills)是什么关系?
  3. 03
    循环范式
    • 没有 function calling API 的年代,agent 是怎么调工具的?
    • 让模型直接写代码执行(CodeAct),好在哪、险在哪?
    • 为什么现代框架几乎都默认原生 function calling?
  4. 04
    上下文工程
    • 上下文窗口撞满了会发生什么?
    • 裁剪和压缩历史,各丢了什么?
    • 为什么说上下文工程是 agent 工程的一半?

Part II · 能力扩展

记忆、规划、模型抽象、持久化——让 agent 更聪明、更可靠。

  1. 05
    记忆
    • 上下文窗口之外,agent 怎么记住上个会话的事?
    • 记忆该什么时候写入、由谁决定?
    • 没有向量库,检索还能怎么做?
  2. 06
    规划与自我修正
    • 20 步的长任务,agent 怎么才能不迷路?
    • 计划应该一次定死,还是边走边改?
    • 多花一次 LLM 调用做反思,值不值?
  3. 07
    结构化输出与模型抽象
    • 换一个模型 provider,要改多少行代码?
    • 怎么让模型的输出保证是合法的 JSON?
    • 被限流了应该立即重试吗?
  4. 08
    状态持久化
    • 跑了 20 步的 agent 进程崩了,怎么办?
    • checkpoint 里应该存什么、什么时候存?
    • 怎么回到第 3 步做一次时间旅行?

Part III · 系统化

人机协同、多智能体、可观测——从玩具到生产系统。

  1. 09
    人机协同与治理
    • agent 要执行危险操作时,谁来踩刹车?
    • 被拒绝之后,agent 应该崩溃还是换路?
    • 无人值守的 agent 还需要审批门吗?
  2. 10
    多智能体
    • 什么样的任务值得拆给多个 agent?
    • handoff 和 supervisor 是两种什么样的协作?
    • worker 之间为什么不共享上下文?
  3. 11
    可观测与评估
    • agent 内部发生了什么,你看得见吗?
    • 一次运行到底花了多少 token、多少钱?
    • 怎么科学地说'我的 agent 变好了'?
  4. 12
    玩具与真实框架
    • 12 个组件拼起来的 agent 长什么样?
    • 拿到一个陌生框架,应该从哪里读起?
    • 玩具和生产框架的差距到底在哪?