AI长期记忆新解:5000万token窗口,比重算更快更省

galahad-kv将大模型KV状态持久化到NVMe磁盘,实现5000万token历史的无重算快速复用,速度提升最高4.3倍、能耗降低最高12.3倍。
大语言模型每次推理都需重新计算历史token的KV状态,在超长上下文场景下造成极大算力浪费。论文arXiv:2610.10845v1提出的`galahad-kv`工具,将每约1.6万token块的KV状态加密存储至本地NVMe磁盘,之后可字节精确地加载复用,彻底跳过重算环节。在单张H100上针对5000万token的实测中,加载速度比重算快2.8—4.3倍,GPU能耗降低8.8—12.3倍,显存占用全程平稳。Gemma 4 31B模型在百万token深度的事实问答中答对98/100题且无幻觉。需要明确的是,该机制并非更宽的注意力窗口,而是外部记忆状态的高效复用,一次只加载一个块,且首次处理和TB级存储是不可忽视的前期成本,适合需要反复访问同一批海量文本的场景。
大模型的记忆瓶颈
大语言模型只能处理装进上下文窗口的文本,而且每次收到提示词时,都会重新计算内部的键值状态(KV state)。这种重复计算带来两个直接后果:响应变慢、GPU能耗飙升。当对话或任务涉及数百万token的历史信息时,这个成本几乎不可承受。
一篇发表于arXiv的论文(arXiv:2610.10845v1)提出了一个值得关注的思路——与其每次重算,不如把算过的KV状态存下来,需要时再精确加载回去。研究团队测试的开源工具名为galahad-kv,核心做法是将每个约1.6万token块的KV状态保存到加密的本地NVMe磁盘,之后按字节精确(byte-exact)地重新加载,完全跳过重新计算的环节。

