Day 20 / 共 20 天 · 第 4 周(结业)

构建、测试与收官串讲

最后一天:测试调试、从零搭智能体清单、常见坑、20 天知识地图、SuperAGI 设计哲学,以及你学完的五个 Agent 框架终极横向对比。

📍 你在整门课的位置 · 第 4 周(结业)
D16 API D17 Celery D18 GUI D19 部署 D20 收官串讲 🎓 全线打通
L01

测试与调试

docker compose up --build          # 起平台(Day 04)
pytest tests/                       # 跑测试
# 调试智能体:
# ① GUI 看实时思考流(Feed,Day 18)——最直观
# ② 查 AgentExecutionFeed 表——每步的完整记录
# ③ 看 celery worker 日志——执行报错在这
🤔 智能体是个黑盒,跑歪了怎么查?连"循环代码"都找不到 这正是 SuperAGI 架构送的红利:因为循环不在某个 while 里、而是全程落在 DB 和队列里,所以每一步都有据可查——不用打断点猜,直接翻记录就行。
💡 一句话本质 调试 SuperAGI = 顺着"一切皆持久化"回放:GUI 思考流(看它想啥)→ AgentExecutionFeed 表(完整历史)→ celery 日志(执行异常)。三层由粗到细,总能定位到出错那一步。
🎥 生活类比:这就像给智能体装了行车记录仪——普通 while 循环崩了啥也不剩、只能靠猜;而 SuperAGI"一切皆持久化",等于全程录像,出了事逐帧倒回去看,哪一步跑偏一目了然。
📝 一个真实排查场景 现象:智能体"卡住不动了"。 GUI 思考流最后一条停在「调用 SendEmail」→ 查 Feed 表,该步 status=WAITING_FOR_PERMISSION——原来不是卡死,是在等人工审批(Day 18)!去 GUI 点批准即恢复。
另一现象:状态是 ERROR → 看 celery 日志 → OpenAI RateLimitError——是 LLM 限流,等 Celery 自动重试(Day 17)即可。
调 SuperAGI 的最佳姿势 智能体行为诡异时:先看 GUI 的思考流(它想了啥、调了什么工具、得到什么),一眼定位哪步跑偏。更细的看 AgentExecutionFeed 表(完整历史)或 celery 日志(执行异常)。因为"一切皆持久化"(循环在 DB 里,Day 02),出问题能完整回溯——这是 SuperAGI 架构送的调试便利。
L02

从零搭一个智能体的清单

  • 起平台(docker compose,Day 04),填 config.yaml 的 LLM key(Day 19)
  • GUI 打开 localhost:3000,点创建智能体(Day 18)
  • 填目标 goal、指令、约束(Day 02/08)
  • 选工具/工具包(需要的从市场装,Day 12)
  • 选 LLM 模型、设 max_iterations 防失控(Day 02)
  • 选工作流类型(Goal Based 放飞 / Task 分解,Day 07)
  • (可选)上传资料文件当知识库(Day 14)、开人工审批(Day 18)
  • 运行,GUI 看实时思考流(Day 18)
  • (可选)配定时,让它每天自动跑(Day 17)
你现在能驾驭 SuperAGI 了 每一项都对应你学过的某一天。从"读懂源码"到"会搭、会配、会调、会运维、会扩展(写工具)",你都具备了。
L03

常见坑速查

  • 找不到"循环"代码:循环在 DB + Celery 队列里,不在 while(Day 02/17)。
  • 多容器文件读不到:STORAGE_TYPE 要用 S3(本地磁盘各容器不通,Day 19)。
  • 智能体跑不停/烧钱:设 max_iterations 熔断(Day 02)。
  • Goal Based 跑偏:放飞循环不可控,复杂任务用 Task 型工作流(Day 07)。
  • 工具装了用不了:检查工具的 env_keys 是否配齐(凭据,Day 11)。
  • 历史太长报错:靠滚动记忆压缩(Day 08),检查 MAX_MODEL_TOKEN_LIMIT。
  • 改配置不生效:config.yaml 改了要重启容器。
L04

20 天知识地图

第1周 核心概念

  • D1 全景/六服务
  • D2 Agent(循环在DB)
  • D3 工具
  • D4 运行平台
  • D5 完整旅程

第2周 Agent执行

  • D6 执行循环两级step
  • D7 工作流图
  • D8 提示词
  • D9 输出解析
  • D10 LLM 抽象

第3周 工具/记忆/资源

  • D11 工具深入
  • D12 工具市场
  • D13 向量记忆
  • D14 资源管理
  • D15 数据模型

第4周 平台/异步

  • D16 API
  • D17 Celery
  • D18 GUI
  • D19 部署
  • D20 收官
GUI (Next.js) · 第4周 D18 — 图形外壳 REST API controllers · D16 — 对外门面 / 入队 Celery worker + 队列 · D17 — 循环在这里自我重排 AgentExecutor 执行循环 · 第2周 D6-10工作流图 → 提示词 → LLM → 输出解析 → 调工具 工具 / 工具市场 D11-12 向量记忆 / 资源 D13-14 LLM 抽象 D10 Postgres(状态/Feed/数据模型 D15)+ Redis(队列/向量)— 一切皆持久化
SuperAGI 全景一图:从上到下 GUI→API→Celery→执行循环→工具/记忆/LLM,底座是 Postgres+Redis。每层都对应你学过的某几天。
一条主线:Agent(目标+工具+LLM,循环在 DB/队列)→ 工作流驱动执行循环 → 工具/向量记忆/资源增强 → API/Celery/GUI 让它成为可运维平台。从"一个自主智能体的循环",到"一个可视化构建、并发运行、有长期记忆、可定时、可运维的自主智能体平台",你把整条链路走通了。
L05

