← 课程地图
第 03 章 · 上下文工程
Agent 的记忆难题
模型的"工作记忆"有限,而解题要读的东西近乎无限——上下文工程,就是这门调配记忆的学问。
按 → 开始 · 节点可点击直达
03-A · 窗口即记忆
上下文窗口 = 工作记忆
1
窗口有限:再大也装不下一个真实仓库
像 sympy 这样的项目几十万行——窗口再大,也只能装下它的一个切片
2
窗口内的才是「当前想法」
模型每次生成只看得见窗口里的内容——挤出去的等于忘掉
3
窗口是稀缺资源——每个 token 都有成本
既要花钱,又要和噪声竞争注意力:塞得越满,关键信息越容易被稀释
那这块稀缺的工作台上,都堆了些什么?
03-A · 窗口即记忆
谁在吃窗口
| 占用者 | 量级 | 说明 |
| system prompt | 数千 token | 规则 + 工具定义,全程常驻 |
| 题面 | 数百~数千 | problem_statement——任务背景 |
| 文件内容 | 每文件数千~数万 | read 工具带回的源码 |
| 工具输出 | 动辄上万 | 测试日志是最大的窗口杀手 |
| 历史消息 | 越滚越大 | 每轮对话全部累积 |
解题几十步后,窗口里 90% 是工具输出——管理它们就是管理记忆
03-B · 三板斧
窗口不够用的三个办法
截断 TRUNCATE
丢掉旧的
窗口快满时丢弃最早的内容——快,但有损
压缩 SUMMARIZE
折叠成摘要
把旧对话压成一段小结再继续——省空间,丢细节
外置 EXTERNALIZE
存到窗口外
关键结论写文件、要用再读——文件系统当外部记忆
真实 harness 三招混用——逐个看
03-B · 三板斧
截断:粗暴但常用
1
最常见策略:丢最老的
保头(system + 题面)保尾(最近几轮),中间的先扔
2
风险:丢掉的恰恰是线索
早期读过的关键文件、做过的关键判断——丢了就开始绕圈
3
「模型失忆」多半是截断策略的锅,不是模型笨
同一个模型,截断做得好与差,轨迹质量天壤之别
截断是做减法——能不能做「有损压缩」?
03-B · 三板斧
压缩与外置
1
压缩:把旧对话折叠成摘要再继续
好的压缩保留「决策与结论」,丢「过程与废话」——摘要有损,细节换空间
2
外置:文件系统当外部记忆
关键结论写进文件,要用时再读回来——窗口里只保持「当前正在想的」
3
子 Agent 隔离:脏活外包,只回摘要
让子 Agent 去读几百个文件,主窗口只收一句话结论——这是第 04 章的伏笔
三招都会转述信息——而转述,天生有损
03-C · 失效模式
失效一:电话游戏
1
A 的理解传给 B,B 加一层理解再传给 C
每一跳都偏离一点——链条越长,离原始意图越远
2
学名:上下文碎片化(context fragmentation)
多个 Agent / 多次压缩转述时最常见——各自都「以为」对方知道某事
3
对策:共享完整记录,而非摘要转发
让后来者读原始 trace 而不是前人的转述——一步到位消除转述损失
第二种失效更隐蔽——信息还在,但被挤没了
03-C · 失效模式
失效二:关键信息被挤掉
1
窗口被工具日志塞满,题面被挤出注意力
信息名义上还在窗口里,但被海量噪声稀释——模型「看不见」了
2
典型症状:重复读同一个文件
它忘了读过——记忆失效的直接外显,轨迹上一抓一个准
3
工程对策:工具输出先截断再入窗
几十屏日志压成「结果 + 关键报错行」——入窗之前先瘦身
这些症状,轨迹里全都看得见——最后一节
03-D · 工程实践
好 harness 的上下文纪律
1
按任务相关性筛选注入内容,而非全量塞
与当前子任务无关的文件、历史,不进窗口
2
工具输出入窗前先截断
保留关键行(错误、结果、路径),丢弃冗余日志
3
长任务定期落盘重要状态
已完成结论写文件——窗口被清空也能捡回来
上下文工程不是玄学,是可观测的工程
03-D · 工程实践
轨迹里看得见上下文健康度
1
token 曲线:窗口占用是否失控
每步的上下文长度连成曲线——陡增点往往是垃圾入窗点
2
重复读检测:记忆失效的信号
同一文件读了三遍以上——截断或挤出几乎必然发生了
3
上下文管理 = Agent 的「注意力管理」
管得好不好,不用猜——轨迹就是体检报告(第 05 章展开)
单个 Agent 的记忆难题讲完了——窗口装不下时,还能组队
03 · 终章
记忆有限,纪律来补
1
窗口是稀缺资源——每一 token 都要挣得位置
题面、代码、工具输出、历史,全在竞争同一块工作台
2
三板斧各有所长:截断快、压缩省、外置稳
真实系统混用——并且都在转述信息,都有损失
3
失效可观测:电话游戏、挤出注意力,轨迹上都有签名
重复读、token 陡增、绕圈——上下文健康度是可测的
下一章:窗口装不下,那就多开几个窗口——多 Agent 协作
下一章 · 多 Agent 协作 →
1 / 11
← → 翻页 · 深挖 ↗ 新标签 · Esc 退出
专注模式 · 第 03 章 上下文工程 · 生成时间:2026-09-11 · agentsoft-research-platform teaching-web-platform