把一亿 token 装进模型的“记忆”里:EverMind 开源 MSA 能干什么、不能干什么,以及对银行知识库的启示

核心摘要

  • MSA(Memory Sparse Attention)是一套让大模型“自带”超长记忆的开源框架:先把整个文档库离线编码成压缩后的 KV 缓存,提问时由模型内部的路由器挑出最相关的 Top-k 文档,再只在这部分记忆上生成答案(来源1、2)
  • 它最醒目的数字是:在 2 张 NVIDIA A800 上支持 1 亿 token 的记忆推理,从 16K 扩展到 1 亿 token,MS MARCO 上效果衰减不到 9%(来源1、2)
  • 和 RAG 的根本区别在于:RAG 的检索器和生成器是两个分开训练的系统,MSA 把“找资料”和“写答案”合进同一个可端到端训练的注意力层(来源1、2)
  • 目前开源的是一个基于 Qwen3-4B 的 4B 参数模型和推理、评测代码;训练代码不在仓库中,所有对比数据都来自作者自己的评测(来源1、4)

常见问题

MSA 和 RAG 有什么区别?

RAG 由独立的检索器和生成器组成,两者分开训练;MSA 把检索和生成合进同一个稀疏注意力层,端到端训练,检索在模型内部完成(来源1、2)。

跑 1 亿 token 需要什么硬件?

论文称 2 张 NVIDIA A800 即可,路由键放在显存,内容缓存放在主机内存;1 亿 token 的压缩缓存约 169GB,因此还需要大容量主机内存(来源3)。

可以直接用 MSA 训练自己的模型吗?

目前不行。仓库开源了 MSA-4B 模型、推理和评测代码,但论文中的持续预训练和 SFT 训练流程不在仓库中(来源1)。

银行适合用 MSA 做什么?

较适合监管文件、行内制度、产品条款等体量大、相对稳定的知识库问答试点;用于客户数据前,需要先解决可追溯、权限分库和数据删除问题(本文分析)。

MSA(Memory Sparse Attention)是一套让大模型“自带”超长记忆的开源框架:先把整个文档库离线编码成压缩后的 KV 缓存,提问时由模型内部的路由器挑出最相关的 Top-k 文档,再只在这部分记忆上生成答案(来源1、2)。

它最醒目的数字是:在 2 张 NVIDIA A800 上支持 1 亿 token 的记忆推理,从 16K 扩展到 1 亿 token,MS MARCO 上效果衰减不到 9%(来源1、2)。

和 RAG 的根本区别在于:RAG 的检索器和生成器是两个分开训练的系统,MSA 把“找资料”和“写答案”合进同一个可端到端训练的注意力层(来源1、2)。

目前开源的是一个基于 Qwen3-4B 的 4B 参数模型和推理、评测代码;训练代码不在仓库中,所有对比数据都来自作者自己的评测(来源1、4)。

对银行来说,它最有价值的方向是“超大知识库问答”和“长历史智能体记忆”;但隐式记忆带来的可追溯性、访问控制和数据删除问题,必须在落地前解决(本文分析)。


素材说明:本文依据 GitHub 仓库 README 与 QUICK_START、仓库文件结构、arXiv 论文 v2(2026 年 4 月 13 日修订)和 Hugging Face 模型卡。凡来源事实标注编号;性能数据均为论文作者自报;作者的推断与银行映射标注“本文分析”。

一、项目是谁做的

项目内容来源
开发方EverMind,论文作者署名单位为 Evermind 与盛大集团(Shanda Group),作者名单末位为 Tianqiao Chen(陈天桥)来源2、3
论文arXiv:2603.23516,2026 年 3 月 6 日首发,4 月 13 日修订为 v2来源2
仓库2025 年 10 月创建,最近一次推送为 2026 年 5 月 6 日;截至本文写作约 3500 星、227 个 fork来源1
开源模型MSA-4B,基座为 Qwen3-4B-Instruct-2507,模型卡标注 MIT 许可来源4
许可说明README 徽章标注 MIT,但仓库根目录未见独立 LICENSE 文件来源1

