编码 agent 的上下文,该像编译器一样管
论文把编码 agent 的子任务树当成编译对象:显式声明边界、按需折叠上下文、保留前缀缓存。接入 Codex 后分数涨 11.8% 同时成本降 32.4%,比递归子代理便宜七成以上,文中给接入与选型建议。
长任务跑到一半,agent 的上下文里堆满了几百轮交互:重要的没记住,过时的删不掉。10 月 27 日提交的 Spine 换了个管法——把子任务树当成程序来编译,用完的细节换成结果,没完的现场保留。分数涨了,账单还降了三成。
一、发生了什么
论文先否掉两个流行方案:顺序堆历史会让上下文膨胀、性能下滑;无边界地压缩又可能扔掉未完子任务正需要的信息;递归派子代理则把任务粒度和执行者选择绑死,协调开销大。Spine 的接口叫工作范围:agent 显式声明子任务边界,同一个模型就能内联执行嵌套任务,只有真正独立的并行任务才委派出去。运行时维护一棵持久的 SpineTree,记录子任务关系、局部交互、完成状态和返回结果;每次调用模型前把树即时编译成上下文——未完子任务保留交互细节,已完成子任务只留结果,同时保住前缀缓存复用。
作者把它接进 Codex 做出 SpineCodex,用 GPT-5.6 Sol 实测:SWE-Milestone 分数提高 11.8%,总成本降 32.4%;ProgramBench 平均通过率提高 17.3%;十个 FrontierSWE 任务里八个的 Mean@5 提升;和递归子代理方案分数相当,但总成本低 73.7%。接进另一个框架 Pi,搭配 Gemini 3.8 Flash 和 Qwen 3.8 27B,也各有 4 到 17 个点的提升。
跨框架有效这一点值得注意:同样的接口和运行时,接在两个不同底座上都拿到正收益,说明省的钱来自上下文组织本身,不依赖某一家模型的特性。前缀缓存能复用也功不可没——已完成子任务的上下文虽然折叠了,但树结构稳定,缓存命中率不掉,这是很多「每次重拼上下文」方案做不到的。这是背景,不是论文结论。
二、跟你有什么关系
做编码 agent 的:上下文管理该从「截断压缩」转向「结构化编译」,改接口的成本远低于换模型。
管 agent 账单的:同等分数下三成到七成的成本差,直接来自上下文组织方式,这是最便宜的优化项。
造 agent 框架的:把子任务边界做成一等公民接口,是个可复用的设计,不用绑死某个模型。
三、怎么用
读到这儿,可以顺路看 电脑操作 agent 干完活,谁来验货 读完能了解电脑操作型 agent 的任务完成度为何难自动核验:老办法只看局部画面,新思路让验证器自己动手探索取证,在线离线都能用,做 agent 数据与评测的人值得看。- 让 agent 用显式语句声明子任务的开始与结束,别靠模型自己从文本里猜边界。
- 每次调模型前动态组装上下文:完成子任务折叠成结果摘要,进行中的保留细节。
- 委派子代理只留给可并行的独立任务,嵌套任务内联执行,省下协调费。
四、三个别信的说法
上下文超限只能压缩。 无边界压缩会丢未完任务的信息,按子任务树结构化折叠是更准的刀法。
多代理嵌套总是更好。 递归子代理方案分数与 Spine 相当但贵七成多,把粒度和执行者绑一起是过度设计。
降成本必然掉分。 这组实验同时涨分和降费,省的是重复上下文,不是模型能力。
五、一句话结论
上下文不是聊天记录,是编译产物:编译得好,又快又便宜。
信息来源
- 论文摘要:子任务树编译成结构化上下文的 Spine(arXiv),2026 年 10 月 27 日提交
功能与价格以官方公告为准。本文写于 2026 年 10 月 29 日。
每周一封,只发新教程和可复制模板。不发广告,随时退订。