LLM记忆:处理新信息的5种方法

Reddit r/artificial 论文

摘要

一篇HuggingFace文章,总结了IIT Madras研究人员的一篇论文,将LLM记忆处理归为五种方法——存储更多、压缩、纠正、推理时学习和分布可塑性——并探讨当新信息与旧状态冲突时,这些方法各自表现如何。

在HuggingFace上偶然看到这篇关于LLM记忆的文章。它超越了传统的"记忆层"方法——那种方法仅局限于LLM当前的能力。文章还探讨了不同方法下LLM能保留多少历史信息,以及当新信息与旧状态冲突时会发生什么。这张表格将方法分为五类: **存储更多**:保留显式历史,例如KV缓存和检索/RAG。新旧信息可以共存,由系统在读取/检索时决定哪一个适用。 **压缩**:将历史折叠进固定大小的状态,例如线性注意力、RetNet和Mamba。这节省了空间,但存储的关联会相互干扰,随着上下文增长会限制回忆能力。 **纠正**:通过门控或预测误差更新来控制变化,例如门控线性注意力、mLSTM和DeltaNet。通常比简单的"压缩"更高效,但在更大上下文下的扩展同样困难。 **推理时学习**:利用输入的证据更新可变参数,例如TTT和Titans。 **分布可塑性**:将变化分散到状态的各个交互部分,例如Dragon Hatchling(BDH)。记忆存在于高维空间中,具有稀疏性和分布性。 一个让我更容易理解的例子是:一个编程智能体学习到某个函数签名已发生变更。同时保留新旧两套定义意味着它保留了信息,但仍需判断哪套定义应该指导它的下一次调用。这使得读取时效率降低。 我怀疑这些类别是否处于同一比较层面。有些描述的是模型层面的机制,而另一些描述的是系统层面的设计。 好奇大家在这里怎么看这个问题,尤其是那些为自己的智能体构建过记忆系统的同行。当某些信息过时后,你们是立即更新记忆,还是保留历史并让模型在检索时自行判断?随着信息量的增长,哪种方法实际上效果更好? 表格与框架:R. Vimalkanth 和 T. Chudiwal,IIT Madras,《The Missing Piece in LLM Memory: Why Long Context and Retrieval Aren’t Enough for Belief Revision》,HF社区文章。
查看原文

相似文章

STALE:LLM智能体能否识别记忆何时失效?

Hugging Face Daily Papers

本文识别了LLM智能体中的一个关键失效模式:当新证据与先前信念冲突时,它们无法更新个性化记忆。本文引入了STALE基准和一个三维探测框架,揭示了即使最佳模型也仅达到55.2%的准确率,并提出了CUPMem作为鲁棒记忆修正的原型。

内存

Reddit r/artificial

解释了为什么由于KV缓存随上下文长度和并发用户数扩展,LLM推理越来越受内存带宽限制,以及像vLLM和PagedAttention这样的系统如何提高内存利用率。

LLMs与记忆限制——请审阅我的想法

Reddit r/ArtificialInteligence

本文分析了LLM记忆限制,认为真正的个人AI需要单租户权重定制,这与当前多租户云经济模式相冲突,并指出开源权重模型可能是进步的关键来源。