HyMem:把规划者和打工人的办公桌分开,长程 Agent 的"信息洪水"有救了

你有没有用 Agent 跑过一个特别长的调研任务?前 10 步还挺清醒,跑到第 40 步就开始鬼打墙——反复搜已经搜过的东西,忘了自己最初要验证什么,最后给你一个似是而非的答案。你去看它的上下文,几万 token 里塞满了网页快照、报错日志、重试记录,而那句最关键的任务约束,早就被淹在第 12 页的某个角落里。

这不是模型变笨了,是上下文的信噪比崩了。中科院的这篇 HyMem(arXiv:2608.15703)把这个问题形式化成了一个很干净的指标,然后给了一个同样干净的解法:别在一个大杂烩上下文里做压缩了,从架构上把规划、执行、深度推理关进不同的房间,只允许"结构化快递"在房间之间传递。

核心摘要

长程 Agent 的痛点不是上下文不够长,而是稀疏的规划信号被高密度的执行痕迹稀释——作者称之为 上下文稀释(context dilution)。HyMem 是一个免训练的推理时框架:Planner 层只维护高层决策上下文,Executor 层在一次性空间里跑工具调用,复杂子任务被丢进隔离推理间(isolated reasoning)单独消化,三层结构化记忆(episode / working / tool)负责跨刷新保持任务连续性。原始观测和中间推理永远进不了 Planner 的上下文。效果上,配 DeepSeek-V4 在 GAIA 拿到 66.7 的平均 Pass@1、Browsecomp-plus 拿到 61.3,分别比最强 baseline 高 6.1 和 4.7 个点;Browsecomp-plus 困难档从 14.0 直接干到 30.0。我的判断:这不是底层创新,但把一个大家都隐约知道的工程直觉做成了有公式、有边界条件、有消融的完整方案,值得长程 Agent 从业者细读。

论文信息

  • 标题:HyMem: Hierarchical Context Management for Long-Horizon Agents via Information Isolation
  • 作者:XinQi Wang、Jinwei Xiao(共同一作)、Sijia Cui、Hongming Zhang、Yanna Wang、Qingyang Zhang、Bo Xu
  • 机构:中国科学院自动化研究所 复杂系统认知与决策智能全国重点实验室;中国科学院大学;南京人工智能高等研究院
  • 链接:https://arxiv.org/abs/2608.15703 (2026 年 8 月 16 日提交,v1)

问题动机:压缩是在治水,隔离才是治洪

现有方法处理长上下文基本就两招:压缩(ReSum、AgentFold、MEM1 一类)和外部记忆检索(A-MEM、Mem0、MemOS 一类)。作者的批评挺到位——这两招都是在一个已经混合好的扁平序列上做文章。规划信号和执行噪声早就搅在一起了,压缩会误伤推理链,检索会丢掉时序逻辑,而且分不清哪些是战略哪些是战术。

用作者的数学语言来说,上下文里的信息被切成两类:

  • \(Z_t = \pi_Z(C_t)\):规划相关信息——目标、已验证事实、约束、未解决的子目标
  • \(X_t = \pi_X(C_t)\):执行层痕迹——原始工具输出、浏览日志、重试、格式残渣、失败尝试

长程任务里 \(|X_t|\) 涨得远比 \(|Z_t|\) 快,于是规划信息密度

\[\rho_t = \frac{|Z_t|}{|C_t|}\]

一路往下掉。这就是上下文稀释。Figure 1(HTML 版没有栅格图,只有文字描述)用 GAIA 上的真实轨迹验证了这个现象:ReAct 的上下文越涨,任务关键信息的位置越靠后、密度越低,Agent 对核心约束的敏感度肉眼可见地衰减。

HyMem 的目标约束写得很有意思,用的是条件互信息:

\[I\big(C_{t+1}^{(p)}; X_t \mid R_t\big) \approx 0\]

