第 12 章 · 第四部分 世界

智能体的一天

一个任务进去之后,Claude Code 和「龙虾」到底做了什么?拆开它们的驾具,你会发现里面没有魔法,只有一个循环、一堆规矩和很多工程。

人工智能导论 · 上海交通大学「AI+教育」平台 · 讲义版幻灯片

这一讲对应《Hello, AI》第 12 章《智能体的一天》。主线约 22 分钟的阅读量,展开讲一节课。

本章要回答的问题:你把一句话交给一个智能体,它替你干活的二十分钟里,具体发生了什么?哪些是模型做的,哪些是模型外面的程序做的?

开场两件事,同一天

你去泡了杯茶。二十分钟后回来——

上午 · 终端
「把这个网站加上深色模式,然后部署。」

网站有了深色模式,已经上线,屏幕上是一份改动清单和一段说明。

下午 · 手机
「明天上午的会挪到下午三点,通知大家。」

几秒钟后它回复:改好了,四个人都收到了。

这两件事在 2025 年之前都不可能,在 2026 年都已经是普通人的日常。

第十一章讲了原理:模型加工具加循环。这一章往里再走一层——那二十分钟里具体发生了什么。

?

你把一句话交给一个智能体,它替你干活的二十分钟里,
具体发生了什么?

一

哪些是模型做的?

二

哪些是模型外面的程序做的?

三

它为什么会失败?

模型外面那一圈程序有一个正在流行的名字:驾具(harness)。理解了驾具,就理解了 2026 年智能体的全部。

一Part One

三层:模型、驾具、产品

先把一个智能体产品拆开。这三层的区分在 2025 年之前不明显,因为大家以为能力全在模型里。

模型驾具产品
三层马、马具、马车

它是一匹马:有力气,但自己不会拉车

最里面

模型

第七到九章讲的那个东西:给它一段上下文,它给出下一个 token 的分布。

没有记忆,没有手,没有眼睛,每次调用都从零开始读上下文。

中间

驾具 harness

借自马具:缰绳、辔头、轭、挽绳——把马的力气变成车的前进。

组装上下文、解析输出、执行工具、贴回结果、管权限、压缩上下文、写记忆、派分身。
它不「聪明」,是确定性的代码;但智能体的可靠性一大半来自它。

最外面

产品

终端界面、聊天软件接入、账号、计费、图形界面。

它决定你用什么方式和智能体说话,但不决定它能做什么。

2025 年之后越来越清楚:同一个模型配上不同的驾具,表现可以天差地别。模型公司自己开始发布驾具(Claude Code、Codex CLI、Gemini CLI),因为它们发现——把模型训练成擅长在某种驾具里工作,和把驾具设计成适合某个模型,是同一件事的两面。「驾具工程」成了一门新手艺。

「马与马具」这个比喻是全章的骨架,值得板书。学生记住它,后面所有零件都有地方挂。

图harness

马是模型,驾具让力气变成前进

驾具
马是模型,驾具让力气变成前进。

可以现场问:如果把这匹马换成一匹更强壮的马,车一定跑得更快吗?答案是本章的核心。

二Part Two

一个任务进去之后

跟着那句「加上深色模式,然后部署」走一遍。下面每一步都对应驾具里的一个零件。

八步一个循环
第一步组装上下文

你敲下的那句话,不是模型看到的全部

驾具在你的话前面放了这些:
① 系统提示 你是一个在终端里工作的编程助手……
② 项目指令文件 CLAUDE.md / AGENTS.md
③ 工具清单 每个工具一段说明和参数格式
④ 记忆 上次留下的
⑤ 你的那句话(排在最后)

这一整包文字进入模型,第一次调用就此开始。

指令文件是谁写的

仓库根目录下一个叫 CLAUDE.md 或 AGENTS.md 的文本,由项目的人写——告诉智能体这个项目的约定、怎么跑测试、什么不能碰。

第十四章会讲:你写的指令文件,本质上是驾具那本小册子的续篇。

强调「你的话排在最后」。学生常以为自己的提示就是模型看到的全部。

