一个模型读过的文档另一个模型能直接读记忆:LatComm 让 LLM 之间共享压缩上下文
假设你有一个由多个大语言模型协作组成的系统——比如一个负责检索,一个负责推理,一个负责生成。它们需要共享同一段长上下文:一份 50 页的合同、一本技术手册、或者一段几小时的会议转录。
目录
一个模型读过的文档,另一个模型能直接"读记忆":LatComm 让 LLM 之间共享压缩上下文
一个常见但被忽视的成本
假设你有一个由多个大语言模型协作组成的系统——比如一个负责检索,一个负责推理,一个负责生成。它们需要共享同一段长上下文:一份 50 页的合同、一本技术手册、或者一段几小时的会议转录。
当前的做法是把这段文本作为 plain text 传给每个模型。每次有新问题,接收模型都要重新处理整段文本的所有 token。如果上下文是 10 万 token,三个模型轮着用,每个问题就要烧 30 万 token 的计算量。更糟的是,这段文本对每个问题都是一样的,但模型不得不每次都从头读一遍。
这就像三个翻译官轮流翻译同一本书,每次换人都要从头读一遍。能不能让第一个模型读完后,把"理解"直接传给下一个模型?
已有方案的不足
这个问题其实已经有不少人在研究,但现有方案都只解决了部分问题:
上下文压缩方法(如 ICAE、AutoCompressor)能把长文本压成少量 token,但压缩后的表示只能被同一个模型读取,换一个模型就读不懂了——因为不同模型的嵌入空间不同。
潜通信方法(如 Cross-attention based latent communication)能让一个模型把内部状态传给另一个模型,但通常需要两个模型一起训练,而且每个问题都要重新编码一次——因为编码过程依赖问题本身。
换句话说,"紧凑"、"可复用"、"跨模型可读"这三个性质,现有方法最多只能同时满足两个。
LatComm 的解法:把编码和读取分开
LatComm(Latent Communication interface)的核心思路是:把上下文的编码过程和读取过程彻底分离。
具体来说:
1. 编码阶段:一个冻结的编码器模型(context encoder)把长上下文压缩成一个固定大小的"数据包"(packet)。这个编码过程不依赖任何问题——它只看上下文本身。 2. 读取阶段:一个冻结的接收模型(receiver LLM)通过交叉注意力(cross-attention)从这个数据包里读取信息。关键在于,接收模型会根据自己的当前 prompt 计算出"门控"(gates),决定从数据包里读哪些部分。
这个设计的精妙之处在于:数据包只编码一次,但可以被不同的问题反复读取。而且因为编码器和接收器都是冻结的,不需要联合训练——任何两个 LLM 都可以直接用。
一个类比:图书馆和读者
想象一个图书馆。传统的做法是:每个读者要回答一个问题,都要把整本书从头到尾读一遍。这很慢。
上下文压缩方法的做法是:让图书管理员(同一个模型)把书的内容总结成一份摘要,然后只把摘要给读者看。但这份摘要只有这个管理员写的版本能被理解,换个管理员就得重新总结。
潜通信方法的做法是:管理员和读者一起培训,让读者学会读懂管理员的"暗号"。但每来一个新问题,管理员都要根据问题重新整理暗号。
LatComm 的做法是:管理员把整本书的内容编码成一份"结构化索引"(packet),这份索引只做一次。读者来了之后,根据自己的问题,通过一个"检索器"(gates)从索引里挑出相关部分来读。不同读者的问题不同,挑的部分也不同,但索引本身不变。
实验结果:57 倍压缩,3 倍加速
在 12 个多选题问答数据集上,LatComm 相比单向量基线方法平均准确率提升了最多 10.2 个百分点。
更亮眼的是在 QuALITY 数据集上的表现:这是一个长文本阅读理解基准,文章平均长度约 5000 词。LatComm 把接收模型的输入减少了 57 倍,回答一篇文章的所有问题速度提高了 3 倍。
57 倍是什么概念?如果原来要处理 5000 个 token,现在只需要处理约 88 个 token 的"数据包"。而且这个数据包可以被同一篇文章的多个问题复用——第一个问题编码一次,后续问题直接读取。
为什么这很重要
多模型协作系统越来越常见。从 RAG(检索增强生成)到 Agent 工作流,多个 LLM 分工合作处理长上下文已经是标配。但"每次都重新处理全文"的成本一直是个痛点。
LatComm 提供了一个新思路:上下文不需要被反复"阅读",它可以被编码成一种可复用的"记忆格式",让不同模型按需读取。
这和"检索代替阅读"的思路一脉相承——不是给模型更多信息,而是给模型对的信息。只不过 LatComm 把"对的信息"从外部检索移到了模型间的共享记忆层。
局限与思考
论文也有一些值得注意的地方。首先,LatComm 的编码器和接收器需要使用相同架构的模型族(比如都是 LLaMA 系列),跨架构的兼容性还没有验证。其次,"固定大小数据包"意味着信息有损——对于需要精确逐字引用的任务(如法律文书审查),压缩可能丢失关键细节。最后,门控机制增加了接收模型的计算开销,虽然总体上还是比全文处理快,但每个问题的边际成本比纯文本输入略高。
但作为一个概念验证,LatComm 证明了一件事:不同 LLM 之间可以共享"压缩记忆",而不需要联合训练。这为多模型系统的效率优化打开了一个新方向。
下次你看到三个 LLM 在轮流处理同一段长文本时,不妨问一个问题:它们是在各自"读"文档,还是在共享一份"记忆"?
论文:LatComm: Reusable Context Compression for Latent Communication between Large Language Models 作者:Huawei Lin, Jinting Liu, Tan Yu arXiv:https://arxiv.org/abs/2610.26840 HTML:https://arxiv.org/html/2610.26840v1