**KV状态(Key-Value State)**是Transformer架构中注意力机制的核心中间产物。每一层的自注意力计算会为输入序列中的每个token生成一组键(Key)和值(Value)向量,这些向量统称为KV缓存(KV Cache)。在推理阶段,模型为避免对已处理token重复计算,通常会在内存中保留这些KV向量。问题在于,KV缓存的体积随序列长度线性增长——对于百亿参数级模型,处理数万token的KV缓存已可占用数十GB显存,扩展到百万甚至数千万token时,常规GPU显存完全无法容纳。传统做法要么截断历史、要么在每次推理时重新计算,两者都付出了信息损失或算力浪费的代价。galahad-kv的核心洞察正是将这批中间产物持久化到磁盘,变"每次重算"为"一次计算、持久复用"。
5000万token的真实测试
这项研究没有停留在理论推演,而是在真实场景下跑了一次大规模测试。实验环境为单张NVIDIA H100,通过vLLM服务,测试模型为Gemma 4 12B和Gemma 4 31B,输入数据是5000万token的真实公开文本。
结果相当硬核。在从0到5000万token的各个深度上,研究者探测的每一个块都成功从加密存储中加载回来,没有发生任何重新计算——100次探测100次命中,两个模型皆是如此。这意味着存储-加载机制在超长序列中保持了稳定性,没有随深度增加而退化。
速度与能耗的量化优势
加载一个块比重新计算它快2.8到4.3倍,GPU能耗则减少8.8到12.3倍。更关键的是,在整个5000万token的流处理过程中,GPU显存占用始终保持平稳。这解决了长上下文场景最棘手的显存膨胀问题——因为任意时刻只需加载一个块到显存,而非把全部历史塞进注意力窗口。
记忆召回的准确率
检验长期记忆是否真正有效,关键看模型能否回答数百万token之前埋下的事实问题。在这项测试中,12B模型100题答对82题,31B模型100题答对98题。值得强调的是,两个模型都没有编造答案——即没有出现幻觉式的虚假回答。这说明机制本身保持了信息的忠实度,准确率的差异主要取决于模型自身的能力。
这不是更宽的注意力窗口
论文对自身边界的描述相当坦诚,这也是理解这项工作的关键。
首要澄清:这是对存储状态的复用,而非更宽的注意力窗口。系统一次只加载一个块,而问题回答得好不好,取决于模型本身。换句话说,galahad-kv并没有让模型"同时看到"5000万token,它更像是一套高效的外部记忆检索与状态复用机制。
两个现实成本也不容忽视。第一,写入记忆是一次性成本——首次处理这些文本仍需完整计算KV状态。第二,存储开销巨大,5000万token的KV状态会占用数TB的本地NVMe磁盘空间。对于需要反复访问同一批海量文本的场景,这笔一次性投入可以通过后续的快速加载摊销;但对于一次性任务,收益就有限了。
理解"注意力窗口"与"外部记忆检索"的区别,有助于准确定位这项工作的价值边界。标准Transformer的注意力机制要求模型在一次前向传播中"看到"所有相关token,其计算复杂度随序列长度呈平方级增长,这是上下文长度扩展的根本瓶颈。近年来,业界扩展注意力窗口的努力(如FlashAttention、稀疏注意力、环形注意力等)本质上仍是让模型在一次推理中处理更长序列。而galahad-kv采取的是完全不同的路径:它将历史分块存储,每次只将当前相关块的KV状态加载回显存参与计算,模型实际"看到"的仍是有限窗口的内容。这更接近于RAG(检索增强生成)的思路——差异在于RAG检索的是原始文本片段并重新编码,而本方法直接复用已编码的KV状态,省去了重新计算的开销,但也意味着跨块的直接注意力交互不存在。
可复现性与基准设计
这项研究在方法论上有两点值得肯定。其一,测试协议被设计为能够抵抗常见的长上下文基准"刷分"手段,试图给出更真实的能力评估。长上下文benchmark历来容易被各种技巧操纵,一个经得起推敲的测试协议本身就有价值。
其二,研究提供了单GPU的可复现方案,使用公开软件,且galahad-kv包采用免费许可。这降低了社区验证和复现的门槛,也让这套方法有机会被更广泛地检验和应用。
长上下文基准测试的"刷分"问题在学界由来已久。常见手段包括:将待检索的关键信息放置在序列开头或结尾(模型在这两个位置的注意力强度天然高于中部,即"迷失在中间"现象)、使用训练集中出现过的文档使模型可以依赖记忆而非真正检索、以及设计过于简单的事实问题使语义相似度搜索即可奏效。一个真正严格的长上下文评估需要将目标信息埋入序列深处、使用模型未见过的文本、并要求跨段落推理而非简单匹配。本文声称其测试协议对上述技巧具有抵抗性,这一设计本身为后续社区验证提供了更可信的参照基线。
对AI工程的启示
从工程视角看,这项工作提供了一条处理超长历史的务实路径。它不追求推翻Transformer的注意力机制,而是在现有架构之外叠加一层持久化记忆——把昂贵的KV计算结果当作可复用的资产缓存起来。
对于客服对话、长文档分析、持续运行的智能体等需要跨会话保留大量上下文的应用,这种"算一次、用多次"的模式潜力明显。当然,TB级存储需求和"一次只加载一个块"的限制,决定了它不是万能方案,而是特定场景下的高性价比选择。随着NVMe存储成本持续下降,这类以存储换计算的思路,可能会在长期记忆AI系统中占据越来越重要的位置。
相关推荐

Gemini 4 Argon API实战:思考等级、后台模式一次讲透
Free Code Camp 出品的 Gemini 4 Argon API 速成教程:从申请密钥、发送首次请求,到用思考等级控制推理成本、用 previous_interaction_id 实现多轮对话,再到后台模式一句话生成打砖块游戏,附 Google 工程师对模型能力的解读。

强化学习通关《抡大锤》:63%进度背后的分布式训练策略
开发者用深度强化学习挑战《抡大锤》,智能体从底部攀爬至63%进度,卡在铁砧部分。项目开源,采用分治训练和CPU训练策略,寻求社区协作突破瓶颈。

AAAI 2027二审放榜在即:社区热议评审公平与投稿生态
AAAI 2027第二阶段评审结果即将公布,Reddit社区热议评审一致性与流程透明度。本文梳理放榜前的社区情绪、顶会评审的结构性矛盾,以及作者应对二审结果的务实策略。