二、它要解决什么问题

大模型的上下文长度受全注意力机制限制:计算量随长度平方增长,论文称主流模型的有效上下文一般在 1M token 以内(来源2)。现有三条扩展路线各有短板(来源2):

路线代表论文指出的问题
线性/混合注意力、固定状态RNN 类、混合线性注意力长度极大时精度快速衰减
参数化记忆测试时训练(如 Titans)容量难扩展,冲突知识下易灾难性遗忘
外部存储RAG、记忆智能体检索与生成割裂,缺少端到端优化,流程复杂

MSA 的定位是第四条路:把记忆做成模型内部的稀疏潜在状态,容量可以扩到亿级,同时保持端到端可训练。论文的说法是“把记忆容量与推理能力解耦”(来源2)。

三、它是怎么做的

3.1 核心层:稀疏注意力 + 文档级位置编码

3.2 三阶段推理

  1. 全局记忆编码(离线):对整个语料做一次前向计算,缓存压缩后的 K、V、Kᵣ。论文强调,这一步“每个记忆库版本只做一次”(来源3)。
  2. 在线路由与上下文拼装:问题投影后与路由键匹配,只加载被选中的文档 KV(来源1)。
  3. 稀疏生成:只在拼装后的稀疏上下文上自回归生成(来源1)。

3.3 Memory Parallel:怎么在两张卡上放下一亿 token

论文估算,1 亿 token 的压缩缓存约需 169GB,已经超过 2 张 A800 合计 160GB 显存(来源3)。解决办法是分层存储:

本文分析:这意味着“2 张 A800”是显卡数量,实际部署还需要足够大的主机内存;硬件门槛低于“全注意力跑一亿 token”,但并不是普通服务器就能跑。

3.4 Memory Interleave:多跳推理

遇到需要跨多份文档推理的问题,模型先生成一串文档编号,系统取回这些文档的原文追加到问题后面,再进入下一轮,直到模型判断证据足够才开始写答案;每轮取多少文档由模型自己决定(来源3)。

本文分析:这一机制有一个容易被忽视的副产品——模型显式输出了“它用了哪些文档”。这为可追溯性留下了接口,下文第六节会展开。

四、效果怎么样(作者自报)

测试结果来源
9 个问答数据集(27.7 万–1000 万 token 记忆库,LLM 打分 0–5)MSA 平均 3.760;比同基座标准 RAG 高 16.0%,比 RAG+重排高 11.5%,比 HippoRAG2 高 14.8%来源1
对比大模型 RAG(KaLMv2 + Qwen3-235B / Llama-3.3-70B)9 个数据集中 4 个最佳,平均分高于各最强配置 5.0%–10.7%来源1
RULER 大海捞针(32K–1M)1M token 时准确率 94.84%;未改造的基座在 1M 时降到 24.69%来源1
16K→1 亿 token 扩展(MS MARCO)衰减不到 9%来源1、2
训练成本1589.5 亿 token 持续预训练,加两阶段 SFT(8K→64K)来源1

需要注意的三点:

  1. 问答结果用 LLM 打分,不是精确匹配,评分模型的偏好会影响结论(来源1)。
  2. 在 NarrativeQA、MuSiQue、Natural Questions 等数据集上,MSA 并不是最好,作者把部分差距归因于 4B 模型参数量和推理能力有限(来源1)。
  3. 所有对比都由作者完成,尚未看到独立复现报告(本文分析)。

五、它能干什么,不能干什么

5.1 能干什么

5.2 不能干什么(或还做不好)

六、对银行的启示(本文分析)

本节全部为本文分析。

1. 适合的场景:大而稳定的知识库

