** Update and focus on baseline and benchmarks.
论文背景
核心问题:现有 RAG 系统无法同时处理三类记忆任务 - Factual Memory(事实记忆):简单问答 - Associativity(关联记忆):多跳推理 - Sense-making(意义构建):长篇语篇理解
关键发现:所有结构增强 RAG 方法在某些任务上显著劣于标准向量检索
Baselines 详解
1. 简单基线(传统检索方法)
BM25
- 技术:基于词频的概率检索(TF-IDF 改进版)
- 特点:
- 不使用神经网络,纯统计方法
- 擅长精确词匹配
- 对同义词和语义相似无感知
- 性能:PopQA 上 49.9 F1(实体密集型数据集表现尚可)
Contriever (Facebook, 110M)
- 技术:无监督对比学习检索器
- 训练方式:通过数据增强构造正负样本对
- 性能:简单 QA 上 53-59 F1,多跳 QA 上明显不足
GTR (Google T5-base)
- 技术:基于 T5 的双编码器
- 参数量:220M(T5-base)
- 性能:平均 50.4 F1,是小模型中最强的
2. 大型嵌入模型(7B 参数级别)
GTE-Qwen2-7B-Instruct (阿里)
- 技术特点:
- 多阶段对比学习
- 基于 Qwen2-7B 语言模型
- 指令微调增强任务适应性
- 训练数据:大规模多领域语料
- 性能:54.9 平均 F1
- 问题:在 LV-Eval 上只有 7.1,知识泄露依赖较大
GritLM-7B
- 创新点:统一生成和检索的混合模型
- 架构:同一个 LLM 同时做生成和嵌入
- 训练:联合优化检索和生成损失
- 性能:56.1 平均 F1,在多跳 QA 上较强(44.8 MuSiQue)
NV-Embed-v2 (NVIDIA, 7B) ⭐
- 地位:当前最强开源嵌入模型(2025.01)
- 关键技术:
- 潜在注意力层(Latent Attention Layers)
- 多任务指令微调
- 改进的训练技术
- BEIR 排行榜:领先位置
- 性能:57.0 平均 F1(标准 RAG 最强基线)
- 特点:
- 在所有简单 QA 上表现最好
- HotpotQA 上达到 75.3 F1(检索 94.5 Recall@5)
- 但在 LV-Eval 上只有 9.8(知识泄露问题)
关键观察:7B 嵌入模型比 T5-base 高 6.6 个 F1 点,证明模型规模对检索质量的重要性
3. 结构增强 RAG 方法
RAPTOR (Stanford)
核心思想:递归摘要构建树形索引
技术流程:
1. 用高斯混合模型(GMM)聚类相似文档
2. 对每个类生成 LLM 摘要
3. 对摘要再次聚类和摘要
4. 构建多层树形结构
检索策略: - 从叶子到根节点多层检索 - 结合原始文档和各层摘要
性能分析: - 简单 QA:56.2 PopQA(与 NV-Embed-v2 持平) - 多跳 QA:28.9 MuSiQue ❌(比标准 RAG 低 16.8 点!) - 语篇理解:21.4 NarrativeQA(表现尚可)
失败原因: - LLM 摘要引入噪声和幻觉 - 对于需要精确事实的多跳推理,摘要丢失关键细节 - 例如:原文"Erik Hort born in Montebello"被摘要成"Erik Hort is a soccer player"
GraphRAG (Microsoft)
核心思想:社区检测 + 分层摘要
技术流程:
1. 用 LLM 提取实体和关系 → 构建知识图谱
2. Leiden 算法检测社区(图聚类)
3. 为每个社区生成描述性摘要
4. 支持局部(local)和全局(global)检索模式
超参数(论文调优后): - Chunk token size: 1200 - Community report max length: 2000 - Max input length: 8000 - Top-k phrases: 60
性能分析: - 简单 QA:48.1 PopQA ❌(比 NV-Embed-v2 低 7.6 点) - 多跳 QA:38.5 MuSiQue(一般) - LV-Eval:11.2(所有方法中最好!但绝对值仍很低)
失败原因: - 社区摘要引入更多 LLM 生成内容 - 检索时需要在摘要中匹配,不如直接匹配原文 - 索引极慢:277 分钟(vs NV-Embed-v2 的 12 分钟)
LightRAG
核心思想:双层检索机制
技术流程: - 低层:实体-关系级别 - 高层:社区级别 - 结合图结构和向量检索
性能:6.6 平均 F1 ❌❌❌ - 所有数据集上都接近失败(1-4 F1) - NarrativeQA 上只有 3.7
论文评价:实现存在严重 bug 或设计缺陷,未能正常工作
HippoRAG (原版)
核心思想:神经科学启发的 KG + Personalized PageRank
技术流程:
1. OpenIE 提取三元组 → 构建 KG
2. NER 提取查询实体
3. 嵌入模型匹配实体到 KG 节点
4. PPR 图搜索扩散到相关节点
5. 返回高分节点对应的文档
PPR 算法解释: - 标准 PageRank:随机游走计算节点重要性 - Personalized PageRank:带偏好的随机游走 - Reset probability:跳回种子节点的概率 - 实现上下文相关的检索
性能分析: - 简单 QA:55.9 PopQA(中等,因为实体识别准确) - 多跳 QA:35.1 MuSiQue ❌(比 NV-Embed-v2 低 10.6 点) - 2Wiki:71.8 ✓(最强,因为该数据集实体密集) - NarrativeQA:16.3 ❌(比 NV-Embed-v2 低 9.4 点)
问题诊断: 1. 过度实体中心:NER 只提取实体,丢失关系和上下文 2. 查询上下文不足:只用实体名匹配,不考虑查询意图 3. 不适合语篇理解:长文本需要理解情节而非实体链接
Benchmarks 详解
设计哲学:三维度评估
维度 | 测试能力 | 核心挑战 | 现有方法短板 |
---|---|---|---|
Factual Memory | 单跳事实查询 | 精确匹配 | 结构增强方法引入噪声 |
Associativity | 多跳推理 | 跨文档连接 | 标准 RAG 无法建立关联 |
Sense-making | 长篇理解 | 整体把握 | HippoRAG 过度关注实体 |
1. Factual Memory (简单 QA)
NaturalQuestions (NQ)
- 来源:真实 Google 搜索查询
- 规模:1000 queries, 9633 passages
- 特点:
- 查询自然多样("乔治·兰金的职业是什么?")
- 实体频率正常(不像 PopQA 那样稀缺)
- 难度:中等(标准 RAG 能达到 62 F1)
PopQA
- 来源:Wikipedia (2021.12)
- 规模:1000 queries, 8676 passages
- 特点:
- 实体密集型:问题围绕长尾实体
- 实体出现频率低 → 更依赖精确匹配
- 示例:"Oliver Badman 是政治家吗?"(否,他不是)
- 难度:较高(标准 RAG 达到 56 F1,HippoRAG 更好因为实体匹配强)
关键指标: - NV-Embed-v2:62 NQ, 56 PopQA - HippoRAG 2:63 NQ, 56 PopQA(微弱领先) - RAPTOR:51 NQ(-11),56 PopQA
2. Associativity (多跳 QA)
MuSiQue
- 设计目标:强制多跳推理
- 规模:1000 queries, 11656 passages
- 构造方法:组合单跳问题
- Q1: "Erik Hort 出生在哪里?" → Montebello
- Q2: "Montebello 在哪个县?" → Rockland County
- 组合:"Erik Hort 的出生地在哪个县?"
- 跳数分布:2-4 跳
性能对比: - NV-Embed-v2:45.7 F1(检索 69.7 Recall@5) - HippoRAG:35.1 ❌(图搜索未有效工作) - HippoRAG 2:48.6 F1(检索 74.7 Recall@5)✓
失败案例(HippoRAG):
问题:"Bernhard Lichtenberg 的宗教改革者在哪里布道?"
需要链:Bernhard → 天主教 → 马丁·路德(改革者)→ 维滕贝格(布道地)
HippoRAG 只识别:"Bernhard Lichtenberg"(实体)
丢失:"宗教"、"改革者"、"布道"(关键关系)
2WikiMultihopQA
- 特点:基于 Wikipedia,实体密集
- 规模:1000 queries, 6119 passages
- 难度:相对简单(实体链接明确)
性能: - NV-Embed-v2:61.5 - HippoRAG:71.8(实体匹配优势) - HippoRAG 2:71.0(持平,因为该数据集不需要更多上下文)
HotpotQA
- 特点:众包构造,自然问题
- 规模:1000 queries, 9811 passages
性能: - NV-Embed-v2:75.3(强大的嵌入能力) - HippoRAG:63.5 ❌(-11.8) - HippoRAG 2:75.5(+0.2,超越标准 RAG)
LV-Eval ⭐(最难)
- 设计亮点:减少知识泄露
- 方法:替换关键词和短语
- 原始:"Paris is the capital of France"
- 替换:"Lumos is the capital of Zorland"
- 规模:124 queries, 22849 passages
- 意义:测试真正的检索和推理能力,而非记忆
性能对比:
NV-Embed-v2: 9.8 F1
HippoRAG: 8.4 F1
GraphRAG: 11.2 F1 (最好,但仍很低)
HippoRAG 2: 12.9 F1 ✓ (新 SOTA,但绝对值说明任务很难)
关键发现:所有方法在 LV-Eval 上表现都很差(<13),说明现有 RAG 系统高度依赖预训练知识
3. Sense-making (语篇理解)
NarrativeQA
- 任务:理解全文小说回答问题
- 规模:10 部小说,293 queries
- 数据处理:将长篇切分成短 passages(同 LV-Eval)
- 示例问题:"Cinderella 如何达到她的幸福结局?"
- 需要理解:
- Cinderella 参加舞会
- 王子用失落的玻璃鞋寻找她
- 鞋子合脚 → 嫁给王子
性能对比:
NV-Embed-v2: 25.7 F1 (通过强大语义理解)
RAPTOR: 21.4 F1 (树形摘要有帮助)
GraphRAG: 23.0 F1 (社区摘要有帮助)
HippoRAG: 16.3 F1 ❌ (实体连接无法捕获情节)
HippoRAG 2: 25.9 F1 ✓ (passage nodes 保留上下文)
HippoRAG 失败原因: - 只提取实体:("Cinderella", "attended", "royal ball") - 丢失情节因果:"为什么她能去舞会?"(仙女帮助) - 无法回答"如何"类问题(需要理解事件序列)
核心实验结果
总体性能对比(Llama-3.3-70B 作为 QA 模型)
方法 | 简单QA (NQ/PopQA) | 多跳QA (MuSiQue/2Wiki/HotpotQA/LV-Eval) | 语篇理解 (NarrativeQA) | 平均 |
---|---|---|---|---|
NV-Embed-v2 | 61.9 / 55.7 | 45.7 / 61.5 / 75.3 / 9.8 | 25.7 | 57.0 |
RAPTOR | 50.7 / 56.2 | 28.9 / 52.1 / 69.5 / 5.0 | 21.4 | 48.8 |
GraphRAG | 46.9 / 48.1 | 38.5 / 58.6 / 68.6 / 11.2 | 23.0 | 49.6 |
HippoRAG | 55.3 / 55.9 | 35.1 / 71.8 / 63.5 / 8.4 | 16.3 | 53.1 |
HippoRAG 2 | 63.3 / 56.2 | 48.6 / 71.0 / 75.5 / 12.9 | 25.9 | 59.8 |
关键发现
- HippoRAG 2 是唯一在所有三类任务上都不弱于 NV-Embed-v2 的方法
- 简单 QA:+1.4 平均
- 多跳 QA:+7.0 平均(MuSiQue +2.9, LV-Eval +3.1)
-
语篇理解:+0.2(持平)
-
结构增强方法的普遍困境:
- RAPTOR:MuSiQue 上 -16.8(摘要噪声)
- HippoRAG:NarrativeQA 上 -9.4(丢失上下文)
-
GraphRAG:PopQA 上 -7.6(过度摘要)
-
LV-Eval 揭示的真相:
- 所有方法 <13 F1
- 最强的 GraphRAG 和 HippoRAG 2 也只有 11-13
- 说明 RAG 系统仍高度依赖预训练知识泄露
检索性能分析(Recall@5)
方法 | NQ | PopQA | MuSiQue | 2Wiki | HotpotQA | 平均 |
---|---|---|---|---|---|---|
BM25 | 56.1 | 35.7 | 43.5 | 65.3 | 74.8 | 55.1 |
NV-Embed-v2 | 75.4 | 51.0 | 69.7 | 76.5 | 94.5 | 73.4 |
RAPTOR | 68.3 | 48.7 | 57.8 | 66.2 | 86.9 | 65.6 |
HippoRAG | 44.4 | 53.8 | 53.2 | 90.4 | 77.3 | 63.8 |
HippoRAG 2 | 78.0 | 51.7 | 74.7 | 90.4 | 96.3 | 78.2 |
洞察: - HippoRAG 2 比标准 RAG 高 4.8 个点 - MuSiQue 上 +5.0(多跳推理的提升最明显) - PopQA 上持平(实体密集型,HippoRAG 原版已经很强)
效率对比(MuSiQue 11K 文档)
方法 | 索引时间 | 查询时间 | GPU 内存 | Input Tokens | Output Tokens |
---|---|---|---|---|---|
NV-Embed-v2 | 12.1 min | 0.3 s | 1.7 GB | - | - |
RAPTOR | 100.5 min | 0.6 s | 1.4 GB | 1.7M | 0.2M |
HippoRAG | 57.5 min | 0.9 s | 6.0 GB | 9.2M | 3.0M |
GraphRAG | 277.0 min | 10.7 s | 3.7 GB | 115.5M | 36.1M |
LightRAG | 235.0 min | 13.3 s | 4.5 GB | 68.5M | 18.3M |
HippoRAG 2 | 99.5 min | 1.2 s | 9.9 GB | 9.2M | 3.0M |
分析: - HippoRAG 2 比 GraphRAG 快 2.8×(索引)和 8.9×(查询) - 但比标准 RAG 慢 8× 和 4× - GPU 内存需求是标准 RAG 的 5.8×(存储三元组嵌入)
权衡:性能提升(+2.8 平均 F1)vs 资源消耗(+8× 索引时间)
持续学习实验
实验设计: - 将数据集分成 4 段 - 选 1 段测试,逐步添加其他 3 段 - 模拟知识持续增长
结果:
简单 QA(NQ): - HippoRAG 2: 60 → 62 F1 (稳定) - NV-Embed-v2: 52 → 53 F1 (稳定) - 差距保持 ~8 个点
多跳 QA(MuSiQue): - HippoRAG 2: 52 → 45 F1 (-7) - NV-Embed-v2: 48 → 40 F1 (-8) - 都下降,但 HippoRAG 2 始终领先
关键洞察: - 知识增长对复杂任务影响更大(信息过载) - HippoRAG 2 的优势在知识增长时保持稳定 - 未来需要更好的持续学习 benchmark
消融实验
在 Multi-hop QA 上测试各组件贡献:
配置 | MuSiQue | 2Wiki | HotpotQA | 平均 |
---|---|---|---|---|
HippoRAG 2 | 74.7 | 90.4 | 96.3 | 87.1 |
w/ NER-to-Node | 53.8 | 91.2 | 78.8 | 74.6 (-12.5) |
w/ Query-to-Node | 44.9 | 65.5 | 68.3 | 59.6 (-27.5) |
w/o Passage Nodes | 63.7 | 90.3 | 88.9 | 81.0 (-6.1) |
w/o Filter | 73.0 | 90.7 | 95.4 | 86.4 (-0.7) |
结论: 1. Query-to-Triple 最关键:vs NER-to-Node (+12.5) 2. Passage Nodes 重要:提供上下文 (+6.1) 3. LLM Filter 有帮助:但贡献较小 (+0.7)
总结与评价
HippoRAG 2 的突破
首次实现全面领先: - 简单 QA:与最强标准 RAG 持平 - 多跳 QA:领先 +7.0 F1(MuSiQue +2.9, LV-Eval +3.1) - 语篇理解:与最强标准 RAG 持平
Baselines 的教训
- RAPTOR:摘要适合语篇理解,不适合精确推理
- GraphRAG:过度生成内容引入噪声
- HippoRAG:实体中心丢失关系和上下文
- 大模型嵌入:7B 规模显著优于小模型(+6.6 F1)
Benchmarks 的价值
- LV-Eval 揭示知识泄露问题(所有方法 <13)
- 三维度评估 暴露方法偏差(顾此失彼)
- 持续学习实验 展示实用性挑战
开放问题
- 所有方法在 LV-Eval 上表现极差(泛化能力不足)
- 效率与性能的权衡(HippoRAG 2 慢 8×)
- LLM 过滤的精度有待提高(26% 误过滤率)
- 实际应用场景下的可扩展性仍待验证
论文信息
- 标题:From RAG to Memory: Non-Parametric Continual Learning for Large Language Models
- 会议:NeurIPS 2025
- 机构:The Ohio State University, UIUC
- 代码:https://github.com/OSU-NLP-Group/HippoRAG