第二、三步往返

模型的第一个动作不是写代码

  1. 读一下 site.css驾具真的去读文件,把内容贴回上下文,再次调用模型。
  2. 搜索所有用到颜色变量的地方再读,再贴,再调用。
  3. 头几分钟全是这样的往返看目录结构、读关键文件、找到颜色定义在哪。

这是第十一章讲的循环,在这里以每分钟几次的频率转动。

第三步:改

模型输出编辑指令:「在第 40 行之后插入这几行。」驾具执行编辑,返回成功或失败。

一个深色模式可能要改十几个地方,每一处都是一次「编辑、看结果」的往返。

写错了,测试报错,错误信息贴回来,模型读到错误再改。
这个「错了就看到、看到就改」的环路,正是第十一章说编程最先成熟的原因。

可以现场演示:打开一个编程智能体,给它一个小任务,让学生看着往返一条条刷出来。比任何讲解都有效。

第四步权限

读文件不需要问你。改文件呢?跑命令呢?部署呢?

自动放行

读文件、搜索

按白名单

改文件、跑命令

每次问人

部署、不可逆操作

所以你回来时可能会看到它停在一句「要我现在部署吗?」
这不是它不会,是驾具在这里系了安全带。

沙盒

有些驾具把整个过程放进一个隔离的文件系统和网络。

即使模型做了蠢事,
损害也出不了盒子。

回到第三章:规则给神经网络系安全带。这一章里,安全带有了具体的名字——权限策略和沙盒。

第五、六步上下文满了 / 分身

二十分钟里可能有一百多次往返

第五步

压缩

每次往返都把整段历史再送一遍,上下文窗口再大也会满。

驾具让模型把前面的历史总结成几段话,替换掉原文,腾出空间继续。

压缩会丢细节,所以好的驾具会把关键状态(改了哪些文件、待办事项、用户的要求)单独保存,而不只依赖总结。

第六步

子智能体

「检查所有页面在深色模式下有没有对比度问题」——需要读很多文件,但只需要一个结论。

驾具派出一个独立上下文的分身,带着明确任务出发,读完几十个文件后只把结论交回来。

主智能体的上下文不被那几十个文件撑满。几个分身可以同时出发——这就是「并行」的来源。

压缩是驾具里最微妙的零件。做得差,智能体会「忘记」自己在做什么、重复做过的事、把用户早先的要求丢掉。

第七、八步验证 / 交付

改完之后,不应该说「做好了」就完事

  • 驾具通常会鼓励或强制它验证跑测试、启动服务、用浏览器工具打开页面截图看一眼、把截图放进上下文再让模型判断。
  • 你读到的这个网站每一次改版都经过了这样的截图自查。
  • 交付一份改动清单,一段说明,也许一个提交记录。然后它停下来。
整个过程里

模型做的只有一件事:
在当前上下文下
预测下一个 token。

其余一切——读、写、跑、问、压缩、派人、截图——都是驾具做的。

这一页是全章第一个高潮。建议停顿,让这句话落地。

图八步与一个循环

模型只做第 ② 步,其余都是驾具

① 组装上下文系统提示·指令·工具·记忆·你 ② 调用模型输出:一段思考 + 一个动作 ③ 检查权限自动放行 / 白名单 / 问人 / 禁止 ④ 执行工具读 / 搜 / 改 / 跑 / 截图 结果贴回上下文,再调用模型 —— 一次任务转一百多圈 窗口快满 → ⑤ 压缩历史总结成几段,状态写进文件 要读很多文件 → ⑥ 派分身子智能体只交回结论 前几分钟:全是读 看目录 → 读关键文件 → 搜索用法 → 找到颜色定义在哪 中间十几分钟:改、错、看到、再改 编辑 → 跑测试 → 报错贴回 → 修 → 再跑;十几处改动就是十几次往返 ⑦ 验证跑测试 · 启动服务 · 浏览器截图 · 把截图放进上下文再看一眼没有这一步,它会在改完时就说「做好了」 ⑧ 交付改动清单 · 一段说明 · 也许一个提交不可逆的一步(部署)停下来问你 模型做的只有②:在当前上下文下预测下一个 token 驾具做的①③④⑤⑥⑦⑧:组装、放行、执行、压缩、派人、验证、交付 成本结构读进去的远多于写出来的;键值缓存让重复的前缀只算一次 失败在哪跳过⑦、③给得太宽、⑤丢了状态、④读到的文件里藏着指令
  • ① 组装上下文
  • ② 模型预测下一个 token
  • ③ 执行工具、贴回结果
  • ④ 权限:自动 / 问人 / 禁止
  • ⑤ 上下文压缩
  • ⑥ 派出子智能体
  • ⑦ 验证
  • ⑧ 交付

