基于李博杰《深入理解 AI Agent:设计原理与工程实践》后记学习笔记
1900 年,开尔文勋爵在演讲中说,物理学晴朗的天空上还飘着两朵乌云——后来的故事大家都知道:一朵变成了相对论,另一朵变成了量子力学,整个物理学被彻底改写。
作者在全书结尾借用了这个意象:今天 Agent 的天空同样称不上晴朗,他看到了两朵乌云。一朵关于”实时交互”,一朵关于”持续学习”。它们是这本书最后悬而未决的问题,也是理解未来两三年 Agent 演进方向的两把钥匙。
在此之前,让我们先回到那个贯穿全书的公式:Agent = LLM + 上下文 + 工具。全书十章,都在这三个词里展开。
一、全书回顾:三个层次一次看全
| 层次 | 章节 | 核心问题 |
|---|---|---|
| 构建 | 第 1-5 章 | 上下文工程决定一次任务中”看到什么”;记忆与知识库把信息扩展到多次会话;工具定义”能做什么”;代码生成提供创造新工具与新系统的元能力 |
| 评估与进化 | 第 6-8 章 | 评估把表现变成可信信号;后训练把高维能力写入模型参数;持续进化把生产经验转化为知识、指令、程序或参数的受控更新 |
| 交互与协作 | 第 9-10 章 | 多模态与实时交互把感知和行动扩展到语音、GUI 与物理世界;多 Agent 协作改变上下文、工具与责任的组织方式 |
注意这三个层次并不是相互独立的书架。第八章尤其依赖前文的全部基础:没有轨迹和知识系统,经验无处保存;没有代码能力,Agent 无法修改工具与 Harness;没有评估,系统无法判断一次修改究竟是进步还是退化。它由此成为全书从”怎样构建 Agent”转向”怎样让 Agent 长期变好”的汇合点。
二、第一朵乌云:Agent 如何”活着”地与环境交互
今天绝大多数 Agent 仍是按轮次(turn-by-turn)的”请求—应答”模式:你说完一句,它想一整段,再一次性吐出结果。但真实世界不会停下来等它想完——话会被打断,画面在持续变化,邮件在不断到达。一个真正”活着”的 Agent,应该能边听边想、边说边想,甚至能在没人吩咐时主动发现”这封邮件该处理了”。
走向实时性有两条路,往往并行推进:
- 架构上做快慢分离——实时与智能几乎是两条正交的轴,单一模型难以兼顾。于是让前台快模型维持对话节奏,后台慢模型负责深度思考(这正是第 9 章”快慢解耦”思想的延续)。
- 把推理本身做快——当 decode 速度足够高,按轮次的等待就短到近乎消失,turn-by-turn 与”实时”的界限也随之模糊。这条路正被芯片与推理引擎快速推进:
| 方案 | 规模 | 速度 | 代价 |
|---|---|---|---|
| 小米 MiMo(模型—系统协同) | 1T 参数 / 单 8 卡节点 | 1000+ token/s | 依赖量化、并行推测解码等系统工程 |
| Taalas HC1(模型固化进芯片) | 80 亿参数 | 约 17000 token/s、响应 <100ms | 芯片只能运行被固化的那个模型,更新需重新流片 |
当模型每秒能吐出上千个字,”想完再说”和”边想边说”的体验差距就被抹平了。
三、第二朵乌云:Agent 如何从经验中持续成长
今天的模型更像一个记性极好、却学不会新东西的天才:训练时把人类知识背得滚瓜烂熟,上岗后却几乎不再成长——每次任务结束,那些踩过的坑、试出来的窍门,大多随着上下文一起被丢掉。
这究竟是不是一个真问题?取决于两种针锋相对的假设:
| 维度 | 小世界假设 | 大世界假设 |
|---|---|---|
| 核心主张 | 足够大的模型(如几万亿参数)装得下物理世界几乎所有重要的通用知识,学一次就够 | 属于具体用户、具体公司的知识不在任何训练语料里,而且时时在变,只能上岗后持续学习 |
| 支持者 | 不乏 OpenAI、Anthropic 的研究者 | 本书作者视角 |
| 证据倾向 | AI 唯独在编程上最强——不是代码特殊,而是海量开源代码可供学习;多数行业没有公开数据,所以前沿实验室一家家去与行业合作,”蒸馏”进模型 | 你公司的代码规范、团队做 PPT 的口味、某个客户特有的脾气——都不在语料里,无法指望出厂时一次配齐 |
| 结论 | 瓶颈在数据够不够,喂进去训练一次就好 | 模型只能通过记忆(第 3 章)与持续进化(第 8 章)贴合由无数具体情境拼成的”大世界” |
更进一步,”AI for AI”与”AI for Science”都在推动 Agent 走到没有现成答案的前沿——在那里,它只能从一次次实验的成败中自主学习,而不是事事回头问人。所以作者给出一个重要的判断:
模型最强的能力,终将不是记住,而是学习与适应。
这两朵乌云,都不是靠某一次模型升级就能凭空吹散的。要理解它们最终会怎样被跨越,得先看清另一件事:模型和 Agent,从来不是上下游,而是一起往前走的。
四、一条飞轮:模型与 Agent 的共同演进
回头看那些 harness 里层层叠叠的兜底逻辑——多级上下文压缩、失败数千次才熔断的重试、悲观地默认”不安全”的权限判断——每一段看似丑陋的”屎山”,记录的都是模型此刻还做不稳的地方。它们构成了一个自我强化的飞轮:
1
2
3
4
5
6
7
8
9
用户提出真实难题
↓
应用层用 harness 把模型暂时做不好的事补上
↓
补救沉淀为下一轮训练的信号
↓
下一代模型把这些约束内化,对应代码删掉
↓
模型更强 → 面对更难的难题 → 回到第一步
当下一代模型内化了这些约束,对应的代码就可以删掉;而模型之所以能内化,又正是因为 Agent 早已在真实业务里替它把这些坑趟了一遍。
模型会不会最终吃掉 Harness?会,一层一层地吃。 第九章的交互模型就是样本:打断、插话这些曾经要靠外挂 harness 才能拼出的行为,如今被直接做进了模型内部。但这个”吃”永远不会完结,原因有三:
- 训练以月计——模型等得起,业务等不起;
- 模型无法内化真实业务中所有的约束与偏好,总有一层最新的边界需要外部逻辑兜底;
- 每一代模型都会打开新的能力前沿,而前沿处恰恰是模型最做不稳的地方。
所以 Harness 不会消失,它只是随着模型不断向新的前沿迁移。这也正是《苦涩的教训》在 Agent 时代的读法:通用方法终将胜出,但”终将”二字里的每一段路,都是 Harness 铺出来的。
有个实验很能说明问题:不换模型、只改 harness,任务准确率从 52.8% 跳到 66.5%。这既说明 harness 今天的杠杆有多大,也提醒你:它之所以有这么大杠杆,恰恰是因为模型还没走到那一步。Anthropic 用 Claude Code 做的,正是让自家模型和自家 harness 互相喂养、共同进化——这条飞轮本身,就是这个时代最深的一条护城河:真实业务、反馈数据与模型迭代咬合得越紧,别人越难从外部追上。
五、你站在飞轮的哪一端?
- 如果你在造模型:护城河就是把这条飞轮转起来——让真实场景的反馈尽快回流到训练里。
- 如果你在模型之上造应用:harness 是你短期最锋利的技术杠杆,但要清醒——模型每内化一层约束,就会顺手抹平一批只靠 harness 建立的优势。应用层真正长久的护城河往往在技术之外:独占的数据、稳固的渠道、用户的信任、网络效应,以及那些 AI 短期内接不住、必须由人与 Agent 协作才能完成的复杂场景。
把 harness 用来争取时间,把这段时间用来构筑技术之外的壁垒,才是稳妥的打法。
结语:三个不过时的问题
不必焦虑手里的框架会不会过时。模型每几个月迭代一次,具体的 API、产品和榜单都会翻篇,但三个问题不会过时——它们描述的不是某个模型的用法,而是一个智能系统与世界交互的基本方式:
- 看到什么(上下文)
- 能做什么(工具)
- 如何验证做得对不对(评估与进化)
掌握了它们,无论下一代模型带来什么新能力,你都知道该把它放进公式的哪个位置,也能一眼看出它离吹散那两朵乌云还有多远。
这本书的全部正文、配图与配套实验代码都是开源的。读懂和做出来之间,隔着一条只能靠双手跨过的河。而 Agent 最迷人的地方,正在于它能通过写代码创造新的能力,甚至改进自己——读到这里,你已经握住了”创造”的原则。
接下来,去造点什么吧。