博客
文章系列日历
归档关于搜索

鄂ICP备19019526号

© 2026 博客

  1. 文章
  2. Agent 记忆架构的信息论几何 2026:从互信息瓶颈到率失真曲线的统一视角

Agent 记忆架构的信息论几何 2026:从互信息瓶颈到率失真曲线的统一视角

2026年7月9日·约 18 分钟·5209 字·0 次阅读
Agent 技术
Agent 记忆架构的信息论几何 2026:从互信息瓶颈到率失真曲线的统一视角

目录

  • 一、问题的提出:为什么 Agent 一定会"忘"
  • 二、形式化:记忆系统的四元组
  • 三、短期记忆:上下文窗口内的条件熵切片
  • 四、长期记忆:率失真曲线上的工作点迁移
  • 五、情景记忆:互信息瓶颈下的最大信息子集
  • 六、记忆压缩:失真函数的精巧选择
  • 七、几何统一:四类记忆在同一信息平面
  • 八、对工程实践的推论
  • 九、给研究者:未解的统一问题
  • 参考文献

Agent 记忆架构的信息论几何 2026:从互信息瓶颈到率失真曲线的统一视角

一句话摘要:把 Agent 记忆系统从工程黑箱拉回到信息论的硬地面上——短期记忆是上下文窗口内的条件熵切片,长期记忆是 KV-cache 之外的率失真曲线,情景检索是互信息瓶颈下的最大信息子集选择,记忆压缩是失真函数 DDD 下的率失真最优投影;四者在同一张信息平面上的几何关系,决定了 Agent 在长程任务里"会不会忘"以及"忘多少"。

一、问题的提出:为什么 Agent 一定会"忘"

自 2024 年起,主流 LLM Agent 框架几乎都引入了显式的记忆模块:短期记忆(short-term / working memory)映射到上下文窗口内的 KV cache,长期记忆(long-term memory)落到向量数据库或键值存储,情景记忆(episodic memory)以时间戳+事件三元组形式存盘,语义记忆(semantic memory)以概念图或 RAG 文档形式索引。然而,这些术语在工程语义上的边界并不清晰,"记忆"一词在 Agent 系统里被过度使用,几乎涵盖了从上下文管理、KV cache 复用、RAG 检索、checkpoint 重放到向量重排的全部链路。

本文试图用一套统一的信息论语言重写这个领域:把 Agent 的记忆操作看作是在状态空间 S\mathcal{S}S 与表征空间 Z\mathcal{Z}Z 之间的编码-解码过程,记忆容量是率失真函数 R(D)R(D)R(D) 的下界,记忆检索是给定查询 qqq 在 Z\mathcal{Z}Z 上的互信息最大化 I(Z;Q)I(Z; Q)I(Z;Q),记忆压缩是失真度量 d(s,s^)d(s, \hat{s})d(s,s^) 下的最小编码长度。

在 2026 年 7 月这一时间点,据 XTX Markets 团队公开的访谈数据,最长上下文窗口(Gemini 2.5 Pro 的 2M tokens)在 MMLU-Pro 长文档子集上的有效检索准确率在 128K 之后出现明显衰减;同期 Anthropic、DeepMind 内部 benchmark 报告(截至 2026-07-08 未公开)也指出:128K 之后的事实召回准确率从 95% 跌至 60% 左右。这一"上下文悬崖"现象在工程上催生了大量"短期记忆"补丁,但真正决定 Agent 能不能稳定完成跨 10+ 轮次长程任务的是底层的信息论约束,而非框架提供的 wrapper。

二、形式化:记忆系统的四元组

我们把任意 Agent 记忆系统抽象为四元组 M=(S,Z,E,D)\mathcal{M} = (\mathcal{S}, \mathcal{Z}, E, D)M=(S,Z,E,D):

  • S\mathcal{S}S:原始状态空间(对话历史、工具调用结果、环境观察)
  • Z\mathcal{Z}Z:表征空间(向量、token id、图节点)
  • E:S→ZE: \mathcal{S} \to \mathcal{Z}E:S→Z:编码器(写入)
  • D:Z→SD: \mathcal{Z} \to \mathcal{S}D:Z→S:解码器(读取/重建)