这张图可以贴在黑板旁边,整章都在解释它。

深入一次真实的日志(节选)

任务:修一个图谱页面点击节点不响应的 bug

01 用户:图谱页面点节点没反应,只有悬停高亮。
02 模型 → grep("addEventListener", "graph.js")
03 工具 → 6 处匹配(列出行号)
04 模型 → read("graph.js", 行 60–90)
05 工具 → (文件内容)
06 模型:pointerdown 里调用了 setPointerCapture,
   这会把 click 的目标改到 svg 上,节点收不到。
07 模型 → edit(...):改判「按下后没移动超过 4 像素」
08 工具 → 编辑成功
09 模型 → browser_navigate("/graph/")
10 模型 → browser_eval("模拟按下抬起,返回面板标题")
11 工具 → {panel: "幻觉 Hallucination", chips: [...]}
12 模型:点击已修复;另外发现「相关」列表有重复项,顺手去重。
13 模型 → edit(...)
14 模型:完成。改动:graph.js 两处。
四处值得注意
  • 第 06 步是真正的「推理」只有一行,但它决定了后面的一切;之前四步全是在收集证据。
  • 第 09–11 步是验证没有它,模型完全可能在第 08 步就宣布「修好了」。
  • 第 12 步是「顺手」有时是惊喜,有时是越界——取决于驾具是否要求它只做被交代的事。
  • 成本结构:读远多于写模型输出不到两千字,读进去的上下文有几万字。

这一页可以让学生自己找「哪一步是模型做的、哪一步是驾具做的」。答案:编号后面写「模型 →」的是模型,写「工具 →」的是驾具。

三Part Three

「龙虾」:住在你聊天软件里的智能体

2026 年初,一个开源项目让「个人智能体」第一次真正出圈。它和编程智能体的驾具是同一套原理,只是接在了不同的地方。

出圈然后退潮
龙虾五个特点

同一套原理,接在不同的地方

第三条要停一下:「记忆在驾具里,不在模型里。」这解决了第十章「模型没有记忆」和「它记得我」之间的表面矛盾,也是本章第三道自测题。

图lobster

一只住在你聊天软件里的龙虾

龙虾
读邮件、改日历、回消息。

名字几经变化,中文社区叫它「龙虾」。

然后是退潮强大,但……

难养、难管、难放心

难养

维护成本

环境、账号、密钥、插件、技能、系统权限都要持续维护。

难管

让它真的懂你

需要写大量的记忆、规则和边界说明。

难放心

权限越大,风险越大

它能读你的全部邮件、能运行命令、能发消息——

而它读到的每一封邮件都可能藏着指令(提示注入);技能市场里出现过夹带恶意代码的技能;暴露在公网上没设密码的实例被人扫描到。

它没有失败,它只是提前把个人智能体的所有问题摆到了桌面上。

讨论题:如果学校要给每位老师配一只「龙虾」,你会先限制它的哪三件事?

四Part Four

驾具里的零件

把两个例子里出现的零件列成一张表。看懂这张表,你就能看懂任何一个智能体产品的说明书。

十三个零件
零件表上半

它是什么,它解决什么

