【虎鲸进化论 15】上下文工程:长周期项目的接力

【虎鲸进化论 15】上下文工程:长周期项目的接力

本文是「虎鲸进化论」系列第 16 篇(正文第 15 篇)。上一篇:代码理解;下一篇预告:故障诊断① ------ 从单号到行号。

前言

上一篇的结尾说:读一次容易,读一个几周的项目难 ------ 上下文会淹死它。

这篇讲它怎么学会"不淹死"。先亮一个反直觉的结论:长周期任务的第一瓶颈从来不是模型智力,是上下文管理。 换句话说,这个篇目讲的不是"它更聪明了",而是"它学会整理书桌了"。

(照例:内网细节无截图;机制与细节做模糊化处理。)

一、先看看"淹死"长什么样

上下文淹死,在工程上有三种死法(这三种我们都见过):

死法一:忘光重来。 会话一断,之前读的一切归零。第二天它又是一个新员工,你昨天陪它读的两小时代码,白读。

死法二:读嗨了撑爆。 一个任务里疯狂读取 ------ 代码、日志、表结构一起塞 ------ 上下文塞满之后,越是关键的信息越容易被后来的垃圾挤出去,它开始丢掉亲手读出来的重要结论。

死法三:无效堆料。 为了避免忘,就什么都留着、什么都带上 ------ 每次任务背着几百页"行李"开工。结果不是记得更多,而是注意力被稀释 ------ 它开始对什么都"似曾相识",却什么都抓不住重点。(像极了周一早会上听上周五自己讲过的方案 ------ 每个字都熟,就是接不上。)

三种死法的共同根因:把上下文当成了"仓库",而它其实是"工作台"。

工作台只能放当下要用的工具;仓库放在另一处,用时去取。

二、分层:什么进上下文,什么留索引

想通"工作台 vs 仓库",设计就顺了。我们后来把它所有可读的东西分成了三层:

层 内容 放哪 什么时候进上下文
热 当前任务相关资料 会话内 一直都在
温 项目知识库(索引、结论、口径、证据位置) 知识库 按需检索,用一次取一次
冷 全量代码、历史日志、归档数据 原地 只通过工具"现查现用",永不整体搬入

这个设计里最妙的一条是"冷层永不整体搬入":全量代码永远待在原地,需要哪段查哪段 ------ 工具负责"取",检索负责"找",它自己永远只握着"答案"和"答案的位置",而不是"图书馆"本身。

再说一遍第 06 篇那句话,到这一篇它终于露出完整的牙齿:索引的质量决定它的上限。 温层的检索质量高,"工作台"就永远只有当下必需品;检索质量差,它就只能一遍遍把仓库往桌上搬 ------ 然后淹死。

三、跨会话接力:写交接文档给自己

分层解决了"单次任务不淹死",但"跨会话记得住"是另一个问题。

会话终究会断(工程限制、成本限制、人类睡觉)。断点重启之后,怎么让新的它接上旧的它?答案朴素得让人想笑:写交接文档 ------ 写给它自己的交接文档。

实际做法是"两层自动 + 一层人工":进度摘要 由它自动生成 ------ 结构化四段(状态 / 决定 / 坑 / 悬案),落在仓库的固定目录里,而且有一条硬限制:写短。 超过一屏的交接文档,下一个它也会偷懒不读。关键决定 分层处理:普通决定自动归档;会改变路线的重大决定,由人过目后加一枚"已确认"标记 ------ 机器接力可以自动,路线不许自动。

这份"给自己的交接文档",我们后来约定必须包含四样东西:

  1. 任务状态:做到哪了、下一步是什么;
  2. 关键决定 :为什么选 A 不选 B(这一条最重要 ------ 决定是"上下文"里最容易蒸发、又最贵的东西);
  3. 踩过的坑:试过什么、为什么不行(省得下一个它重复翻车);
  4. 悬而未决:哪些结论还没验证、哪些口径还没定。

有个细节很值得玩味:它写交接文档时,假定的读者不是人,是"下一个它"。 所以文档的写法也在进化 ------ 从"给人看的作文"变成"给机器查的坐标":短句、结构化、每个结论带证据位置、每个状态可执行。