翻译成人话:给定结构化返回 \(R_t\) 之后,Planner 的上下文应该几乎不再携带执行痕迹 \(X_t\) 的信息。注意这不是一个可微的训练目标——它纯靠接口设计强制实现:原始执行痕迹物理上就不会被追加进 Planner 的序列。这个想法其实挺漂亮的,把"信息卫生"从模型能力问题变成了架构约束问题。

方法核心:两层两模块,只许快递不许串门

HyMem 框架总览

Figure 2:HyMem 总体架构。(a) Planner 层负责任务分解与迭代规划,内置质量评估;(b) Executor 层接收工具指令,在独立上下文中跑工具循环;(c) 隔离推理模块消化复杂子任务,中间推理痕迹不外泄,只回传精炼结果;(d) 记忆管理模块把历史压缩成 episode / working / tool 三种结构化记忆,再按需注入 Planner 或 Executor 上下文。

整个框架就两个常驻/临时上下文空间加两个模块,动作集合极小——Planner 每步只能出四张牌:

\[\mathcal{A} = \{\langle\text{task}\rangle(d),\ \langle\text{isoReason}\rangle(d),\ \langle\text{fold}\rangle,\ \langle\text{answer}\rangle(\hat{y})\}\]

逐个看。

Planner(唯一常驻)。它的上下文长这样:

\[C_t^{(p)} = \big(P^{(p)}, q, \mathcal{M}_t^{\mathrm{epi}}, \mathcal{M}_t^{\mathrm{wm}}, \mathcal{M}_t^{\mathrm{tool}}, H_t^{(p)}\big)\]

其中 \(H_t^{(p)}\) 只存历史子会话的结构化返回,不存任何原始轨迹。整个任务生命周期里只有它活着,其他空间都是用完即弃。

Executor(用完即弃)。收到工具指令 \(d\) 后开一个新上下文 \(C_{t,0}^{(e)} = (P^{(e)}, d, \mathcal{M}_t^{\mathrm{tool}})\),跑一个有界的工具循环。关键一步是返回前的相关性蒸馏\(\tilde{o}_{t,j} = \phi(o_{t,j} \mid d)\),把导航文本、重复段落、格式残渣、工具报错模板统统剥掉,只留命名实体、日期、数值、来源 ID、证据片段和候选答案。最后打包成固定 schema 的 <results>[findings, evidence, sources, status, gaps]</results> 扔回给 Planner,原始观测当场销毁。

隔离推理模块(isolated reasoning)。这是全文我最看重的部分。碰到需要多跳分析、假设检验、冲突证据调和的子任务,Planner 发 <isoReason>(d),HyMem 开一个私密推理间,里面可以再调 Executor 取证,但所有中间思考过程永不外泄,只回传 <return>[conclusion, supporting facts, sources, confidence κ, assumptions]</return>,连置信度都标好了。说实话这个设计让我想到人脑的工作方式——你想清楚一件事之后,只会把结论告诉别人,不会把脑子里那半小时的纠结过程倒出来。

结构化记忆与 fold。三个可重写记忆:episode memory 记里程碑和已验证事实,working memory 记当前目标和未解决的坑,tool memory 记有效的工具用法和踩过的坑。fold 操作把三者联合重写:

\[\mathcal{M}_{t+1} = \Phi\big(H_t^{(p)}, H_{\leq t}^{(e)}, H_{\leq t}^{(\mathrm{iso})}, \mathcal{M}_t\big)\]

注入是不对称的:Planner 和隔离推理间拿全部三种记忆,Executor 只拿 tool memory。这个细节很讲究——干活的只需要知道工具怎么用,不需要背整个任务史。

fold 的触发条件也写得很工程化,确定性规则:

\[\mathrm{Trigger}(s_t) = [r_t^{\mathrm{ctx}} \gt 0.99] \lor [n_t^{\mathrm{exec}} \geq 5] \lor [n_t^{\mathrm{fail}} \geq 3] \lor [n_t^{\mathrm{turn}} \geq 8] \lor [n_t^{\mathrm{tool}} \geq 10]\]