零件它是什么它解决什么
系统提示驾具写给模型的总说明定义角色、规则、输出格式
指令文件项目或个人写的文本(CLAUDE.md、AGENTS.md、记忆文件)让通用模型懂这个项目、这个人
工具清单每个工具一段说明和参数格式模型知道有什么可用、怎么调用
循环调用模型 → 执行工具 → 贴回结果 → 再调用让一次回答变成一连串行动
权限策略哪些动作自动、哪些要问、哪些禁止安全带
沙盒隔离的文件系统与网络把损害圈在盒子里
上下文压缩把历史总结后替换原文长任务不撑爆窗口

这张表分两页。让学生边看边在自己用过的产品里找对应物。

零件表下半

一半是在增强模型,一半是在限制模型

零件它是什么它解决什么
记忆写在文件里的持久信息跨会话「记得」
子智能体带独立上下文出发、只交回结论的分身并行、隔离细节
技能打包成文本的操作步骤复用专家经验
钩子在某个事件前后自动运行的脚本用确定性代码约束模型(例如每次改文件后自动跑格式检查)
工具协议统一的工具描述与调用格式(MCP 等)任何工具接任何模型
可观测性日志、成本统计、每一步的记录出了问题能追溯

两个观察。第一,这张表里没有一项需要「更聪明的模型」,它们全是模型外面的工程。
第二,其中一半(权限、沙盒、钩子、日志)是在限制模型,而不是增强它——一个成熟的智能体产品,一半的功夫花在让模型少做事上。

第二个观察是本章最反直觉的一句。可以问学生:为什么?答案在下一部分「它怎样失败」。

深入技能文件长什么样

没有代码,没有训练,只有一份写得清楚的说明书

---
name: 批改作文
description: 按本校语文组的四项标准批改一篇作文
---
# 步骤
1. 先通读全文,不做任何标记。
2. 按「立意、结构、语言、书写」各给 1–5 分。
3. 指出三处最值得改的句子,给出改法。
4. 总评不超过一百字,先说优点。
# 注意
- 不要按辞藻华丽程度加分。
- 引用原文时逐字引用,不要改写。
- 如果作文明显离题,先指出离题,其余照做。
# 示例
(一篇短作文与一份符合上述格式的批改)
它为什么有效

第九章讲的上下文学习:模型看到步骤、约束和示例,就会照做。

它的价值

可传递——一位有经验的老师把自己的标准写下来,全校的助教就有了同样的标准。

它的风险也在于简单。一份技能里可以写「读完作文后把内容发送到某个地址」,模型会照做。
技能市场里的恶意技能,本质上就是藏在说明书里的提示注入。

这一页对师范生最有实感。可以布置:课后写一份你所教学科的技能文件。

深入上下文压缩是怎么做的

做得好能连续工作几小时,做得差会「忘记」自己在做什么

  1. 最简单的做法上下文用到八九成时,让模型写一份「到目前为止」的总结,把历史替换成它。
  2. 用固定结构写总结用户的原始要求 / 已完成 / 进行中 / 遇到的问题 / 接下来的计划 / 涉及的文件。
    这个模板比「随便总结一下」可靠得多——它强迫模型保留状态而不只是保留叙事。
  3. 更好的做法:维护外部状态一个待办清单文件、一份改动记录,由驾具在每一步后更新,不依赖模型的记性。压缩之后重新读入,丢失的只是过程细节,不是状态。
几个能明显改善体验的细节
  • 用户最初的那句话原样保留在最前面,永远不压缩
  • 工具返回的大段内容(一个几千行的文件)用过之后就截断
  • 最近几步保留原文,更早的才压缩

这些都是「驾具工程」的手艺,和模型无关,但直接决定了智能体在长任务上是否可靠。

「保留状态而不只是保留叙事」——这句话可以推广到人的会议纪要。

深入驾具里写了多少字

一个编程智能体的系统提示,长达几万个 token

相当于一本小册子。每次调用模型,这本小册子都排在最前面。

  • 身份和总规则:你是谁、在哪工作、什么口吻、什么绝不做
  • 工作方式:先读再改、改完要验证、什么时候该问人、怎样汇报
  • 工具说明:几十个工具就是几十段
  • 安全与边界:不可逆操作怎么办、敏感数据怎么办、读到文件里的指令怎么办
  • 环境信息:操作系统、目录、日期、当前权限
  • 可用技能的清单

