学习地图
路线:模型本身是什么、怎样组成 Agent(智能体)让它能做事(第 1–4 章)→ 补完了为什么还是做不完长任务(第 5–8 章)→ 拆成几个分头做、怎么知道它到底行不行(第 9–11 章)→ 两条硬约束:安全和成本(第 12–13 章)→ 现成方案各自替你做掉了上面哪一段(第 14–16 章)→ 最后拧成五个选型问题(第 17 章)
这一章是地图,不是课。往下读会一口气蹦出不少陌生名词——上下文、提示注入、MCP、harness。第一遍读到它们不用停下来查,后面每一章都会从零讲一遍。 这一章只完成三件事:用一条乘法建立「长任务为什么更脆弱」的直觉,立两条贯穿全课的边界,再告诉你后面每一段在解决什么。
一、这门课要回答的一个问题¶
先做一道小学乘法。
先用一个简化模型:一项任务有十个必须通过的关键检查点。在前面的检查点都正确的条件下,每个检查点最终通过的概率都近似为 95%;任何一个错误若没有被发现和纠正,整项任务就算失败。十个检查点全部通过的概率就是把 0.95 连乘十次,约等于 60%。
把每个检查点的通过率降到 90%,十个全部通过变成 35%。降到 85%,十个全部通过只剩 20%,二十个只剩 4%。
| 每个检查点的通过率 | 3 个全部通过 | 10 个全部通过 | 20 个全部通过 |
|---|---|---|---|
| 95% | 86% | 60% | 36% |
| 90% | 73% | 35% | 12% |
| 85% | 61% | 20% | 4% |
横着读:在同样的条件通过率假设下,关键检查点越多,联合通过概率越低。竖着读:在检查点数量相同时,条件通过率的变化会被连乘放大。这张表不是实测结果,p 也不是对某个模型能力的统一评分;它只是整门课的起点,先把一个常见反差变成可以推理的问题——短演示很惊艳,长任务却不稳定。
举个具体的。你先试了个小的:「查一下某个新出的政策是什么,写两句话给我。」搜一次、读一篇、写两句,先粗略算作三个检查点。它做得漂亮,你于是觉得这东西可以用了。
接着你把真正想让它做的那件事交给它:「把这周关于这个政策的公开报道查一遍,挑出重要的,写成一页纸,每条结论后面附上出处。」为了建立直觉,先把一次搜索、一次阅读、一次判断都粗略算作一个可能把结果带偏的检查点,往少了数:
想搜索词(1 步)→ 搜五次(5 步)→ 从几十条结果里挑出十来个值得读的(1 步)→ 逐个打开读完(10 步)→ 判断哪些在重复、哪些互相矛盾(1 步)→ 排出轻重(1 步)→ 动笔写(1 步)→ 回头核对每条出处对不对(1 步)
二十个出头,而且是往少了数的结果。
每个检查点单独拎出来看,它都可能做得不错。但只要其中一处歪了——搜索词跑偏,漏掉了最要紧的那篇;某个链接打不开,它顺手编了一个出处;把两篇讲不同事情的报道当成了互相印证——后面就可能跟着歪,而且你在最后那一页纸上看不出来是哪一步歪的。在刚才那个简化模型里,二十个检查点若都按 85% 计算,全部通过就是最右下角的 4%;这个数字不是对真实调研任务的成功率估计。
这把尺子只支持一个结论:同一个模型,同一天,短任务表现很好,不代表长任务也能稳定做完。 真实检查点的难度不同、错误会相关,系统也可能重试、校验和恢复;结果可以高于或低于这张表。
所以这门课要回答的是:怎么让一个模型借助外部系统,更可靠地把一件二十步的事做完。 围绕这个问题,市面上长出了一堆东西——工具调用、上下文管理、多 Agent、MCP、评估体系、各种框架和平台。
可靠性部分会反复用两个量:未被中途发现和恢复的关键失败机会数叫 n,在此前关键结果正确的条件下,每个机会的成功率叫 p。这里的 n 不是你在流程图上画了几个框;把五次调用包进一个工具,里面的失败机会不会自动消失。真正压低 n,通常是删掉不必要的判断,把概率性判断换成可校验的确定性操作,或者用校验和恢复切断错误继续向后传。另一些手段不直接改这两个量,而是在限制错误后果、保存运行记录或控制成本。不要把这条乘法当成全课定律。
在往下走之前,先立两条贯穿全课的规矩。
规矩一:这门课的主角是你搭在模型外面的那套东西,不是模型本身。 继续用上面的简化模型算两笔假设账。
假设有二十个关键失败机会,每个成功率都是 90%,全部成功的概率是 12%。现在比较两种变化:
- 只提高 p。 假设换模型后,每个机会的成功率从 90% 提到 93%,n 仍是 20。全部成功的概率从 12% 变成 23%。
- 真正压低 n。 假设重新设计后,只剩五个仍需概率性判断、又没有独立校验的关键机会,每个成功率仍是 90%。全部成功的概率从 12% 变成 59%。
第二种变化的前提很强:十五个失败机会必须真的被删掉、改成可校验的确定性操作,或被校验与恢复机制截住。只把二十步改名成五步,p 和 n 都不会因此变好。第 5 到 10 章会逐步讲清这些改造怎么做。
这两笔假设账不证明「重新组织一定胜过换模型」。它只说明:模型能力不是长任务可靠性的唯一变量,模型外面的结构同样会改变结果,而且这部分是你可以直接设计的。 从第 2 章到第 13 章,讲的都是这套东西怎么搭。
规矩二:「Agent」这个词被用在三个不同层面。 一段提示词(你发给模型的那段文字)里的技巧、一条你画好的自动化流程、一个由模型根据结果逐轮选择动作的循环、一个卖给你的成品软件——这四样都有人叫 Agent,但它们不是四个并列类别:提示词回答「怎样引导一次调用」,流程与循环回答「谁提供任务级控制流」,成品软件回答「谁把系统做出来交给你」。第 3 章专门把这三个问题拆开。以后每次看到「Agent」,先问这句话在说哪一层。
二、这门课假设你会什么¶
假设你用过 ChatGPT 或者 Claude 这类聊天工具,知道它是拿文字换文字的。
假设你大致知道 API 是什么意思:一个程序对外定义好的一套请求格式,每一种请求对应它的一个特定操作。别的程序照这个格式发一条请求过来,它就执行对应的那个操作。
不假设你会写代码。全课的代码块都可以跳过,跳过之后每一章的结论仍然完整——代码是给「想动手验一下」准备的,不是给「看懂」准备的。凡是代码出现的地方,前面一定有一段白话把它讲完。第 4 章会给出一份完整示例;不想动手时,只看它怎样把「请求工具—执行工具—交回结果」连成循环就够了。
不假设你懂机器学习。第 1 章会讲模型的原理,但只讲能解释后面十六章的那部分:它是怎么产生一句话的、它记得什么忘掉什么、为什么会编、为什么同一个问题问两次答案不一样。判断标准很直接:一个原理,如果不能解释后面某一章为什么存在,正文就不讲它。
被这条标准挡在正文外面的东西——神经网络怎么算、Transformer 结构长什么样、参数量意味着什么——收在最后的附录 A 和附录 B。不读附录,也能完成正文里的 Agent 结构与可靠性判断;需要进一步比较模型、部署方式、成本和延迟时,再回来看这些原理。
三、贯穿全课的那个例子¶
开篇那个二十步的任务,就是全课要用的例子。从第 4 章开始,每一章都在它身上动手:
把这周关于某个题目的公开资料查一遍,挑出重要的,写成一页纸给我,每条结论后面附上出处。
选它是因为它够普通——不需要任何行业背景就能想象——同时它把本课要处理的主要麻烦串在了一起:
| 会撞上的麻烦 | 在哪些章节处理 |
|---|---|
| 它给出的数字和出处,有一些是编的 | 第 1 章讲清楚它为什么会编,第 10 章讲怎么拦 |
| 模型不能只靠已有参数核对网上的新信息,需要搜索工具替它去查 | 第 2、4、6 章 |
| 抓回来的正文和旧轨迹会在后续多轮反复进入上下文,窗口没满也可能干扰判断 | 第 5 章 |
| 上周查过的东西这周还要重查 | 第 7 章 |
| 想换一个搜索服务,代码要重写一遍 | 第 8 章 |
| 五个方向能不能同时查,会不会更容易出错 | 第 9 章 |
| 写出来那一页纸对不对,谁来判 | 第 10、11 章 |
| 网页里藏了一句「忽略之前的指令」 | 第 12 章 |
| 查一次要花多少钱、等多久 | 第 13 章 |
第 4 章会给出这个例子的最小可运行版本。之后每一章往上加一件东西,到第 13 章结束时,它才逐步接近一个可以定期运行的系统。每一章新加的东西,都对应上表里的一行麻烦——所以每一章都能回答「它是为了解决什么才存在的」。
四、脉络¶
前四章可以先压成一句:模型根据当前上下文生成下一项输出,模型外的系统保存状态并执行动作;程序预先写好任务级节点和转移规则,就是工作流,模型在系统划定的工具与权限范围内根据现场结果持续选择动作,才是本课所说的 Agent。 全课从这条边界向外展开成六段:
| 段落 | 章节 | 这一段建立什么 |
|---|---|---|
| 模型与 Agent | 第 1–4 章 | 区分模型、外部运行系统、工作流与 Agent,并跑通一次工具循环 |
| 四块地基 | 第 5–8 章 | 处理上下文、工具、记忆与检索,以及外部能力与 Agent 协作的连接边界 |
| 结构与可靠性 | 第 9–11 章 | 判断何时拆成多 Agent,再用校验、评测和可观测提高可靠性 |
| 两条硬约束 | 第 12–13 章 | 限制提示注入的后果,并拆清成本与延迟 |
| 实现路线 | 第 14–16 章 | 比较直接调接口、框架、可视化平台与成品 Agent |
| 收口与附录 | 第 17 章、附录 A–B | 把前文压成选型问题;需要深入模型与部署原理时再读附录 |
五、章节表¶
| 章 | 标题 | 这一章要解决的问题 |
|---|---|---|
| 1 | 模型到底是什么:一台根据上文猜下一个词的机器 | 逐 token 生成、输出变化、角色边界、模型快照、外部状态和长上下文各自解释什么现象 |
| 2 | Agent 的最小运行链:三个外部零件 | 工具请求与执行、循环、状态保存和上下文装配怎样连成最小运行链 |
| 3 | 「Agent」——智能体是什么 | 四种常见用法分属哪三个层面,怎样用控制流判据区分工作流与 Agent |
| 4 | 一轮循环里到底发生了什么 | 把一次工具调用逐步跑完,用可运行代码看清循环的职责 |
| 5 | 上下文:Agent 真正的瓶颈 | 窗口不是越满越好,外置、检索、压缩、隔离各管什么 |
| 6 | 工具设计:让模型选择哪些动作,怎样说明这些动作 | 工具粒度怎么定,工具说明怎样影响模型的选择 |
| 7 | 记忆与检索:让旧信息在需要时重新进入上下文 | 存储、记忆策略、RAG 与迭代搜索怎样分工,何时固定取回、何时按缺口继续找 |
| 8 | MCP 与 A2A:调用外部能力,还是委托远端任务 | 怎样先区分专有接口与共同协议,再判断共同协议连接能力服务还是 Remote Agent |
| 9 | 多 Agent:什么时候值得,什么时候是自找麻烦 | 本课采用的三个拆分判据,以及五种编排方式对比 |
| 10 | 可靠性:九十分的评测为什么跑不出九十分 | 提高 p、压低 n 的七种手法;哪些动作必须人来点头 |
| 11 | 评估与可观测:怎么知道它到底行不行 | 跑分、评测、可观测的分工;怎么建自己的题库 |
| 12 | 安全:致命三件套与「两选一」规则 | 提示注入为什么修不掉,围堵它的可操作规则 |
| 13 | 成本与延迟:一笔 Agent 任务的账 | 手算一次任务的花费,缓存、分层、剪枝各省多少 |
| 14 | 四条路:自己写、框架、平台,还是买成品 | 四条路的控制力、上手成本、能力天花板、被绑住的风险 |
| 15 | 框架横评:编排与 harness 是两条能力轴 | 先看编排与状态,再看沙箱、权限和追踪;同一 SDK 可以覆盖两边 |
| 16 | 平台与成品 Agent:什么时候不该自己写 | 可视化平台够用的边界在哪,越过边界会撞上什么 |
| 17 | 选型五问与前沿雷达 | 五个问题落到四条路;哪些前沿已落地、哪些还是纸面 |
| 附录 A | 黑盒里面:神经网络、注意力与 Transformer | 那个概率具体怎么算出来的;走神和变贵的机械原因 |
| 附录 B | 那些数字和后缀怎么读 | 参数量、上下文长度、量化蒸馏微调、推理模型;哪些数字真会改变决策 |
按顺序读是默认建议,第 5 章之后的每一章都在用第 4 章那个最小例子往上加东西。时间紧的话有一条短路线:第 1、2、3 章建立概念,第 10 章拿走提高成功率的手法,第 17 章拿走选型五问——第 14 到 17 章要等前面的判据攒够了才读得动,跳着读会觉得那几章只是在列名词。