返回AI书列表
📚 TheAIEra Book 14 章

Building with Strands:Agent 从原理到上云(14 讲)

Strands Agents 官方课程中文翻译版

作者:itech001 GitHub

Strands Agents 官方课程《How Agents Really Work》全 14 讲中文版:从 Agent 循环、模型提供商、MCP 工具、Hooks、Skills,到上下文工程、持久记忆、三种多 Agent 模式、评测与上云部署。

StrandsAgentHarnessMCPMulti-AgentEvals教程书籍

📖 本书大纲

Building with Strands:Agent 从原理到上云(14 讲)

关于本书

这是一本从零开始把 Agent 讲透的实战书,译自 Strands Agents 官方课程 Building with Strands(页面路径为 how-agents-really-work)。全书 14 讲,路线是先从原理出发——模型本身是无状态的,Agent 是"模型 + Harness"——再一层层往上加东西:换模型提供商、用 MCP 接工具、加回调与流式输出、用 Hooks 控制生命周期、装插件与 Skills、做上下文工程、接持久记忆,最后到三种多 Agent 协作模式和部署上云。

它值得一读的地方在于顺序。市面上大多数 Agent 教程从"调用一次 API"跳到"多 Agent 编排",中间的工程细节全靠读者自己撞墙补齐。这门课反着来:每一讲只加一个能力,而且加在正确的位置上——为什么回调要在流式之前讲、为什么上下文管理要放在记忆之前、为什么三种多 Agent 模式的差异本质是"控制权归谁"。跟着走一遍,Agent 这套东西的结构就立起来了。

原文有一个重要提示,翻译版原样保留:视频是某个时间点的快照,Strands 还在快速迭代,页面上的代码是最新的模式,概念仍然成立;两者不一致时,以代码为准。

内容结构总览

全书 14 章,按能力递进分为四个阶段:

章 主题 核心内容 阶段
第 1 章 Agent 到底是怎么工作的 Agent 循环四步、Agent = Model + Harness、三层工程(Prompt / Context / Harness)、第一个可运行的 Agent 原理
第 2 章 切换模型提供商 Bedrock 默认、provider/name 字符串、Anthropic / OpenAI / Gemini / Ollama / LiteLLM、本地模型 原理
第 3 章 用 MCP 给 Agent 装上工具 @tool 装饰器、工具 schema 从类型标注生成、本地与远程 MCP server(stdio / Streamable HTTP) 工具
第 4 章 回调与流式响应 callback handler、token 级流式输出、把中间过程暴露给 UI 交互
第 5 章 用 Hooks 控制 Agent 生命周期 hook 点、在模型调用与工具调用前后介入、可观测与拦截 交互
第 6 章 Agent 插件与 Skills Plugin 机制、把领域能力打包、Skills 的加载与调用 扩展
第 7 章 用 Strands Steering 提升 Agent 可靠性 Steering 干预、让偏航的 Agent 回到轨道 可靠性
第 8 章 上下文工程与对话管理 上下文窗口管理、结果 offload、历史压缩、对话管理器 可靠性
第 9 章 用 Session Manager 实现持久记忆 Session 落盘与恢复、存储后端替换、跨进程续接对话 状态
第 10 章 多 Agent 模式:Agents as Tools 把子 Agent 当工具调用、适用场景与边界 多 Agent
第 11 章 多 Agent 模式:Graph 工作流 用图定义确定性流程、节点与边、与自主循环的分工 多 Agent
第 12 章 多 Agent 模式:Agent Swarms 去中心化协作、任务分发与结果汇总 多 Agent
第 13 章 评测 Agent 输出评测与轨迹评测、用评测结果驱动改进 上云
第 14 章 把 Agent 部署到云上 CLI 部署、AgentCore、生产环境的存储与观测 上云