贯穿始终的设计哲学

① 循环在数据与队列里:Celery 任务自我重排 + 状态全持久化——可断可恢复、可扩展、支持暂停/审批。这是 SuperAGI 最独特的设计。
② 数据驱动的工作流图:流程是数据库里的图,不是硬编码——可配置、可分享、外层可控 + 内层 AI 自主。
③ 面向接口 + 插件化:LLM/向量库/存储都是可替换接口;工具靠反射动态加载(工具市场)。
④ 层层容错:LLM 重试、Celery 重试、输出解析容错、自我纠错——面对不可靠的 LLM 和外部服务保持韧性。
⑤ 记忆分层:短期(Feed,会压缩)+ 长期(向量库,语义检索)——像人的记忆结构。
⑥ 平台化:GUI + 多租户 + 工具市场 + 定时 + 监控——把自主智能体做成可运维的生产系统。
L06

五框架终极对比(你已学五个!)

框架定位编排范式特色
einoGo 库Chain/Graph/Workflow类型安全、流式一等公民
OpenHands软件工程 AgentAction/Observation 循环沙箱、CodeAct、写代码干活
CrewAIPython 库Crew(角色团队)+Flow角色扮演、多智能体协作
AutoGPT可视化平台Block 图低代码、计量计费 SaaS
SuperAGI自主智能体平台工作流图 + 迭代步循环在DB/队列、Celery异步、工具市场
殊途同归的共性(五框架都有):① "节点/步骤 + 连接"的编排(图/链/事件流/工作流);② ReAct 式循环或数据流执行;③ 工具 = name+desc+参数schema+执行;④ LLM 统一抽象层(换模型不改业务);⑤ 事件/Feed 做可观测;⑥ "可控编排 + 局部 AI 自主"(没人搞纯放飞);⑦ 成本意识(token/迭代上限);⑧ HITL 人工介入;⑨ 面向接口 + 依赖注入 + 插件化;⑩ 层层容错 + 自我纠错。
L07

从"会用一个"到"看穿一类"

你已经通读了五个主流 Agent 框架的源码。它们语言不同(Go/Python/TS)、定位不同(库/平台/软件工程师)、细节各异,但底层思想高度一致——因为它们都在解同一个问题:"如何让 LLM 可靠地、自主地、可控地完成多步任务"。

这就是通读多个源码的复利 学第一个框架时,每个概念都新鲜。学到第五个,你会发现"哦,这不就是那个东西吗"——工具机制、执行循环、LLM 抽象、事件系统、HITL、成本控制……共性远大于差异。于是面对任何新 Agent 框架(LangGraph、任何新出的),你能快速定位"它的 Agent 循环在哪、工具怎么定义、怎么编排、怎么可观测"——因为你已经掌握了这一类系统的"通用语言"。从"会用一个"到"看穿一类"——这是深度通读源码的最大回报。接下来本系列还有 LangGraph、openclaw、higress、apisix,你会越学越快。
🍳 生活类比:五个框架就像五家不同菜系的餐厅——招牌菜、装修各不同,但后厨都得有"下单→备料→出菜"的流程、前台都得接单收银。看懂一家的运作,再进任何一家都不懵。

👶 小白:学完五个框架有点信息过载……如果只让我记住 SuperAGI 的一点,该记哪点?

👨‍🏫 老师:记住这一条就够:它的循环不在某个 while 里,而在数据库 + Celery 队列里——每步跑完自我重排、状态全持久化。抓住这一点,其余全都顺理成章:断点续跑(状态在 DB)、多 worker 并发(谁都能领下一步)、人工审批挂起(status 停在 WAITING)、好调试(一切皆持久化能回放)。这就是 SuperAGI 区别于其它四个框架最独特的记忆点。

L08

🎓 结业 + 下一步

恭喜你完成 SuperAGI 20 天源码学习!

你从零基础,走到了理解"自主智能体平台如何构建"的水平——目标驱动的 Agent、循环在 DB 和队列里的独特架构、工作流图、工具市场、向量记忆、Celery 异步、GUI、部署。这是你学完的第五个 Agent 系统,你已经建立了"看穿任何 Agent 框架"的能力。

🚀 下一步建议

  • 动手搭:照 L02 清单,在 GUI 上搭一个真实自主智能体(比如"每天调研某话题并总结")。
  • 写个工具:照 Day 11/12,给平台加一个自定义工具(@tool 装饰器最简单)。
  • 读 teststests/ 是活文档。
  • 横向对比:回顾 eino/OpenHands/CrewAI/AutoGPT,对比它们和 SuperAGI 的异同(尤其"循环在哪")——你会理解得更透。本系列还有 LangGraph、openclaw、higress、apisix。
🎉 SuperAGI 篇完结。感谢学到这里!回到 20 天总目录学习主页 继续其他项目。
← Day 19 部署 返回总目录 🏁