引言
2025 年 8 月至 10 月,我在图灵《AI Agent 实战营》上进行了一系列技术讲座。讲座的初衷很简单:把 AI Agent 的设计从 “感觉驱动” 变成 “原则驱动”:不只是教大家跑通一个 Demo,而是深入理解 Agent 为什么要这样设计,每一个架构决策背后的取舍是什么。这本书正是从那些讲座的讲稿和实验中整理、扩展而来的。
值得一提的是,这本书从最初的想法到最终成书,本身就是用一种可以称为 whisper coding(口述式协作)的方式做出来的——而我用来口述的,正是我们 Pine 自己的语音 Agent。每次准备讲稿,我都会先向它口述一个大致的提纲,让它去做调研(survey),再由它整理出一份初稿;讲完课后,我再结合 AI Agent 实战营里同学们的反馈,与它反复讨论、打磨,如此迭代,最终把这些讲稿扩写、编排成了今天这本书。整个过程里,我多数时候并不打字,而是把想法口述给它——语音的带宽远高于打字(正常说话的速度约为打字的四倍),“口述—调研—讨论—修改”的循环因此转得很快。某种意义上,这本书既是在讲 Agent,也是一件由 Agent 参与做成的作品。
从 2025 年初 DeepSeek R1 发布至今,AI 领域已经从单纯的基座模型(即通用的大语言模型底座)演进,进入了工程落地的深水区。模型层的进展可以从两个方向看到:一方面,模型通过在智能体环境中的强化学习(Agentic Reinforcement Learning)把工具调用能力训进了模型参数,使模型掌握了在编程(coding)、数学、图形界面操作(computer use)等领域的通用能力。模型的迭代速度也越来越快,GPT-5.2 到 GPT-5.5、Claude Opus 4.5 到 4.8,都仅仅经过了半年。产品层则有 Manus、Claude Code、OpenClaw 等通用 Agent 重新定义了人机交互方式,把 “代码生成 + 文件系统” 这一架构范式推到了主流视野。
当我回头审视近一年前在课程中总结的那些 Agent 架构设计原则时,有一个发现让我既欣慰又惊讶:这些原则非但没有过时,反而变得越来越经典了。 虽然 Agent 业界后来陆续出现了 Skill、harness、loop engineering 等新名词,但真实的顺序恰恰是反的:并不是 Anthropic 这些公司先发明了这些概念、众多 Agent 才跟着用起来;相反,是大量 Agent 早就在这么做了,Anthropic 才把它们提炼、总结成了架构设计原则。实践在前,命名在后。
这些原则的底气,来自把 Agent 真正推进长流程、高风险场景的实战。作为 Pine AI 的首席科学家,我和团队打造了 Pine。据我所知,它是第一个能够自主与真人交互、并可靠地独立处理涉及金钱的敏感、复杂、长程任务的通用 Agent:它替用户打电话与运营商协商账单、与商家交涉退款和投诉、取消订阅,全程无需人工接管。这类任务动辄几十轮交涉,任何一步出错都会造成真金白银的损失。正是这种对可靠性近乎苛刻的要求,把本书反复强调的架构原则一条条倒逼了出来。下面几个例子,就来自这段实践。
- 早在 Skill 概念流行之前,我们就已经采用动态加载提示词的方法解决提示词无限膨胀的问题,采用命令行执行工具的方式解决工具列表无限膨胀的问题,采用系统状态栏技术解决 Agent 不感知执行环境和用户时间、工作状态等问题。
- 早在 harness 概念流行之前,我们就在采用类似 Claude Code 的方法解决模型工具调用的不稳定、幻觉、危险操作、越权操作、指令不遵循等问题。
- 早在 loop engineering 概念流行之前,我们就在使用本书称为提议者-审核者(proposer-reviewer)的方法解决模型过早认为任务完成的问题,让 Agent 审阅自己输出的交付件(artifact),并迭代改进。
而且这并不是我们的独家发明,据我所知,大多数头部模型和 Agent 公司都自己摸索出了类似的方法。这是我在 2025 年 8 月在图灵开设《AI Agent 实战营》课程和 2024-2026 年持续在国科大开设 AI Agent 实践课程的原因。我选择把这本书开源发布,而不是封闭起来收版税,也是希望这些知识能传播给更多从业者。
实践在前,命名在后,这个顺序对企业级 Agent 开发有一个很实际的含义:如果你每次都要等到业界开始流行某个 Agent 名词才去实践,就已经慢了一步。 名词流行的时候,头部公司往往早已把对应的问题趟过一遍了。那么,怎样才能赶在名词流行之前就知道该怎么做?我认为最关键的有两点。
第一,拥有一个对 Agent 能力上限有极高要求的真实业务,并能持续获得真实的业务反馈。 以 Pine 为例,处理一件事往往耗时数小时甚至数周,过程中可能要跟多个利益相关方反复沟通:其间可能要打好几个小时的电话,在电脑上操作并填写好几页复杂的表单,还要来回发送数封邮件;全程既不能在任何数字上出错,又要在沟通中时刻保持谨慎,维护用户的利益。只有置身于这样足够复杂的场景,实践才会自然地把你倒逼着去构建 harness,去解决那些模型本身当下还做不到、业务上却必须完成的事。反过来,如果业务对能力上限的要求不高、模型稍一升级就够用,你也就没有动力去打磨这些架构原则。
第二,必须建立评估(Evaluation)机制。 这也是本书反复强调的一点:没有评估,就没有进步。评估让你能分辨一次改动究竟是真的变好了,还是只是运气,从而让 Agent 的迭代方向不再依赖直觉。说到底,我们主张的是用科学的方法论去做工程、去做 Agent,而评估正是这套方法论的地基。第六章会专门展开这套方法。
不管底层模型如何升级,不管产品形态如何创新,几乎所有成功的 Agent 系统都遵循着相同的架构模式。这并非巧合:好的设计原则本就应该穿越模型的迭代周期,因为它们描述的不是某个模型的用法,而是智能系统与世界交互的基本模式。
图灵奖得主、强化学习之父 Richard Sutton 曾说,宇宙演化经历了从尘埃到恒星、从恒星到生命、从生命到智能体(原文为设计实体,designed entities)的 4 个阶段。生物进化是盲目的:随机变异,自然选择。大多数生物并不理解自己的工作原理,也无法自主设计和改造生物。而智能体(Agent)是宇宙演化史上一种全新的存在:它能通过生成代码实现自举(bootstrap)和自我进化,就像一个程序员编写了另一个程序员,然后新的程序员又能继续编写下一个。也就是说,Agent 能够理解自身的运作机制,并根据目标创造全新的智能体,甚至改进自己。本书的使命,就是帮助你理解和掌握这种创造的原则。
本书的核心公式只有一句话:Agent = LLM + 上下文 + 工具。三者缺一不可。
更直观地说,就是大脑 + 眼睛 + 手脚。大脑(LLM)负责思考和决策,眼睛(上下文)决定 Agent 能看到什么信息,手脚(工具)决定 Agent 能做什么事情。(严格来说,“眼睛”只是一个粗略的类比:上下文不仅包含环境信息和对话历史,还包含工具定义等内容,也就是说 Agent “看到”的信息中也包括了“有哪些手脚可用”。这个隐喻旨在传达核心直觉:上下文是模型能感知到的一切信息。)
对熟悉强化学习的读者,这三者也可以映射到 RL 的形式化语言。具体来说,LLM 对应 Policy(策略),上下文对应 Observation Space(观察空间),工具对应 Action Space(动作空间)。三种说法对应同一个对象,只是表达层次不同。
但这三个词各自的含义远比字面意思丰富得多,第一章将从实践出发逐一拆解,并建立从直觉理解到学术概念的完整映射。
全书结构
本书共十章,分为三个部分(图0-1、图0-2):第一章是基础,建立对 Agent 的全局认知;第二至七章依次展开三大支柱:上下文(第二至三章)、工具(第四至五章)与模型(第六至七章,评估与后训练);第八至十章是进阶与应用,展示 Agent 的自我进化、多模态与实时交互,以及多 Agent 协作。
- 第一章(Agent 基础知识)以多个真实 Agent 产品为引,建立对 Agent 的直观理解。深入解析 Agent 的核心公式:从实现层的 LLM + 上下文 + 工具,到直觉层的大脑 + 眼睛 + 手脚,再到学术层的策略(Policy)、观察空间(Observation Space)与动作空间(Action Space)。同时通过实验剖析 ReAct 循环的运作机制,也就是“思考→行动→观察”的迭代过程,并介绍 Agent 的三种学习范式:后训练(Post-training)、上下文学习(In-Context Learning)与外部化学习(Externalized Learning)。最后讨论从工作流到自主 Agent 的编排设计模式,为后续章节建立统一的概念框架。
- 第二章(上下文工程)是全书最关键的一章,系统讲解上下文,也就是 Agent 的“眼睛”。本章先从 API 消息结构与 Agent 核心循环讲起,建立“上下文就是消息列表”的地基,再深入 KV Cache(大模型推理过程中复用历史计算结果的机制)的底层原理,然后依次展开:提示工程(Prompt Engineering,包括流程化设计、工具描述、业务规则细化)与提示注入(Prompt Injection)攻防、Agent Skills 的按需加载机制、Agent 状态栏技术,以及上下文压缩(Context Compression)策略。各术语的完整定义在正文首次出现处给出。
- 第三章(用户记忆和知识库)将上下文管理延伸到跨会话的持久化知识体系,让 Agent 不仅能记住当前对话的内容,还能在多次对话间积累和调用知识。涵盖用户记忆的四种渐进式策略、RAG(检索增强生成,即先检索相关文档再让模型生成回答)的完整技术栈(包括不同的文本搜索方法和搜索结果排序优化)、多模态信息提取、更高级的知识组织方法,以及智能体化 RAG(Agentic RAG,即让 Agent 自主决定何时检索、检索什么)。
- 第四章(工具)探讨 Agent 与外部世界交互的桥梁:工具就像是 Agent 的“手脚”,让它能够搜索网页、调用 API、操作数据库等。介绍 MCP 工具互操作标准和五类工具的设计原则(感知、执行、协作、事件触发、用户沟通),重点阐述执行工具的安全机制以及事件驱动的异步 Agent 架构。
- 第五章(Coding Agent 与代码生成)论证了 Coding Agent 加上文件系统,是所有通用 Agent 最核心的技术基础。以 OpenClaw 架构为主线,剖析 Coding Agent 的工作流程和实现技巧,并展示代码生成在编程之外的广泛价值:从辅助思考、构建知识库,到动态创造新工具和 Agent 自举。
- 第六章(Agent 的评估)构建一套科学的评估方法论。覆盖评估环境(工具调用型和人机交互型两种核心范式,以及章末单独讨论的仿真环境)、数据集的设计原则、LLM-as-a-Judge 自动化评判方法、评估驱动的模型选型,以及将评估结果转化为系统改进的完整闭环。
- 第七章(模型后训练)深入 SFT(监督微调,即用标注数据教模型“照样学样”)与 RL(强化学习,即让模型通过试错和奖励反馈自主提升)这两种后训练技术。以“SFT 记忆、RL 泛化”和“数据与环境比算法更重要”为核心论点,涵盖预训练/SFT/RL 三阶段全景、经典 RL 理论、奖励信号设计(从二元奖励到过程奖励、再到“奖励结果、约束过程”的验证路径惩罚)、单轮与多轮强化学习算法,以及样本效率优化等前沿探索。
- 第八章(Agent 的自我进化)探讨在不修改模型权重的前提下,如何让 Agent 持续变强。两大进化路径分别是:从经验中学习(策略摘要、工作流录制、系统提示词自动优化、Skills 知识外部化),以及主动发现和创造工具(MCP-Zero、开源工具集成、用代码创造新工具)。
- 第九章(多模态与实时交互)展望 Agent 从文本世界走向物理世界。覆盖语音 Agent(从串行流水线到端到端模型)、Computer Use(让 Agent 像人一样操作图形界面)和机器人操作(VLA(视觉-语言-动作模型)控制与 Sim2Real 迁移),揭示多模态和实时性带来的共同架构挑战。
- 第十章(多 Agent 协作)讨论 AI Agent 系统的终极形态:多个 Agent 如何分工合作。系统阐述多 Agent 协作的分类框架(上下文共享/独立 × 对等/管理者/去中心化),通过翻译 Agent、电话+电脑 Agent 等案例展示协作架构的设计方法,并展望 Agent 社会和 Agent 经济的前沿方向。
如何阅读本书
本书的各章节相对独立,你可以根据自己的需求选择不同的阅读路径:
- 如果你是 Agent 开发者,建议按顺序通读全书。第一至五章构成了核心知识体系,第六章的评估方法论同样不可跳过。第七章面向需要定制模型的读者,第八至十章则展示进阶方向。
- 如果你时间有限,优先阅读第一章(建立全局认知)和第二章(掌握最关键的上下文工程)。第二章中 KV Cache 的底层原理较为技术化,初次阅读可先跳过原理部分、只记住开头给出的三条核心结论,不影响后续理解。
- 如果你关注模型训练,可以直接阅读第七章(模型后训练);其中评估方法(第六章)是训练的前提,建议一并阅读,并先读第一至二章以建立整体认知。
每章都包含大量的实验和思考题,编号格式为“实验 X-Y”(X 为章节号,Y 为章节内序号)。实验和思考题的标题中用星级标注难度:★ 表示入门级,适合所有读者;★★ 表示中等难度,需要一定的工程实践基础;★★★ 表示进阶挑战,通常涉及开放性问题或复杂的系统设计。大部分实验配有完整的可运行代码,组织在配套的开源仓库中:
仓库中的项目名称与书中的实验一一对应,每个项目都包含完整的运行说明和依赖配置。我强烈建议你动手跑一遍这些实验。AI Agent 是一个实践性极强的领域,很多设计上的直觉需要在动手调试的过程中才能真正建立起来。
一个术语约定:有些英文技术词直译成中文会产生歧义,本书对两个高频词做了特别区分:把 reasoning(模型展开中间推导、“想”的过程)统一译为“思考”,把 inference(模型的前向计算与部署运行)统一译为“推理”。用两个不同的中文词,是为了避免“推理”一词同时承载两个概念、让读者无法区分。因此,凡是指模型思维链(Chain-of-Thought)、思考型模型(如 OpenAI o 系列、DeepSeek-R1,本书称“思考模型”“思考者”)、思考 token、思考过程的地方,本书一律用“思考”;凡是指模型运行部署(推理时、推理成本、推理栈、推理时扩展等)的地方,用“推理”。一个例外是几个已在中文里固化的复合词:逻辑推理、多跳推理、空间推理、时序推理,以及“推理游戏”这类日常用法,本书沿用习惯译法保留“推理”二字,请读者根据语境理解,它们指的是演绎推断的一般含义,而非上述 inference 的技术义。其他关键术语,正文会在首次出现处给出中英文对照。
前置知识
本书面向有一定技术背景的读者,但不要求你是某个特定领域的专家。以下按“必需”和“推荐”两个层次列出前置知识,帮助你评估自己的准备程度。
必需:阅读全书的基础
- Python 编程:书中几乎所有实验都基于 Python。你需要熟悉 Python 的基本语法、常用的数据结构、包管理(pip)等基本概念。不要求精通,但应能读懂和修改中等复杂度的 Python 代码。
- LLM 的基本使用经验:你应该用过 ChatGPT、Claude 或类似的产品,理解“提示词(Prompt)→ 模型回复”的基本交互模式。
- 一款 AI 辅助编程工具:强烈建议安装并熟悉至少一款 AI 辅助编程工具,如 Claude Code、Codex、Cursor、Trae 等。一方面,这些工具能显著提升实验的开发效率,书中的实验涉及大量的代码编写和调试。另一方面,这些编程工具本身就是成熟的 Coding Agent,你在使用它们的过程中,会直观地体验到 ReAct 循环、工具调用、上下文管理等书中反复讨论的核心机制,这种第一手的体验对理解 Agent 的设计原则极有价值。
- 软件工程常识:熟悉命令行操作、Git 版本控制、JSON 数据格式、REST API 等基本概念。这些是运行实验和理解 Agent 工具调用机制的基础。
推荐:提升特定章节的阅读体验
- 机器学习基础(第七章):了解训练与推理、损失函数、梯度下降、过拟合等基本概念,有助于理解模型后训练。
- 基础数学(第 2-3、7 章):对线性代数有直觉性的理解(比如知道向量可以表示方向和大小、矩阵可以做批量运算)有助于理解嵌入和注意力机制;基本的概率统计知识有助于理解评估指标和强化学习中的期望奖励。书中的数学不涉及复杂的推导,侧重直觉性的解释。
- Web 开发基础(第 4、9 章):了解 HTTP、WebSocket、前后端分离架构等概念,有助于理解事件驱动的异步 Agent 架构和语音 Agent 的实时通信实验。
- 对 Transformer 架构的基本了解(第 2、7 章):Transformer 是当前几乎所有大语言模型的底层架构。对于希望系统地补充大模型基础知识的读者,推荐阅读《图解大模型》(图灵出版)。该书以直观的图解方式讲解了 Transformer 架构、预训练与微调等核心概念,与本书的 Agent 工程视角形成良好的互补。
如果你在某些前置知识上有所欠缺,不必因此却步。本书的核心价值在于架构设计原则和工程实践的方法论,而非某个具体的算法或技巧。除第七章后训练以外,全书对数学和机器学习的要求很低,完全可以作为起点。
Agent 技术仍在快速演进,但好的架构设计原则具有穿越时间的力量。掌握了“为什么要这样设计”,你就能在技术浪潮的变化中保持清醒的判断力。希望这本书能成为你构建 AI Agent 的可靠指南。
致谢
感谢图灵的梦鸽老师和刘美英老师的辛勤编辑,以及为组织图灵《AI Agent 实战营》课程付出的努力;感谢刘俊明老师在国科大开设 AI Agent 实战课程。也要特别感谢图灵《AI Agent 实战营》的所有学员,以及国科大 AI Agent 实战课程的所有同学——在我讲授这些课程的过程中,大家给了我许多有价值的反馈与建议,也让我对这些概念本身有了更清晰的理解。
感谢 Pine AI 的所有同事。如果没有 Pine AI 这样优秀的产品,以及它所带来的种种挑战,我不可能在 Agent 领域获得如此深入的理解与实践;在一次次思想碰撞中,同事们也贡献了大量宝贵的思想输入。
也要感谢 AI 业界的许多朋友(在此不一一具名)。在各种行业讨论中,大家对我的观点给予了坦诚的反馈,纠正了我不少错误的判断,提升了我对模型与 Agent 的认知。
最要感谢的,是我的家人,特别是我的太太孟佳颖。她始终支持我完成本书的写作,还为本书提出了许多宝贵的意见。