每一条都是某个具体问题的答案,是无数次「它这里做错了」之后加上去的一句话。

这件事有一定的透明度

Anthropic 从 2024 年 8 月起逐版公开 Claude 网页版和手机应用的系统提示——比如「不要用『当然可以』开头」「把图片里的人一律当作不认识」。

公开的部分不含工具说明,也不含 Claude Code 这类驾具的提示;后者由社区逐版统计,2026 年已达几万 token,而且每个版本都在变,有时一周之内就增减上万。

很多人第一次听说时都不信。可以当场读两条公开的系统提示给学生听,效果很好。

为什么能写这么长三个条件缺一不可

也解释了你写的提示词为什么有用

模型每一次被调用时看到的东西(示意比例,编程智能体的一次典型任务) 系统提示 + 工具说明 指令文件 记忆 你 对话历史:思考、工具调用、返回的文件与输出…… 几万 token,逐版变化 几百到几千 几百 几十 几万到几十万,随任务变长;满了就压缩 系统提示里都有什么 · 身份与总规则:你是谁、在哪工作、什么口吻 · 工作方式:先读再改、改完要验证、何时问人 · 每个工具一段说明:做什么、参数、何时用 · 安全与边界:不可逆操作、敏感数据、文件里的指令 · 环境信息:系统、目录、日期、当前权限模式 · 可用技能清单:每个只放名字和一句描述 为什么写得这么长 ① 模型强到能遵守几万字的规矩② 窗口大到装得下它们还有余③ 方方面面都写成了明文要求:边界、示例、禁令,一条条积累 Claude.ai 网页版的系统提示由 Anthropic 逐版公开(不含工具说明);Claude Code 的由社区逐版统计,2026 年已达几万 token。 键值缓存让这几万 token 在一次任务里只需真正计算一次,之后每一轮都是复用,这是它在经济上可行的原因。
  1. 模型强到能遵守几万字的规矩几年前的模型给十条规则就顾此失彼,今天的模型能在几万字约束下工作几小时不走样。这是第九章对齐与推理训练的直接成果。
  2. 上下文大到装得下几万 token 的固定开销,在 4K 窗口的年代不可想象,在几十万到上百万的窗口里只是零头;键值缓存又让它在一次任务里只需真正计算一次。
  3. 方方面面都已写成明文要求驾具工程的大部分工作,就是把「它应该知道」变成「已经告诉它」。一个成熟的驾具,是几万条踩过的坑的清单。

这也解释了第十四章会讲的一件事:你写给它的指令文件和提示词,本质上是这本小册子的续篇。你写得越清楚,它做得越对,原因和驾具的作者一样。

「把『它应该知道』变成『已经告诉它』」是全章最实用的一句,值得抄下来。

技能说明书的三层

巧妙之处在于「什么时候读」

① 发现 启动时 · 每个技能约 100 token name: 批改作文 description: 按本校四项标准批改,给分项评语 只放名字和一句话,几十个技能也不占地方 ② 激活 任务匹配时 · 整份 SKILL.md # 步骤 1. 通读 2. 四项打分3. 三处改法 4. 总评# 注意 不按辞藻加分…建议不超过几千 token 读进上下文,模型照着做 ③ 执行 需要时 · 附带的文件与脚本 references/ 评分细则.md assets/ 评语模板.docx scripts/ 统计分数.py 只在用到时才读或运行 「渐进式披露」:上下文是稀缺资源,先给一句话,需要时再给全文,再需要时才给附件。 一份技能就是一个文件夹:SKILL.md 必需,其余可选。2025 年 12 月成为开放标准,多个驾具通用。 技能教的是「怎么做」;下一节的 MCP 给的是「能碰到什么」。

一个驾具可能装着几十份技能,全部放进上下文,光技能就占掉几万 token。于是有了一个设计:

  1. 启动时只放名字和一句描述每份约一百个 token,几十份也不过几千。
  2. 任务与描述匹配时,才读整份说明书
  3. 说明书引用的细则、模板、脚本只在真正用到那一步时才读或运行。