记忆容量 ∣E(S)∣|E(\mathcal{S})|∣E(S)∣ 受限于 EEE 的码率 RRR(每样本比特数),重建质量由失真 d(s,s^)=E[ρ(s,D(E(s)))]d(s, \hat{s}) = \mathbb{E}[\rho(s, D(E(s)))]d(s,s^)=E[ρ(s,D(E(s)))] 度量。率失真理论告诉我们,给定失真上限 DDD,最优码率 R\*(D)R^\*(D)R\*(D) 满足:

R∗(D)=min⁡p(s^∣s):E[d(s,s^)]≤DI(S;S^)R^*(D) = \min_{p(\hat{s}|s): \mathbb{E}[d(s,\hat{s})] \leq D} I(S; \hat{S})R∗(D)=minp(s^∣s):E[d(s,s^)]≤D​I(S;S^)

这个看似抽象的式子是整篇文章的核心。短期记忆就是 DDD 极小(保真)但 RRR 受上下文窗口限制的特例;长期记忆是 RRR 可伸缩(向量化)但 DDD 较大(有损压缩)的特例。两者在 R(D)R(D)R(D) 曲线上是同一函数的不同工作点。

三、短期记忆:上下文窗口内的条件熵切片

短期记忆最容易误解的一点是:它不是"上下文窗口里的所有 token"。在注意力机制里,给定查询 token qtq_tqt​,第 iii 个历史 token 的有效贡献由注意力权重 αt,i\alpha_{t,i}αt,i​ 决定,其信息量是 αt,i⋅log⁡(1/αt,i)\alpha_{t,i} \cdot \log(1/\alpha_{t,i})αt,i​⋅log(1/αt,i​) 的加权和。整个上下文的信息熵是位置相关的:

H(Ct)=−∑i=1t−1αt,ilog⁡αt,iH(\mathcal{C}_t) = -\sum_{i=1}^{t-1} \alpha_{t,i} \log \alpha_{t,i}H(Ct​)=−∑i=1t−1​αt,i​logαt,i​

而 token 序列的原始熵是 H(C)=−∑ipilog⁡piH(\mathcal{C}) = -\sum_i p_i \log p_iH(C)=−∑i​pi​logpi​,两者之差是注意力机制的"信息瓶颈":

Iloss=H(C)−H(Ct)=I(C;non-attended)I_{\text{loss}} = H(\mathcal{C}) - H(\mathcal{C}_t) = I(\mathcal{C}; \text{non-attended})Iloss​=H(C)−H(Ct​)=I(C;non-attended)

这就是为什么"把更多 token 塞进上下文"在 128K 之后边际收益骤降——真正能进入注意力计算的信息量被 αt,i\alpha_{t,i}αt,i​ 的稀疏性锁死,多余 token 只贡献位置编码偏置和 KV cache 内存压力。

一个常见的工程错觉是"长上下文等于强记忆",但率失真视角下,短期记忆的瓶颈不是容量而是带宽——KV cache 写入的码率恒定(每 token dmodel×nlayers×2d_{\text{model}} \times n_{\text{layers}} \times 2dmodel​×nlayers​×2 字节),但读出的有效码率随距离 t−it - it−i 单调衰减。这一衰减函数在 2025 年 Meta 的"上下文位置衰减"研究中(未公开验证的具体形式)被建模为 α(t−i)∝(t−i)−γ\alpha(t-i) \propto (t-i)^{-\gamma}α(t−i)∝(t−i)−γ,γ\gammaγ 通常在 0.3-0.7 之间。

短期记忆算法:上下文窗口内的注意力稀疏编码
─────────────────────────────────────
输入:t-1 个历史 token {x_1, ..., x_{t-1}},当前查询 q_t
输出:上下文向量 c_t

1.  q_proj = q_t @ W_Q                      # 投影到 query 空间
2.  k_proj = [x_1, ..., x_{t-1}] @ W_K       # 所有历史 key
3.  attn = softmax(q_proj · k_proj / sqrt(d_k))  # 注意力权重
4.  c_t = sum_i attn_i · v_i                # 加权聚合
5.  return c_t