银行的监管文件库、行内制度库、产品条款库、历史审贷报告,体量大、更新频率相对可控,正好匹配 MSA“离线编码一次、反复查询”的模式。在多跳问题上(例如“这类客户适用哪条制度,该制度又引用了哪项监管要求”),Memory Interleave 的多轮取证思路比单次向量检索更贴合。

2. 可追溯性:要把“文档编号”变成审计证据

隐式记忆最大的隐患是“说不清依据”。本站在知识论视角的文章中提出,进入 AI 可依据知识库的内容必须可追溯出处,评测要看引用忠实度。MSA 的 Memory Interleave 会显式生成文档编号,银行应把这些编号连同版本号一起落日志,并核对答案是否真的来自这些文档,而不是只看最终答案对错。

3. 版本管理:记忆库就是一个需要发版的资产

既然编码按记忆库版本进行,制度修订、产品下架都意味着记忆库要“发新版”。银行需要明确:哪个版本在生产环境、何时生效、旧版本何时下线,以及过期制度是否已从记忆中剔除。否则模型会“记得”一份已废止的制度。

4. 访问控制:一个记忆库就是一个权限边界

传统 RAG 可以在检索时按用户权限过滤文档;MSA 的路由发生在模型内部,按条过滤更难。稳妥做法是按权限域拆分记忆库(例如公开制度库、内部制度库、客户数据库各自独立),而不是把所有内容编进同一个库再指望模型“不说”。

5. 数据合规:KV 缓存也是个人信息的衍生物

如果把客户交互历史编进记忆库,压缩后的 KV 缓存本身就承载了客户信息。客户要求删除数据时,银行需要能定位并删除对应缓存,甚至重新编码整个版本。在没有成熟的删除和审计方案之前,客户数据不宜作为首批试点内容。

6. 评估方式:不要只看论文分数

论文用 LLM 打分、公开英文和中文数据集。银行应使用自己的制度库和真实问题集做对比测试,至少和现有 RAG 方案比三项:答案准确率、引用忠实度、单次查询的延迟与成本。同时评估 4B 模型在金融术语和复杂条款上的理解能力是否够用。

七、结语

MSA 的意义在于证明了一条路线:记忆可以做成模型内部、可端到端训练、可扩到亿级的稀疏状态,而不必依赖一条松散拼接的 RAG 流水线。本文分析:对银行而言,它不是“马上替换 RAG”的方案,而是一个值得在受控环境里验证的方向——先用公开、稳定的制度类语料试点,把文档编号日志、记忆库版本和权限分库三件事做扎实,再考虑更敏感的数据。

事实来源

  1. EverMind-AI/MSA GitHub 仓库(来源1):项目简介、架构说明、推理流程、实验结果表、训练设置、仓库结构、星标与更新时间、许可徽章。
  2. arXiv:2603.23516 摘要页(来源2):作者、提交与修订日期、摘要所述问题、方法与目标场景。
  3. arXiv 论文 HTML 全文 v2(来源3):作者单位、离线编码“每个记忆库版本一次”、169GB 与 56GB 存储估算、Memory Interleave 机制、局限性。
  4. Hugging Face MSA-4B 模型卡(来源4):基座模型 Qwen3-4B-Instruct-2507、MIT 许可标签。

本文推论部分(非来源表述):各节“本文分析”段落、第五节中关于训练代码与记忆修改的判断、第六节全部内容、第七节结语。相关阅读:本站《“存得多”不如“证得住”》。

本文不构成投资建议、技术选型建议或合规意见。

(内容由AI生成,仅供参考)

参考文献

  1. EverMind-AI/MSA(GitHub 仓库) [GitHub]
  2. MSA: Memory Sparse Attention for Efficient End-to-End Memory Model Scaling to 100M Tokens [arXiv]
  3. MSA 论文 HTML 全文(v2) [arXiv]
  4. EverMind-AI/MSA-4B 模型卡 [Hugging Face]