AI Agents 指南 · 第 2 章:CoT / ReAct / Swarm 三个模式的笔记
先吃透三个最常用的骨架:推理链、行动-观察循环、多 Agent 交接。
本章在解决什么
第 2 章讲 Agent 的架构与模式,三个 Notebook 分别覆盖三种最常用的骨架:
- CoT:让模型先想清楚步骤,再动手
- ReAct:模型 → 工具 → 观察 → 再决策,循环到出最终答案
- Swarm:多个 Agent 各管一件事,按需把控制权交给对方
CoT:链式推理 + 沙箱执行
Notebook ch02_CoT.ipynb 做了一个「数据分析 Agent」:模型按 CoT 结构思考,调用一个沙箱 Python REPL 工具加载 CSV、算统计、画图。
核心设计:
- 三段式系统提示:描述数据集 → 找出规律 → 给出结论
- 沙箱 REPL:模型写的代码在 Pyodide/WASM 里跑,不碰宿主文件系统
- 图表回传:沙箱里不让用 matplotlib,模型手工拼 SVG,再用 base64 通过 stdout 传回宿主解码
agent = create_react_agent(model=llm, tools=[python_repl], prompt=SYSTEM_INSTRUCTIONS)
builder = StateGraph(AgentState)
builder.add_node("agent", agent_node)
builder.add_edge(START, "agent")
builder.add_edge("agent", END)
app = builder.compile()
关键点:推理结构写进 prompt,执行放进沙箱,结果可读、可追踪。
ReAct:最小行动-观察循环
Notebook ch02_react.ipynb 是最小可跑的 ReAct Agent,只有两个节点:
agent节点:让模型决定要不要调工具tools节点:执行工具、返回ToolMessage
workflow = StateGraph(AgentState)
workflow.add_node("agent", call_model)
workflow.add_node("tools", tool_node)
workflow.set_entry_point("agent")
workflow.add_conditional_edges("agent", should_continue, {"continue": "tools", "end": END})
workflow.add_edge("tools", "agent")
should_continue 判断最后一条消息还有没有 tool_calls:有就继续,没有就结束。这就是 ReAct 的循环本质。
它配了一个 SerpAPI 搜索工具,并用 print_react_trace() 打印可读的 Reasoning / Action / Observation / Final Answer,只展示动作和结果,不泄露完整思维链。
关键点:add_messages 累加消息、bind_tools 绑定工具、条件边做循环。
Swarm:多 Agent 交接
Notebook ch02_swarms.ipynb 用 create_swarm 组一个两个 Agent 的小团队:
research_assistant:搜索 + 抓网页,攒够 3–5 个来源后交接writer_assistant:把来源综合成带引用的答案,来源不够再交回研究
交接靠 create_handoff_tool:
to_writer = create_handoff_tool(agent_name="writer_assistant", description="...")
swarm = create_swarm(
agents=[research_assistant, writer_assistant],
default_active_agent="research_assistant",
).compile()
关键点:每个 Agent 职责单一、按需 handoff、默认一个活跃 Agent 起手;以后加校验 Agent 不用改编排逻辑。
怎么套进「批量漫画 + 批量短视频」链路
你现在这条链路(千问出图 → Minimax H3 出视频 → DeepSeek 调度),正好可以用这三个骨架升级:
- ReAct 做调度器:每个「动作」是一次工具调用(生成漫画、生成视频、校验结果),每次「观察」是返回状态,直到任务完成
- CoT 沙箱执行 做批处理:让模型按「先验证单条 → 再批量 → 最后汇总质检」的推理结构写代码,在沙箱里跑,失败能看 traceback
- Swarm 做分工:脚本 Agent、出图 Agent、成片 Agent、质检 Agent,靠 handoff 传递半成品,而不是一个模型从头发到尾
下一步
建议先手动跑 ch02_react.ipynb(最简单、最能建立“循环”直觉),再跑 CoT,最后 Swarm。三个都跑通后,可以把 ReAct 调度器直接替换成你 DeepSeek V4.1 Flash 的 API。
来源
- 《AI Agents - The Definitive Guide》CH02:
ch02_CoT.ipynb、ch02_react.ipynb、ch02_swarms.ipynb - 仓库:Nicolepcx/ai-agents-the-definitive-guide
— 完 —
返回首页
留言
还没有留言,来当第一个吧。
加载留言中…