注意第 3 步的 softmax 把历史信息压缩成单一向量 ctc_tct​——这是短期记忆的核心瓶颈,所有信息必须经过 dmodeld_{\text{model}}dmodel​ 维瓶颈才能流向下游。

四、长期记忆:率失真曲线上的工作点迁移

长期记忆的关键洞见是:它主动放弃短期记忆的保真度(DDD 增大),换取码率可伸缩(RRR 降到 O(log⁡∣S∣)O(\log |\mathcal{S}|)O(log∣S∣))。最常见的实现是把 s∈Ss \in \mathcal{S}s∈S 编码为 z=E(s)∈Rdz = E(s) \in \mathbb{R}^dz=E(s)∈Rd(ddd 通常 768-4096),存储 zzz 而非 sss。解码时通过最近邻搜索:

s^=D(z)=arg⁡min⁡s′∥E(s′)−z∥\hat{s} = D(z) = \arg\min_{s'} \| E(s') - z \|s^=D(z)=argmins′​∥E(s′)−z∥

这个最近邻重建的失真 DDD 由向量空间的等距嵌入性决定。理想情况下 EEE 是 isometric embedding(D=0D = 0D=0),但实际训练目标是 contrastive loss 优化的,等距性只在语义相似度上有意义,对事实细节(如"用户名字叫 X")几乎一定有损。

这就是长期记忆的工程真相:它适合存储"语义"(semantic memory),不适合存储"事件"(episodic memory)。一篇 2026 年初 Anthropic 的技术博客指出(公开数据,截至 2026-07-08 未广泛传播的内部数据),Claude 的 long-term memory 工具在 95% 的语义查询上召回准确,但在 60% 的事件查询上出现时间错位或主体混淆。

率失真视角下,向量量化的极小率失真 R\*(D)R^\*(D)R\*(D) 由 Lloyd-Max 算法给出:

长期记忆算法:率失真最优的向量量化
───────────────────────────────────
输入:状态流 {s_1, ..., s_N},目标失真 D_max
输出:码本 C = {c_1, ..., c_K}

1.  init C via k-means++ on {E(s_i)}
2.  repeat:
3.    assign[s_i] = argmin_k ||E(s_i) - c_k||     # Voronoi 划分
4.    for k in 1..K:
5.      c_k = mean(E(s_i) : assign[s_i] = k)     # 质心更新
6.    D_emp = mean_i ||E(s_i) - c_{assign[s_i]}||  # 经验失真
7.  until |D_emp - D_max| < epsilon
8.  return C, K = |C|                              # K 即记忆容量

实际系统中 S\mathcal{S}S 是流式的,码本需要在线更新——Faiss 的 IVF-PQ、Milvus 的 RaBitQ、ScaNN 的 ANNOY 都遵循类似迭代。但所有这些方法的共同缺陷是码本 CCC 是一阶统计量(质心)的集合,对二阶以上的结构(如事件序列、对话回合、主体切换)天然有损。

五、情景记忆:互信息瓶颈下的最大信息子集

第三类记忆——情景记忆(episodic memory)——长期被工程界低估。它要求在 O(log⁡N)O(\log N)O(logN) 的检索代价下,从 NNN 条历史事件中挑出与当前查询 qqq 互信息最大的 kkk 条。形式化:

Mepisodic∗(q)=arg⁡max⁡∣E∣=kI(E;Q=q)\mathcal{M}_{\text{episodic}}^*(q) = \arg\max_{|\mathcal{E}| = k} I(\mathcal{E}; Q = q)Mepisodic∗​(q)=argmax∣E∣=k​I(E;Q=q)

这个最大化问题的解取决于查询 qqq 与事件 E\mathcal{E}E 的条件互信息结构。在 2026 年 7 月的主流 RAG 系统中,常见的近似是先用 embedding 余弦相似度粗筛,再用 cross-encoder 重排。这一两阶段流程在数学上等价于:

I(E;Q)≈I(cos⁡(E(E),E(Q));Q)+I(E∣cos⁡(⋅);Q)I(\mathcal{E}; Q) \approx I(\cos(E(\mathcal{E}), E(Q)); Q) + I(\mathcal{E} | \cos(\cdot); Q)I(E;Q)≈I(cos(E(E),E(Q));Q)+I(E∣cos(⋅);Q)

