项目概述
MSA (Memory-Sparse Attention) 是长上下文领域的一个里程碑式突破。
| 属性 | 内容 |
|---|---|
| 全称 | Memory Sparse Attention(记忆稀疏注意力) |
| 作者/机构 | <span class="mention-invalid">@EverMind</span>-AI |
| arXiv | 2603.23516 |
| GitHub | https://github.com/EverMind-AI/MSA |
| 开源时间 | 2026-04-03 |
| Stars | 2.5K+(不到 24 小时) |
| HuggingFace | EverMind-AI/MSA-4B |
| License | MIT |
核心突破:1 亿 token 上下文
性能指标
| 指标 | 数值 | 意义 |
|---|---|---|
| 最大上下文 | 1 亿 tokens | 相当于 1000 本书 |
| 性能损失 | < 9% | 16K → 1 亿 token 范围 |
| 参数量 | 4B | 小模型实现大效果 |
| 复杂度 | O(L) | 近线性扩展 |
| NIAH@1M | 94.84% | 大海捞针准确率 |
震撼对比:小模型击败大模型
MSA (4B) vs SOTA RAG (235B):
| 对比项 | MSA-4B | KaLMv2+Qwen3-235B | 差距 |
|---|---|---|---|
| 参数量 | 4B | 235B | 58 倍 |
| MS MARCO | 4.141 | 3.028 | +36.8% |
| 2WikiMultiHopQA | 4.280 | 3.583 | +19.5% |
| 平均得分 | 3.760 | 3.506 | +7.2% |
关键洞察:MSA 用一个 4B 参数的模型,击败了 58 倍规模的 235B 参数 RAG 系统。
技术架构深度解析
核心设计理念
传统 RAG 的问题:
- 检索与生成分离 → 误差累积
- 外部存储 → 非端到端可微
- 上下文窗口限制 → 128K-1M 瓶颈
MSA 的解决方案:
将检索与生成融合到一个可微的闭环中
架构组件
┌─────────────────────────────────────────────────────────────────┐
│ MSA 架构全景 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 1. 文档隐式状态 (K/V/Kᵣ) │
│ └── 分块均值池化压缩 │
│ │
│ 2. 路由投影器 (Router Projector) │
│ └── 余弦相似度计算相关性 │
│ └── Top-k 文档选择 │
│ │
│ 3. 稀疏注意力层 │
│ ├── 下层:独立文档处理(层级对齐) │
│ └── 上层:压缩 K/V + 本地 K/V 拼接 │
│ │
│ 4. 双 RoPE 策略 │
│ ├── Parallel RoPE:文档级,位置从 0 重置 │
│ └── Global RoPE:活跃上下文,保持因果顺序 │
│ │
└─────────────────────────────────────────────────────────────────┘
三阶段推理流水线
┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ 1. 全局记忆编码 │ ──→ │ 2. 在线路由组装 │ ──→ │ 3. 稀疏生成 │
│ (离线) │ │ (在线) │ │ (自回归) │
├──────────────────┤ ├──────────────────┤ ├──────────────────┤
│ 语料前向计算 │ │ 查询投影为 Qᵣ │ │ 稀疏上下文 │
│ 缓存 (K̄, V̄, K̄ᵣ) │ │ 匹配 K̄ᵣ 选 Top-k │ │ 自回归解码 │
│ │ │ 加载选中 K̄/V̄ │ │ │
└──────────────────┘ └──────────────────┘ └──────────────────┘
记忆并行 (Memory Parallel)
解决 1 亿 token 的显存瓶颈:
| 组件 | 存储位置 | 处理方式 |
|---|---|---|
| 路由键 K̄ᵣ | GPU 显存 | 分片到多 GPU,广播查询 → 本地打分 → 全局归约 |
| 内容 K̄/V̄ | CPU 内存 | 异步按需拉取 |
硬件配置:2×A800 GPU 即可实现 1 亿 token 推理
关键技术细节
1. 文档级 RoPE(位置编码革命)
问题:短训练(64K)→ 长推理(1 亿)的位置漂移
解决方案:
- Parallel RoPE:每个文档位置从 0 重置
- Global RoPE:查询起始索引偏移 k(Top-k 块数)
- 效果:64K 训练可直接外推到 1 亿 token
2. 分层处理策略
| 层级 | 处理方式 | 目的 |
|---|---|---|
| 下层 | 独立文档处理 | 层级对齐,保持文档内语义 |
| 上层 | Top-k 文档拼接 | 跨文档注意力,实现"检索"效果 |
3. 记忆交织 (Memory Interleave)
支持多跳推理的机制:
生成式检索 → 上下文扩展 → 生成 → [循环]
自适应交替执行,大幅提升跨文档多跳推理能力。
实验结果详解
长上下文问答(9 数据集)
同骨干对比(Qwen3-4B):
| 方法 | 平均得分 | 相对提升 |
|---|---|---|
| RAG @1 | 2.559 | baseline |
| RAG @10 | 3.242 | +26.7% |
| RAG+RR @10 | 3.372 | +31.8% |
| HippoRAG2 @10 | 3.275 | +28.0% |
| MSA (自适应) | 3.760 | +47.0% |
跨骨干对比:
| 方法 | 平均得分 | 相对 MSA |
|---|---|---|
| KaLMv2 + Qwen3-235B @10 | 3.506 | -6.7% |
| KaLMv2 + Llama-3.3-70B @10 | 3.396 | -9.7% |
| MSA-4B | 3.760 | baseline |
NIAH (大海捞针) 稳定性
| 上下文长度 | MSA | 原始骨干 | 混合线性注意力 |
|---|---|---|---|
| 32K | ~100% | ~100% | ~100% |
| 128K | ~99% | ~85% | ~95% |
| 256K | ~98% | ~60% | ~85% |
| 1M | 94.84% | 24.69% | ~70% |
MSA 在 1M token 时仍保持 94.84% 准确率,而原始骨干已跌至 24.69%。
训练细节
| 项目 | 配置 |
|---|---|
| 持续预训练 | 1589.5 亿 tokens |
| 辅助损失 | 路由损失 (auxiliary routing loss) |
| SFT 阶段 | 两阶段:8K → 64K 课程学习 |
| 骨干模型 | Qwen3-4B-Instruct-2507 |
消融实验关键发现
移除以下组件导致的性能下降:
| 组件 | 性能下降 |
|---|---|
| 课程扩展 | -5% |
| 记忆交织 | -15% |
| 持续预训练 | -25% |
| 原始文本注入 | -37% |
为什么 MSA 如此重要?
1. 解耦记忆容量与推理能力
传统思路:更大的模型 → 更强的推理 + 更大的记忆
MSA 思路:固定推理能力(4B),独立扩展记忆(1 亿 token)
这意味着:
- 可以用小模型处理海量上下文
- 大幅降低推理成本
- 为端侧大模型提供海量记忆支持
2. 端到端可微的记忆
相比 RAG 的"检索-生成"分离:
- MSA 的记忆访问是端到端可微的
- 模型自己学习"记住什么、忽略什么"
- 无需单独的检索流程和工程流水线
3. 工程可行性
- 硬件:2×A800 即可运行
- 复杂度:O(L) 近线性
- 开源:完整代码 + 模型 + 基准数据
与相关技术的关系
长上下文技术谱系:
Full Attention (Transformer)
│
├── 稀疏注意力方向
│ ├── Sparse Transformer
│ ├── Longformer
│ ├── BigBird
│ └── **MSA** ← 融合 Top-k + 稀疏注意力 + 文档级 RoPE
│
├── 线性注意力方向
│ ├── RWKV
│ ├── Mamba
│ └── 混合线性注意力
│
├── 状态压缩方向
│ ├── Transformer-XL
│ ├── Compressive Transformer
│ └── HippoRAG
│
└── 外部存储方向
├── RAG
├── Agent with Memory
└── **MSA 的对比基准**
快速开始
# 1. 安装
conda create -n msa python=3.12 -y && conda activate msa
pip install -r requirements.txt
pip install flash-attn==2.7.4.post1 --no-build-isolation
# 2. 下载模型
mkdir ckpt
huggingface-cli download --resume-download EverMind-AI/MSA-4B --local-dir ckpt/MSA-4B
# 3. 运行基准测试
bash scripts/run_benchmarks.sh eval_benchmark
bash scripts/calculate_llm_score.sh eval_benchmark
深层意义
MSA 可能代表着大模型架构的一个重要转折点:
- 从"大模型+短上下文"到"小模型+长记忆"
- 从"检索-生成分离"到"端到端记忆"
- 从"蛮力注意力"到"稀疏路由"
如果 MSA 的技术路线被验证和扩展,我们可能会看到:
- 端侧设备运行具备海量记忆的 AI
- 个人知识库直接作为模型记忆
- 真正的"终身学习" AI 助手
参考链接
- GitHub: https://github.com/EverMind-AI/MSA
- arXiv: https://arxiv.org/abs/2603.23516
- HuggingFace: https://huggingface.co/EverMind-AI/MSA-4B
- 数据集: https://huggingface.co/datasets/EverMind-AI/MSA-RAG-BENCHMARKS
- 官网: https://evermind.ai/
#长上下文 #稀疏注意力 #记忆模型 #MSA #RAG #大模型 #技术突破
登录后可参与表态
讨论回复
0 条回复还没有人回复,快来发表你的看法吧!
推荐
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。
领取 2000万 Tokens
通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力