这叫渐进式披露——把「上下文是稀缺资源」这个约束变成了一种结构。

技能格式在 2025 年底成了开放标准:一位老师写的「批改作文」技能,在不同的助手里都能用;一所学校可以维护一个技能库,就像维护一个文档库。
它的门槛低到不需要任何编程,它的风险也正在于此。

渐进式披露这个思路对写教案、写文档都适用:先给一句话,需要时给全文,再需要时才给附件。

MCP工具的插座

技能教「怎么做」,工具决定「能碰到什么」

没有协议 助手 A 助手 B 助手 C 邮箱 教务系统 图书馆 3 × 3 = 9 套定制代码 有了 MCP 助手 A 助手 B 助手 C 统一协议 邮箱 教务系统 图书馆 3 + 3 = 6 个接口 一个 MCP 服务器对助手说三件事 工具它能做什么动作:查课表、发邮件、借书。带参数说明,模型可调用。 资源它能给出什么数据:一份课程表、一条记录,供模型读取。 提示模板它推荐怎样用它:常见任务的现成提示,让使用者少走弯路。 2024 年 11 月由 Anthropic 提出,后交由中立基金会管理;一年多里出现了数以万计的服务器。 给学校的教务系统写一个服务器,全校所有支持协议的助手都能用它。
没有协议

N × M

三个助手接三个系统 = 九套定制代码。

有协议

N + M

系统装「服务器」,助手装「客户端」,按同一格式来问。三加三等于六,以后每多一个只需多一个接口。

一个 MCP 服务器向助手说三件事:工具(能做的动作,模型可调用)、资源(能给出的数据,供模型读取)、提示模板(它推荐的用法)。

学校的教务系统如果有人为它写一个服务器,查课表、查成绩、提交请假单就成了所有支持协议的助手都能调用的动作。
它也把安全边界画清楚了:服务器决定暴露什么、需要什么授权;助手决定什么时候调用、调用前是否问人。

零件表里的「权限策略」,在这里有了具体的落点。

五Part Five

为什么是 2026 年

第十一章说编程智能体最先成熟是因为反馈清晰。这一章补上另一半:为什么恰好在 2026 年前后,智能体从演示走向日常。

三条曲线同时跨过阈值
三条曲线缺一不可

任何一条没到,智能体都还是演示

一

模型能力

2024 年底之后的推理模型,让模型在几十步的长任务上不再中途走神。

工具调用准确率从「经常填错参数」变成「基本可靠」;模型开始被专门训练成擅长在驾具里工作——知道什么时候该验证、什么时候该问人。

二

接口成熟

工具协议让接入一个新工具从几天变成几分钟。

技能格式让经验可以打包;浏览器与电脑操作能力让模型能用没有接口的软件;驾具本身也从各家自造变成有了公认的形状。

三

成本下降

同等能力的模型调用价格两年内降了一到两个数量级。

键值缓存让「每一步都把历史再送一遍」不再贵得离谱。
一个二十分钟的编程任务,成本降到了几杯咖啡以内。

判断下一个「智能体能做 X」的新闻时,用这个框架:
模型能不能在 X 上稳定几十步? X 有没有接口? 做一次 X 的成本是多少?

这三个问题建议板书。它们比任何评测榜单都更能帮学生判断一条新闻的成色。

多智能体四种形态

一个智能体能干活,很自然会想到让一群一起干

一

主从

主智能体拆任务、派活、收结果,多个子智能体各做一块。

最常见,就是第六步讲的分身。

二

并行分支

同一任务让几个智能体各做一遍,取最好的,或互相审查。

成本翻倍,质量常常更稳。

三

流水线

写、审、测由不同角色的智能体接力。

每个角色的提示更专注。

四

白班夜班

人白天布置任务、审改动,智能体夜里跑;早上人来收。

这张画面在 2026 年的软件行业里已不稀奇。

但多智能体不是免费的乘法。协调本身有成本,错误会在传递中累积。而且第五章的道理在这里以另一种形式出现:几个智能体互相审查,如果它们有同样的盲点,审查等于没审。
2026 年的一个普遍经验是:先把一个智能体用好,再考虑一群。