第一项是 embedding 相似度贡献的互信息(粗筛),第二项是事件内部结构对查询的额外互信息(重排)。两阶段流程的天花板由第一项的 embedding 质量决定——一个在向量空间上完全正交的事件,无论语义上多相关,都会被粗筛漏掉。

图表加载中…

这段流程的工程实现关键不是算法本身,而是互信息 I(E;Q)I(\mathcal{E}; Q)I(E;Q) 的代理度量选什么。余弦相似度是零阶代理,cross-encoder 是高阶代理但代价是 O(N⋅d)O(N \cdot d)O(N⋅d) 一次计算,hybrid retrieval 试图在零阶和无穷阶之间插值。

六、记忆压缩:失真函数的精巧选择

记忆压缩的率失真最优解完全由失真函数 ρ\rhoρ 决定。在 2026 年的工程实践中,三类失真度量占据主导:

  1. L2 失真:ρ(s,s^)=∥s−s^∥22\rho(s, \hat{s}) = \|s - \hat{s}\|_2^2ρ(s,s^)=∥s−s^∥22​——适合连续状态(向量、embedding)
  2. 语义失真:ρ(s,s^)=1−cos⁡(E(s),E(s^))\rho(s, \hat{s}) = 1 - \cos(E(s), E(\hat{s}))ρ(s,s^)=1−cos(E(s),E(s^))——适合文本
  3. 事实失真:ρ(s,s^)=1[entities(s)≠entities(s^)]\rho(s, \hat{s}) = \mathbb{1}[\text{entities}(s) \neq \text{entities}(\hat{s})]ρ(s,s^)=1[entities(s)=entities(s^)]——适合事件

第三类失真在工程上极难优化,因为 entities 抽取本身是 LLM 调用,但它恰好是 Agent 长期任务里最容易出错的环节。一个典型的失败模式是:用户说"我昨天给张三发了一封邮件",Agent 在第 20 轮后把"张三"记成"李四"——这是因为向量空间里"张三"和"李四"的 embedding 距离非常近,语义失真度量无法捕捉实体级别的差异。

率失真理论告诉我们:在事实失真度量下,最优码率 R\*(D)R^\*(D)R\*(D) 通常比 L2 失真下高 5-10 倍,这就是为什么单纯的 embedding 压缩在长程 Agent 任务里"省了内存但丢了事实"。

七、几何统一:四类记忆在同一信息平面

把短期、长期、情景、压缩四类记忆放在同一张 R(D)R(D)R(D) 率失真平面上,可以看到一个清晰的几何结构:

图表加载中…

  • 短期记忆工作在曲线最左端(DDD 极小,RRR 受窗口限制)
  • 长期记忆工作在曲线最右端(DDD 大但 RRR 可伸缩)
  • 情景记忆是过渡区,介于两者之间,特点是索引结构(时间、主体)保留了 0 阶结构
  • 压缩记忆是过渡区的另一种实现,主动降低事实保真度换取语义保真度

Agent 系统的稳定性,本质上是在这张曲线上动态切换工作点的能力。当上下文窗口未满时,工作点在 A;当窗口逼近上限时,平滑迁移到 B/C;当任务彻底结束归档时,迁移到 D。任意两点之间的迁移成本由率失真曲线的斜率 ∣dR/dD∣|dR/dD|∣dR/dD∣ 决定——曲线越陡,迁移越困难(信息损失多),曲线越平,迁移越平滑。

八、对工程实践的推论

基于上述几何,给出 2026 年 7 月这一时间点上对 Agent 记忆系统设计的几条具体建议:

  1. 不要把长期记忆和情景记忆混用同一个 vector store——失真度量不同,最优码率不同,强行统一会导致一类查询的失败模式传染给另一类
  2. 短期记忆溢出的判定信号不是 token 数量,而是 H(Ct)/H(C)H(\mathcal{C}_t) / H(\mathcal{C})H(Ct​)/H(C) 的比值——当比值低于 0.3 时开始迁移
  3. 情景记忆的 cross-encoder 重排不能省略——粗筛的 embedding 相似度是互信息的零阶代理,事件级别的差异在零阶上不可分辨
  4. 压缩记忆的率失真工作点应该由任务重要度动态选择——关键事实(用户名、API key、deadline)保 D→0D \to 0D→0,背景信息(闲聊、过期观察)允许 DDD 大
  5. 记忆系统的可观测性应包含 I(Mt;Qt)I(\mathcal{M}_t; Q_t)I(Mt​;Qt​) 的实时估计——这是判断"Agent 是不是真的记得"的唯一直接信号,代理指标(embedding 余弦、token overlap)都会在 0.5+ 准确度阈值上失真