上下文占用超 99%、执行器调了 5 次、连续失败 3 次、规划轮数到 8、工具调用到 10——任一命中就 fold。不靠模型自觉,靠规则兜底。

一句话总结这套设计:HyMem 不是在轨迹变长之后去总结它,而是从执行的第一秒起就限制哪些信息有资格进入决策上下文

实验结果:强基座上很能打,弱基座上露怯

两个 benchmark:GAIA(验证集 165 题中筛 text-only)和 Browsecomp-plus(随机抽 150 题,easy/medium/hard 各 50)。基座用 Qwen3-32B 和 DeepSeek-V4,所有框架的辅助 LLM 统一用 DeepSeek-V4。每个数字至少是三次独立运行的均值。

主实验

基座 框架 GAIA L1 GAIA L2 GAIA L3 GAIA 平均 P@1 BC+ Easy BC+ Med BC+ Hard BC+ 平均 P@1
DeepSeek-V4 无框架裸跑 35.7 27.2 15.8 28.3 14.0 10.0 0.0 8.0
DeepSeek-V4 ReAct 66.6 56.1 36.8 56.6 94.0 62.0 14.0 56.6
DeepSeek-V4 Summary 69.1 45.5 31.6 51.2 78.0 42.0 6.0 42.0
DeepSeek-V4 ReSum 76.2 54.5 47.4 60.6 78.0 46.0 6.0 43.3
DeepSeek-V4 A-MEM 61.9 48.5 26.3 49.6 70.0 34.0 6.0 36.7
DeepSeek-V4 THREAD 42.9 34.8 26.3 35.4 42.0 30.0 8.0 26.7
DeepSeek-V4 HyMem 77.0 65.2 49.1 66.7 90.0 64.0 30.0 61.3
Qwen3-32B ReAct 19.0 10.6 0.0 11.8 70.0 24.0 2.0 32.0
Qwen3-32B Summary 30.9 21.2 5.3 22.0 46.0 14.0 2.0 20.6
Qwen3-32B HyMem 45.2 30.3 15.8 33.0 48.0 24.0 4.0 25.3

几个值得细看的点。

难度越高,HyMem 优势越大。 Browsecomp-plus 困难档从 ReAct 的 14.0 涨到 30.0,翻了一倍多;GAIA Level 3 也从 36.8 涨到 49.1。这跟设计动机完全自洽——上下文隔离在需要持续规划、证据积累、多步验证的任务上最值钱。反过来说,easy 档 HyMem(90.0)反而略输 ReAct(94.0),简单任务上额外的控制结构是纯开销,这很诚实。

GAIA 上最强 baseline 其实是 ReSum(60.6)而不是 ReAct(56.6),摘要里说的"比最强 baseline 高 6.1 个点"是对着 ReSum 算的。说实话我读到这的时候顺手核对了一下,没水分。

Qwen3-32B 的结果是个警示。 GAIA 上 HyMem 从 ReAct 的 11.8 拉到 33.0,很猛;但 Browsecomp-plus 上反而 25.3 输给 ReAct 的 32.0。作者自己也承认:HyMem 的收益依赖基座遵循类型化控制指令、产出可靠结构化返回的能力。小模型连 schema 都填不稳,隔离得再好也白搭。这个结论比主结果本身更有工程价值——上下文工程救不了指令遵循短板。

效率与上下文行为

Figure 3 和 Figure 4(HTML 版同样无栅格图)讲了两件事。一是性能-资源权衡:HyMem 的 token 消耗和工具调用次数与 ReAct、ReSum 同量级,性能提升不是靠无脑堆资源换来的。二是上下文增长曲线:HyMem-Total(含所有临时上下文)照常猛涨,但 Planner 上下文增长缓慢得多——两条曲线的裂口直观证明了执行细节确实被关在临时空间里,只有结构化返回在喂养决策者。

消融实验