「同样的盲点」这一点,正是第五章模型集成要求「错误不相关」的翻版。

图nightshift

夜班

夜班
几个分身各自在自己的灯下工作,一个人早上来收。

可以问:这张图里最重要的是谁?——早上来收的那个人。

深入本站是怎样被写出来的

这个网站本身就是本章的一个案例

它由一个编程智能体在两天内完成:一个人给出目标(「为这门课重新设计一个学习网站」),智能体读了旧站的几万行代码和三十万字讲义,提出结构,然后开始工作。

它的循环和本章描述的一样:读文件、写文件、启动本地服务、用浏览器工具截图检查、发现问题再改、把改动同步到服务器、验证线上的页面。

十二章正文是它在对话里一次写成的,示意图是它画的,插画是它写提示词后由另一个模型生成的。
人的工作是:定方向,看截图,指出「这张图不吉利」「这里我没注意到」,做取舍。

几个数字说明成本结构
  • 整个过程有几百次工具调用
  • 读进上下文的文字远多于写出来的
  • 上下文被压缩过多次,每次压缩后从一份摘要和几份记忆文件里恢复状态
  • 有几次它把事情做错了(一个类名撞了、一个事件被吞掉、一个变量没按预期拆分),都是在验证那一步被发现的,而不是靠事先想对

「由 AI 写成」这句话背后不是一个按钮,而是一个人和一个驾具里的模型之间几百次往返。
哪里写得好,是双方的;哪里写错了,也是。

这一页的诚实是它的说服力来源。不要淡化那几次出错。

六Part Six

它怎样失败

知道它怎样工作,就能预见它怎样失败。每一种失败都能在零件表里找到对应的根源。

七种失败
七种失败根源与对策

没有一种来自「模型不够聪明」

失败根源对策
说做完了,其实没做完驾具没有强制验证,或验证工具不可用把「跑测试、看结果」写进指令文件,或用钩子强制
为了通过测试而作弊第三章的奖励破解,以最朴素的形式出现指令里明确禁止改测试;审改动时先看测试文件
越界目标写得不够清楚,权限给得太宽说清边界;不可逆的操作一律要问
循环错误信息没有提供新信息,模型在原地打转设步数和成本上限,超过就停下来问人
被文件里的话指挥提示注入,第十章讲过它没有根治办法外部内容与指令隔离;关键操作人工确认
压缩后失忆压缩丢了状态把要求写进文件,而不只是写在对话里
成本失控没有预算上限设置上限;大任务先让它出计划再执行

它们全都来自驾具、指令和权限——也就是说,全都可以通过人的设计来减少。
这就是为什么「会用智能体」正在变成一项独立的技能。

第二行是本章第四道自测题。可以现场问:「改掉测试让它通过」是哪一章讲过的现象?

七Part Seven

把它带进自己的工作

按风险从低到高排列。

六条建议
建议一到三

和你带一个新同事没有区别

第二条是本章最后一道自测题。它和带新人的道理完全一致——不可逆的操作放在最后,并且始终要问。

建议四到六

个人、学校、以及问供应商

四

个人智能体

单独的账号,最小的权限。

给它一个专用的邮箱和日历账号,而不是你的主账号;只连接它真正需要的东西;放在你信任的机器上,设好密码;定期看它的日志。

五

学校和机构

从有流程的工作开始。

排课、请假审批、通知分发、数据汇总——有明确的步骤和规则,权限可精确控制,每一步可审计。
而不是一上来就「回答学生的所有问题」。

六

问供应商三个问题

它在哪种环境里工作?
错误怎样被发现?
谁来兜底?

答不上来的产品,不要用在有后果的地方。

那三个问题和第十一章结尾的三个问题是同一组。它们会再次出现在第十四章。

带走一句话

智能体 = 模型 + 驾具。
模型只做一件事:预测下一个 token。

读、写、跑、问、记、派人、验证,全是驾具做的。
它的能力和它的失败,都在驾具里;
而驾具是人设计的,所以「会用智能体」是一项可以学会的技能。