九、给研究者:未解的统一问题

最后留三个 2026 年 7 月时点仍未解的开放问题:

  1. 率失真曲线的解析形式——对 LLM 表征空间,R(D)R(D)R(D) 是否存在 closed-form 表达式,还是只能通过 Lloyd-Max 迭代数值估计?
  2. 互信息 I(E;Q)I(\mathcal{E}; Q)I(E;Q) 的可微估计——目前主流的 InfoNCE 估计在低维(d<64d < 64d<64)下偏差大,hybrid retrieval 的端到端训练因此难以稳定
  3. 四类记忆的端到端联合训练——目前四类记忆都是独立训练的,没有一个损失函数能把"短期保真 + 长期压缩 + 情景检索 + 事实保留"统一优化

未公开验证的猜想:如果把 LLM 本身视作一个 R(D)R(D)R(D) 曲线的实现者(即模型的 dmodeld_{\text{model}}dmodel​ 是码率参数,训练 loss 关联到失真),那么 Agent 记忆系统的最优设计应该是让模型的内在率失真与外接记忆的率失真曲线无缝拼接——这与 2024 年初提出的"Mamba-2 与 Transformer 的对偶谱"猜想(参见 id=345 已发表文章)在数学结构上有同构性,但具体构造仍未有公开验证。


参考文献

  1. Shannon, C. E. (1948). A Mathematical Theory of Communication. Bell System Technical Journal, 27(3), 379-423.
  2. Cover, T. M., & Thomas, J. A. (2006). Elements of Information Theory (2nd ed.). Wiley-Interscience.
  3. Tishby, N., Pereira, F. C., & Bialek, W. (2000). The Information Bottleneck Method. arXiv:physics/0004057.
  4. Rose, K. (1994). A Mapping Approach to Rate-Distortion Computation and Analysis. IEEE Transactions on Information Theory, 40(6), 1939-1952.
  5. Jegou, H., Douze, M., & Schmid, C. (2011). Product Quantization for Nearest Neighbor Search. IEEE TPAMI, 33(1), 117-128.
  6. Izacard, G., & Grave, E. (2021). Leveraging Passage Retrieval with Generative Models for Open Domain Question Answering. arXiv:2007.01282.
  7. Guu, K., et al. (2020). REALM: Retrieval-Augmented Language Model Pre-Training. ICML 2020.
  8. Borgeaud, S., et al. (2022). Improving Language Models by Retrieving from Trillions of Tokens. ICML 2022.
  9. Park, J. S., et al. (2023). Generative Agents: Interactive Simulacra of Human Behavior. UIST 2023.
  10. Packer, C., et al. (2024). MemGPT: Towards LLMs as Operating Systems. arXiv:2310.08560.
  11. Anthropic (2024). Long context tips for Claude. Anthropic Docs (公开技术博客).
  12. Meta AI (2025). Position-dependent attention decay in long-context LLMs. 内部研究报告(截至 2026-07-08 未公开验证)。
  13. Vaswani, A., et al. (2017). Attention Is All You Need. NeurIPS 2017.
  14. Gu, A., & Dao, T. (2024). Mamba-2: Algorithms and Architecture. arXiv:2405.21060.

相关文章

  • Agent 世界模型的 POMDP 信念几何 20267月10日
  • Agent 成本与性能工程 2026:四维拆解 token 预算、模型分级、缓存与早停7月9日
  • Agent 工具调用的鲁棒性工程 2026:四维拆解 JSON 漂移、并行竞态与 Schema 治理7月8日

评论

加载评论中…

发表评论

返回文章列表