配置 BC+ P@1(DeepSeek-V4) 规划置信度 GAIA P@1(Qwen3-32B) 规划置信度
HyMem 完整版 0.6300 0.77 0.3200 0.82
去掉隔离推理 0.5800(降 5.0 个点) 0.68 0.1340(降 18.6 个点) 0.71
去掉记忆管理 0.5400(降 9.0 个点) 0.69 0.1340(降 18.6 个点) 0.70

两个模块都是刚需,但分工清楚:隔离推理保护 Planner 不受子任务推理噪声污染,记忆管理在 fold 之后保住任务连续性。GAIA 上砍掉任何一个都是直接腰斩(32.0 掉到 13.4),这个幅度大得有点吓人,也从侧面说明 Qwen3-32B 上 HyMem 的收益几乎全靠这两个模块撑着。置信度那列也有意思——去掉记忆管理后模型连"自己有多确定"都说不准了。

超参数方面补一笔:Planner 最多 12 轮、Executor 最多 10 轮、隔离推理全程最多 5 次且每次最多 3 步;ReAct 基线给了 100 轮预算。预算设得挺克制的。

我的判断

这篇论文最值钱的地方不是某个模块,而是把"上下文工程"圈里的一个朴素共识——规划和执行不该共享一个上下文——做成了有形式化定义(信息密度、条件互信息边界)、有强制机制(schema 化的返回接口)、有触发规则(fold 条件)、有消融证据的完整闭环。工程上这套东西不少人都在悄悄做,但写成论文讲清楚为什么 work 的不多。

但有几个地方要泼冷水。

一,蒸馏算子 \(\phi\) 是个隐藏的成本中心。原始观测剥壳、结构化返回生成、记忆重写,每一步都是额外的 LLM 调用(论文说辅助任务统一用 DeepSeek-V4)。Figure 3 说资源消耗"可比",但我没完全看懂这个"可比"是否把辅助调用的 token 全算进去了——这里我保留一点怀疑。

二,跟 THREAD 的边界需要更硬的对比。THREAD 也做递归子线程隔离推理,思路亲缘很近。HyMem 的差异在于"只回传 typed message + 三类结构化记忆",但表格里 THREAD 的分数低得反常(Browsecomp-plus 只有 26.7,比裸 ReAct 低一半),我怀疑复现配置是否充分调优。拿一个疑似没调好的 baseline 当陪衬,说服力打折。

三,全部收益绑定在强指令遵循基座上。Qwen3-32B 在 Browsecomp-plus 上的倒挂已经说明了:这是一套对基座有门槛的方案,不是普适增益。论文自己把这写进了 limitation,态度是诚实的。

四,固定阈值的 fold 触发器(99%、5 次、3 次、8 轮、10 次)一看就是手调的,不同任务分布下大概率要重调。作者在 future work 里也点了自适应路由和 fold 策略,说明他们清楚。

横向看,这个方向最近很热闹:ReSum 做周期性摘要、AgentFold 做主动折叠、MEM1 直接 RL 学记忆操作。HyMem 跟它们是互补而非替代——它的隔离机制决定了"进Planner 的信息有多干净",摘要/折叠方法决定"进来的信息怎么压缩"。我自己更倾向于认为,未来的长程 Agent 框架会把这两层都做成标配:架构层隔离 + 内容层压缩。

收尾

如果你正在搭一个要跑几十轮工具调用的 deep research 或 web agent,HyMem 的三个做法可以直接抄:Executor 用完即弃 + 固定 schema 返回复杂子任务关进隔离推理间确定性规则触发的记忆 fold。不需要训练,纯推理时组装,接进现有 ReAct 框架的成本不高。

但还有一个更本质的问题它没碰:当用户的意图在多轮交互中变化时,这套为单一长任务设计的分层隔离还成立吗?Planner 上下文倒是干净了,可它锁死的任务目标也可能过时了。这大概是下一篇论文的事。


觉得有启发的话,欢迎点赞、在看、转发。跟进最新AI前沿,关注我