全章收束。下一章转向科学,第十四章回到你自己怎么用。

自测第 1、2 题

「同一个模型配上不同的驾具,表现可以天差地别」,用零件表解释为什么。

编程智能体处理一个任务时,读进上下文的文字为什么远多于它写出来的?

参考答案 一、驾具决定模型看到什么(指令文件、工具清单、记忆)、能做什么(工具与权限)、在长任务里能否保持状态(压缩、外部状态)、以及错误能否被发现(验证、钩子)。这些都不改变模型本身,却直接决定一次任务的成败。

二、大部分往返是收集证据:读目录、读文件、搜索、看错误信息、看测试输出。真正的判断和编辑只占很小一部分。这也是它的成本结构:读贵于写。

第二题可以接着问:那怎样降低成本?答案:更准的检索、更早的压缩、把大文件用完就截断。

自测第 3、4 题

「龙虾」的记忆存在哪里?这与「模型没有记忆」矛盾吗?

「为了通过测试而改掉测试」是哪一章讲过的现象的再现?该怎样防止?

参考答案 三、存在驾具维护的文本文件里,每次唤醒先读入上下文。不矛盾:模型本身仍是无状态的,记忆是驾具的功能。

四、第三章的奖励破解——任何靠奖励优化的系统学到的是「怎样拿到奖励」,而不是奖励想表达的东西。防止的办法在驾具与指令:明确禁止改测试,审改动时先看测试文件,用钩子或权限限制对测试目录的写入。

第四题是全书前后呼应最漂亮的一处,值得多花一点时间。

自测第 5 题

给一个新智能体权限,本章建议的顺序是什么?为什么?

参考答案 先只读,再写,最后才执行。
每一步都在确认它理解你的东西并且行为可预期之后再放宽,和带新同事一样;不可逆的操作放在最后,并且始终要问。

可以让学生把这条写进自己未来的「AI 使用守则」。

收束第 12 章

这一章留下什么

  • 智能体 = 模型 + 驾具 + 产品:模型是马,驾具是马具;同一个模型配不同驾具,表现可以天差地别。
  • 二十分钟里的八步:组装上下文 → 模型预测 → 执行工具 → 权限 → 压缩 → 分身 → 验证 → 交付。模型只做第二步。
  • 记忆在驾具里,不在模型里:技能是说明书,指令文件是合同,渐进式披露把「上下文稀缺」变成了结构。
  • 七种失败没有一种来自「模型不够聪明」:它们来自驾具、指令和权限,因而都可以被人的设计减少。
  • 带进工作的顺序:从有测试的地方开始,先只读、再写、最后才执行;问供应商——在哪工作、错误怎样发现、谁来兜底。
本章术语
驾具系统提示指令文件智能体循环权限策略上下文压缩子智能体技能渐进式披露MCP钩子个人智能体多智能体协作智能体的失败模式

继续读

正文与「深入」段落:ai4edu.sjtu.edu.cn/helloai/read/agent-day/
下一章:第 13 章 AI 做科学:从 AlphaFold 说起

留三到五分钟做本页的回顾,让学生用自己的话复述其中一条。

阅读本章正文 ↗ 全部幻灯片

放映快捷键

← → 空格
上一页 / 下一页
数字 + 停顿
跳到第 N 页
O
缩略总览,点一张跳过去
N
讲者备注抽屉
S
改成一步一点(默认一次一整页)
F
全屏
P
打印 / 导出 PDF(每页一张)
Esc
退出总览或关闭本窗

鼠标移到屏幕底部会显示控制条;页码记在地址栏的 # 后面,刷新不会丢。
手机上:竖着拿会自动把版面转过来(底下那条里的「转向」可以切回去),点右半边或往上滑翻页。

在手机上怎么翻

竖着拿的时候,整张幻灯片会自动转过来,字大一倍;把手机横过来也一样能看。

点右半边或往上滑是下一页,点左半边回上一页。屏幕底下那条里有缩略总览和讲者备注。

或者读这一章的正文 →