建议的读法

  • 只想知道 Agent 是什么:第 1 章读完就够,它把 Agent 循环和 Harness 的定位讲清楚了。
  • 准备做一个能用的 Agent:第 1–6 章顺序读,这是"单 Agent 能干活"的最小闭环。
  • 已经踩过上下文爆炸和记忆丢失的坑:直接从第 7–9 章开始,这三章讲的是 Agent 从 Demo 走向可用的那一段。
  • 在做多 Agent 系统:第 10–12 章三种模式建议连着读,重点看三种模式各自把控制权交给了谁。
  • 准备上线:第 13–14 章,评测先于部署。

关于译稿

  • 原文:Strands Agents 官方课程 Building with Strands,第一讲页面为 How Agents Really Work。
  • 译文保留全部代码、链接与图示,术语按中文技术习惯处理:Agent、Model、Harness、MCP、Tool、Hook、Skill、Session、Memory、Swarm、Graph 等保持英文;trajectory 译"轨迹",evaluator 译"评测器",context window 译"上下文窗口"。
  • 课程配套代码在 aws-samples/sample-building-with-strands-course,每章开头都保留了对应目录的链接。
  • 图片均已本地化到本书目录,原图来自 Strands Agents 官方文档。

📑 章节目录

1

第 1 章:Agent 到底是怎么工作的

从 Model 无状态讲起,拆解 Agent Loop、Model + Harness 的关系,并用 Strands 写一个能调工具的 Agent。

2

第 2 章:切换模型提供商

本课讲 Strands 如何用统一接口接入 Bedrock、Anthropic、OpenAI、Ollama 等 Model Provider,以及多模型架构怎么分工。

3

第 3 章:用 MCP 给 Agent 装上工具

学习 Strands Agents 中工具的来源:自定义工具、vended tools 与 MCP server,以及工具过滤、执行顺序与安全边界。

4

第 4 章:回调与流式响应

本课讲解如何用 Callback 控制 Agent 输出:自定义回调处理器、静默模式,以及基于 stream_async() 的异步 Streaming。

5

第 5 章:用 Hooks 控制 Agent

本课讲 Strands 的 Hook 机制:在 Tool 调用和 agent loop 的生命周期事件上注入代码,用中断审批、取消调用等方式,让规则不再依赖 Model 自觉。

6

第 6 章:Agent 插件与 Skills

本课讲 Strands 的插件扩展机制:用 Skills 按需加载工作流指令,用 GoalLoop 校验结果并自动重试。

7

第 7 章:用 Strands Steering 提升 Agent 可靠性

本课讲解 Strands 的 Steering:用 SteeringHandler 做确定性的流程校验,用 LLMSteeringHandler 做语气护栏,在运行时引导 Agent 行为。

8

第 8 章:上下文工程与对话管理

本课讲上下文工程:用 ContextManager、Offload 策略与 ContextInjector 决定什么信息、何时、以什么形式进入模型上下文窗口。

9

第 9 章:用 Session Manager 实现持久记忆

本课讲 Session Manager 如何持久化对话历史与 Agent 状态:Snapshot、File、S3 三种方案的区别,以及 Memory、Storage 与生产后端的选择。

10

第 10 章:多 Agent 模式:Agents as Tools

本课讲 Agents as Tools 模式:用一个 orchestrator 把 specialist agent 当 tool 调用,靠描述做路由,每个 sub-agent 各有一份独立上下文窗口。

11

第 11 章:多 Agent 模式:Graph 工作流

用 Graph 编排多 Agent:节点是完整 Agent,边定义依赖,讲清并行扇出、上下文传递与适用场景,并与 agents-as-tools、swarms 做对比。

12

第 12 章:多 Agent 模式:Agent Swarms

本课讲多 Agent 模式里的 Swarm:Agent 之间自主交接、没有预设结构,以及必须配的安全限制和三种模式的嵌套方式。

13

第 13 章:评测 Agent

本课讲怎么评测 Agent:用评测器打分输出与轨迹,配合 chaos 测试和红队测试,把 eval 套件接进 CI 抓回归。

14

第 14 章:把 Agent 部署到云上

把本地 Strands Agent 用 Amazon Bedrock AgentCore 部署到 AWS,介绍 Runtime、Memory、Observability 各自的作用、部署命令,以及生产环境里仍需补齐的部分。