引言
"Agent = LLM + 上下文 + 工具"
这是「每日一个开源项目」系列的第 188 篇。今天的项目是《深入理解 AI Agent:设计原理与工程实践》—— 李博杰(bojieli)著,全书正文、配图和 95 个配套实验全部开源,PDF/EPUB 免费下载。
35,525 颗 Star,2025 年 9 月创建,Apache-2.0 许可。这是目前国内最系统的 AI Agent 中文技术书之一,从基础原理讲到工程实战,10 章覆盖从上下文工程到多 Agent 协作的完整知识图谱,并附有与工业基准直接对应的可运行实验。
你会学到什么
- 全书的核心公式和 10 章知识结构
- 每章的重点内容与实验设计
- 配套实验的运行方式(uv / pip)
- 如何根据自身背景选择学习路径
前提知识
- Python 基础
- 对 LLM 和 AI Agent 的基本认知
- 第 7 章(模型后训练)对 GPU 算力有要求,其他章节无需 GPU
项目背景
概述
这本书围绕一个核心公式展开:Agent = LLM + 上下文 + 工具。三个要素各占一席:LLM 提供推理能力,上下文决定能力上限,工具连接外部世界。全书 10 章都从这个公式的某个维度深入,层层递进,从基础概念到生产级工程实践。
「开源」在这里是认真的:全书正文是 Markdown,可以直接在 GitHub 读;PDF/EPUB 从 main 分支自动构建,每次更新后即可获取最新版;配套实验是真正可运行的代码,而不只是伪代码示例。
作者信息
- 作者: 李博杰(@bojieli)
- 在线阅读: bojieli.github.io/ai-agent-book
- 主要语言: Python(实验代码)
- 许可证: Apache-2.0
项目数据
- ⭐ GitHub Stars: 35,525+
- 🍴 Forks: 3,850+
- 📄 许可证: Apache-2.0
- 📅 创建时间: 2025-09-09
- 🌐 翻译语言: 13 种(中/英/西班牙/印尼/阿拉伯/繁體中文(台灣)/俄/泰米尔/越南/日/土耳其/韩/匈牙利)
获取方式
免费下载 PDF / EPUB(始终指向 main 分支最新构建):
在线阅读(支持多语言切换、章节折叠、全文搜索):bojieli.github.io/ai-agent-book
GitHub:book/chapter*.md 是中文正文源码,可直接在网页上读。
10 章知识结构
全书 10 章围绕核心公式,从不同维度深入:
| 章 | 主题 | 核心内容 | 实验数 |
|---|---|---|---|
| 1 | Agent 基础知识 | Agent = LLM + 上下文 + 工具;Harness 工程 | 4 |
| 2 | 上下文工程 | KV Cache、提示工程、Agent Skills、上下文压缩 | 9 |
| 3 | 用户记忆和知识库 | 跨会话记忆、RAG、结构化索引、知识图谱 | 13 |
| 4 | 工具 | MCP 协议、感知/执行/协作三类工具、事件驱动异步 Agent、主动工具发现 | 7 |
| 5 | Coding Agent 与代码生成 | 代码是「能创造新工具的工具」,生产级 Coding Agent 全景 | 13 |
| 6 | Agent 的评估 | 评估环境、指标体系、统计显著性、评估驱动选型 | 13 |
| 7 | 模型后训练 | 预训练/SFT/RL 三阶段、工具调用内化、样本效率 | 16 |
| 8 | Agent 的持续进化 | 从运行轨迹获得学习信号,更新知识/指令/程序/参数 | 9 |
| 9 | 多模态与实时交互 | 语音三范式、Computer Use、机器人 | 12 |
| 10 | 多 Agent 协作 | 协作框架、上下文共享/隔离、涌现的「Agent 社会」 | 8 |
重点章节解析
第 2 章:上下文工程
这是全书最有价值的章节之一,也是作者认为 AI Agent 工程竞争力的核心所在。
「上下文决定能力上限」是本章的核心论断:同一个 LLM,上下文质量不同,能力表现天壤之别。本章覆盖:
- KV Cache 机制:如何在不修改模型的情况下大幅降低延迟和成本
- 提示工程(Prompt Engineering):不只是「写好提示词」,而是系统性的上下文构建方法
- Agent Skills:结构化的能力声明,让 LLM 知道自己「会什么」
- 上下文压缩:长会话中的信息保留策略,在不丢失关键信息的前提下降低 token 消耗
第 3 章:用户记忆和知识库
Agent 不能每次都从零开始。本章把「记忆」拆成可工程化的组件:
- 用户记忆:跨会话保存用户偏好、历史决策、个性化信息
- RAG(检索增强生成):把外部知识库动态接入上下文,而不是烧进参数
- 结构化索引:向量检索之外,如何处理表格、代码、数值型数据
- 知识图谱:关系型知识的表达和检索
第 4 章:工具
本章系统梳理了 Agent 工具层,重点是 MCP(Model Context Protocol)协议的原理与工程实践。工具按功能分为三类:
- 感知工具:获取外部信息(搜索、读取、监听)
- 执行工具:改变外部状态(写文件、调 API、运行代码)
- 协作工具:与其他 Agent 或人类交互
此外还讲了事件驱动的异步 Agent 设计模式,和 Agent 如何主动发现可用工具。
第 5 章:Coding Agent 与代码生成
这一章给出了一个精准的定位:「代码是能创造新工具的工具」。Coding Agent 的价值不只是写代码,而是在运行时动态扩展自己的能力边界。内容覆盖:
- 生产级 Coding Agent 的完整架构
- 代码生成的质量控制:测试、验证、迭代
- 代码执行沙箱的安全边界
- Coding Agent 的典型失败模式
第 6 章:Agent 的评估
评估是 Agent 工程中最难的环节,也是最被低估的。本章对应的实验直接使用工业级评测基准:
| 评测基准 | 类型 | 对应实验 |
|---|---|---|
| SWE-bench | 代码修复 | 6-x |
| OSWorld | GUI 操作 | 6-x |
| android_world | 移动端操作 | 6-x |
| GAIA | 通用能力 | 6-x |
| tau2-bench | 客服/工作流 | 6-x |
| terminal-bench | 终端命令 | 6-x |
这些不是自制的简化版,而是直接 clone 原始仓库并固定到特定 commit SHA,保证复现一致性。
第 7 章:模型后训练
全书实验数量最多的一章(16 个),从零开始覆盖 LLM 训练全链路:
- 预训练 vs SFT vs RL:三阶段各自解决什么问题,决策树
- 工具调用内化:如何通过训练让模型更好地使用工具,而不只是靠提示词
- 样本效率:在有限数据下最大化学习效果
- 何时选 SFT,何时选 RL:实验驱动的决策框架
使用的训练框架:verl(RL 训练)、MiniMind(预训练复现)、AdaptThink、SandboxFusion(代码执行沙箱)等,全部固定到精确的 commit SHA。
第 9 章:多模态与实时交互
从文本扩展到语音、GUI、物理世界:
- 语音三范式:端到端语音、ASR+TTS 级联、流式交互
- Computer Use:Agent 操作 GUI 界面,对应实验直接使用 Anthropic claude-quickstarts 和 browser-use
- 机器人:XLeRobot、RoboCrew、lerobot-sim2real,从仿真到 sim2real 迁移
第 10 章:多 Agent 协作
群体智能如何高于个体能力:
- 协作框架:任务分解、角色分配、结果聚合
- 上下文共享与隔离:哪些上下文应该共享,哪些必须隔离
- 涌现的「Agent 社会」:斯坦福 AI 小镇(generative_agents)实验
- TalkAct(双 Agent 架构):边打电话边操作电脑
配套实验运行方式
项目统一支持 Python 3.10+,推荐使用 uv 管理依赖:
# 安装 uv(速度远快于 pip)
# https://docs.astral.sh/uv/getting-started/installation/
# 克隆仓库
git clone https://github.com/bojieli/ai-agent-book.git
cd ai-agent-book
# 安装某一章的依赖(以第 2 章为例)
uv sync --locked --extra ch2
# 运行实验
uv run python chapter2/context/main.py
# 未安装 uv 时
python -m pip install -e ".[ch2]"
python chapter2/context/main.pyAPI Key 配置:根目录复制 .env.example 为 .env,填入至少一个提供商 Key:
cp .env.example .env
# 编辑 .env,填入 API Key支持的国内提供商(推荐配置其中至少一个):
| 平台 | 特色 |
|---|---|
| Kimi(月之暗面) | Coding/Agent 能力强 |
| 智谱 GLM | GLM-5.2,Coding/Agent 能力强 |
| Siliconflow | DeepSeek/Qwen 等开源模型,国内速度快 |
| DeepSeek | 官方 API,全球+国内 |
国际提供商:OpenAI、Anthropic Claude、Google Gemini 等。
学习路径建议
快速了解(2-3 天)
阅读第 1 章(基础),然后根据兴趣选一章深入:
- 工程实践为主 → 第 2、4、5 章(上下文工程、工具、Coding Agent)
- 系统评估 → 第 6 章
- 训练与优化 → 第 7 章
完整学习(4-6 周)
按 1→2→3→4→5→6 的顺序学,每章读完跑对应的 1-2 个实验。第 7 章(模型后训练)对 GPU 有要求,可选择性跳过;第 9、10 章依赖外部 repo,先看正文再决定是否运行实验。
按需查阅
直接在 在线版 搜索关键词,每章正文是 Markdown,GitHub 上可直接读。
参考资源
官方链接
- 🌟 GitHub: bojieli/ai-agent-book
- 🌐 在线阅读: bojieli.github.io/ai-agent-book
- 📥 PDF(中文): AI-Agents-in-Depth-zh-CN.pdf
- 📥 EPUB(中文): AI-Agents-in-Depth-zh-CN.epub
- 📖 学习建议: docs/zh-CN/LEARNING.md
总结
《深入理解 AI Agent》的价值在于它做的几个不常见的选择:
核心公式先于章节结构:「Agent = LLM + 上下文 + 工具」不只是书名下面的一句话,它是全书的组织原则。每一章都在回答:「这个要素的某个维度,如何做好工程?」这种结构让读者始终知道自己在学什么,以及为什么要学。
实验对应工业基准:第 6 章的实验不是作者自己设计的简单测试集,而是直接克隆 SWE-bench、OSWorld、GAIA 等已被学术界和工业界广泛使用的基准,并固定到精确的 commit SHA。这意味着你跑出来的数字和论文里的数字是可比较的。
第 2 章:上下文工程:这个概念在 2025 年之前很少被单独成章讲,但它确实是 Agent 工程中最被低估的部分。同一个 LLM,上下文构建方式的差异,往往比模型选型的差异更大。
开源是认真的:全书 Markdown 源码开放,PDF/EPUB 自动构建,正文、配图、实验代码全部在仓库里。13 种语言翻译来自社区贡献,说明这本书的信息密度已经足够高,值得投入翻译工作量。
如果你正在从「会用 LLM API」迈向「能设计和实现 AI Agent 系统」,这本书提供了一条系统的路径。
探索 PrimeSkills —— 精选 AI agent 和技能工具,每一个都经过真实工作流验证。没有炒作,只有真正好用的工具。
访问我的个人主页,获取更多见解和有趣的产品。