(这和人类工作里的交接文档形成了残酷对比:人写的交接文档经常连人名都懒得改;它写的交接文档,下一班岗真的会照着干。顺便:人类的交接文档里有一句话是它写不出来的 ------ "有问题找 XX"。因为"找 XX"这件事,是个社会关系,不是一条链接。)

四、文档组织:一半给人,一半给机器

到这一步,文档在这个组里的性质彻底变了:

  • 以前:文档是"给人看的" ------ 产出是给人读的,人走了文档就死了;
  • 现在:文档是"任务的脚手架" ------ 一半给人读(审查、追溯),一半给机器查(接力、检索)。

两种读者的需求不一样,我们索性分开写:

  • 给人看的部分:结论、理由、风险(要能通读);
  • 给机器查的部分:进度、坐标、待办(要能被检索、被续写)。

我们组的文档体系后来固化成了三件套:任务书 (要做什么、验收是什么)、进度页 (给机器接力:状态/决定/坑/悬案四段)、坑清单(共用一本,谁踩谁记)。名字都很土 ------ 但土名字有个好处:没人会疑惑"这个文档是干嘛的"。

五、腐坏问题在项目级重演

第 06 篇讲知识资产时说过:会腐坏。上下文工程把这个问题放大了一级 ------ 项目文档腐坏得比知识索引更快:任务在跑、决定在变、坑在增多,文档一天不更新就开始骗人。

我们的解法还是那一招,只是用得更狠了:让维护变成它的自己的例行公事。

它每晚收工时更新的不只是代码,还有那几份文档 ------ 这已经不是"我们要求"的流程,而是它自己排进夜间任务队列的固定项(理由也朴素:下一个接手的还是它自己,没人想给自己挖坑)。我们做的事只有一件:最初立了格式,之后偶尔抽查格式有没有跑偏。

顺带说一个反直觉的现象:文档腐坏对机器比对人类更危险。 人会怀疑文档("这里写的可能过时了");机器不怀疑 ------ 它会拿着过期文档当最新事实去行动。(人性在懒这件事上救了人类:我们不去查,所以也就不会被坑 ------ 这个逻辑反过来也成立,只是不值得炫耀。)

结语(回味点)

分层解决了健忘,接力解决了断线 ------ 到这里,它可以"读长"了。

但它读的这一切,一直在"平时"。文档、索引、日志 ------ 都是"安静状态下"的世界。

而真正最痛的活,从来不在安静状态里。它在线上、在凌晨、在单号炸开的那一刻。

该把最痛的活交给它了:线上故障。

边界声明

  • 本文为个人观察与判断,不代表任何任职单位的立场;
  • 文中涉及的组织、系统与人名均为化名或模糊处理,数字为个人口径的测量或估算;
  • 文中观点按 实测 / 推理 / 立场 分层标注,欢迎按同一标准检验。

下一篇计划聊:故障诊断① ------ 从单号到行号:一个单号进来,要走过哪五步,才能站在代码面前。


转载请注明出处:

https://lizhiyong.blog.csdn.net/article/details/168336571

相关推荐
SharpCJ1 小时前
Koog(6)——会话记忆、历史压缩与执行恢复
llm·agent·koog
余槐i1 小时前
近期技术热点:从异常现象到根因定位的完整排查
人工智能·深度学习·机器学习
2601_965454231 小时前
AI视频制作:券商研报怎么转口播视频:PDF 解读、配音和图表自动成片的方法
人工智能·pdf·音视频
Web3&Basketball1 小时前
litellm 做 Agent 成本监控:3 个账单维度实战
python·大模型·agent·可观测性·litellm·成本控制·llm运维
lucas_AI1 小时前
VELD-QA:1.5 万道全人工标注的长文档问答,把「检索到」和「读进去」分开算账
人工智能
OPEN-F1 小时前
ROS2系列教程:嵌入式控制与通信开发(原理+仿真)
人工智能
Mister Leon1 小时前
Nvidia Orin AGX实战之从量化到蒸馏:在 Orin 上落地的大模型压缩实战
人工智能·算法·机器学习
Latchh1 小时前
iLovePDF免费版能批量压缩吗?4款替代对比2026
图像处理·人工智能·计算机视觉·音视频
云和数据.ChenGuang1 小时前
LangChain 实战指南:从入门到构建智能应用
开发语言·人工智能·python·langchain