从零开始理解 AI 智能体如何工作
AI 智能体就是一个放进循环、配上工具的语言模型:它读取请求,申请调用工具,拿回结果,再决定下一步做什么,直到把事情做完。Agent Harness Patterns 把这个循环一块一块拆开讲,共 17 个层层递进的简短模式。
每个模式都会展示问题、一段智能体解决它的动画轨迹,以及两份代码:一份是用 TypeScript 和 Python 从零手写,另一份使用 astorlm,也就是这些模式所源自的开源 TypeScript 智能体 SDK。
基础关卡路线
-
0
你的工具箱
任何智能体之前的基础零件:模型、system prompt、你每次重发的消息,以及第一个工具。
-
1
什么是智能体?
调用一次模型、搭一个工作流,和让模型自己决定做什么,这三者有什么区别。
-
2
智能体循环
调用模型,执行它申请的工具,把结果交回去,如此反复,直到它说完成。
-
3
设计一个工具
名称、描述和 schema:模型对一个工具的全部了解。
-
4
何时停止
end_turn、轮数上限和终止型工具:结束循环的几种方式。
-
5
循环中的错误
工具出错不会让智能体崩溃:错误作为结果返回,模型自己就能纠正过来。
-
6
钩子
你的代码介入循环的那些点:每一轮之前、每次调用模型之前、每次运行工具之前。
-
7
背包装满了
当历史记录再也装不进上下文窗口时会发生什么,以及如何压缩它。
-
8
按需加载的技能
一份轻量目录随时在手,完整手册只在需要时才拿出来。
-
9
记忆
跨会话记住事情:保存的历史、文件,以及按语义搜索。
-
10
每圈重新开始
当一个会话装不下整件工作时:每一圈都用一个全新的智能体,进度保存在文件里。
-
11
可观测性与评估
看清智能体做了什么、花了多少钱,以及做得好不好。
-
12
先规划,再反思
动手之前先把计划想清楚,交付之前先检查结果。
-
13
人在回路
先征求许可,中途接受纠正,拿不准时就上报。
-
14
安全与沙箱
把智能体运行的东西关起来,对它读到的东西保持怀疑。
-
15
子智能体
把子任务交给另一个拥有干净上下文的智能体。
-
16
主动式智能体
会自己醒来的智能体:一个心跳,先做一次廉价检查,只在重要时才发消息。
用 astorlm 来构建
把智能体循环做成一个库:面向 TypeScript 的可嵌入、SDK 优先的智能体运行时。
pnpm add astorlm
在用 AI 编程助手?把它指向 llms.txt,或者阅读给 AI 智能体的指南。