From Local to Global: A GraphRAG Approach to Query-Focused Summarization-论文


该文档提出了一种名为GraphRAG的基于图的检索增强生成方法,核心是解决传统RAG在全局问题上的短板,实现对大规模文本语料的全局意义建构。

核心背景与问题

  • 传统RAG(向量RAG)擅长处理局部查询,但无法应对“数据集的主要主题是什么”这类需要全局理解的问题,这类问题本质是查询聚焦摘要(QFS)任务。
  • 现有QFS方法难以适配RAG系统的大规模文本索引需求,因此需要融合两者优势。

GraphRAG核心设计与流程

  1. 索引构建阶段
    • 文本切块:将源文档拆分为文本块,平衡提取成本与信息召回率。
    • 实体与关系提取:利用LLM提取文本块中的实体、实体关系及事实声明,并生成描述。
    • 知识图谱构建:将提取的实体作为节点、关系作为边,聚合描述与权重形成知识图谱。
    • 社区划分:通过层次化社区检测算法(如Leiden),将图谱划分为嵌套的实体社区。
    • 社区摘要生成:按层级自底向上生成社区摘要,高层摘要整合低层摘要,覆盖全局语义。
  2. 查询处理阶段
    • 准备社区摘要:打乱并分块,确保信息均匀分布。
    • 生成部分答案:并行使用各社区摘要生成中间答案,过滤无效答案。
    • 聚合全局答案:按有用性排序中间答案,汇总后生成最终全局响应。

评估方法与结果

  • 评估设计:采用LLM作为评估者,设计全面性、多样性、赋能性、直接性四大指标,通过自适应基准生成全局意义建构问题。
  • 实验数据:使用播客转录文本(约100万词)和新闻文章(约170万词)两个数据集。
  • 核心结果:GraphRAG在全面性和多样性上显著优于传统向量RAG,全局方法对播客数据集的全面性胜率达72%-83%,新闻数据集达72%-80%;在 token 成本上具有明显优势,根级社区摘要需消耗的令牌数远低于源文本摘要;与纯文本摘要方法相比,性能相当但效率更高。

局限与未来方向

  • 局限:评估仅针对百万词级数据集,未充分验证跨领域泛化性,未对比捏造率等指标。
  • 未来方向:探索混合RAG方案,结合嵌入匹配与即时社区报告生成;扩展层级“上卷”“下钻”功能;优化事实准确性与领域适配性。

工具可用性

GraphRAG已开源,且支持LangChain、LlamaIndex等多个开源库扩展,可直接应用于大规模文本的全局查询场景。

这篇文档讲的是一种叫 GraphRAG 的新方法,核心是解决传统AI在处理“全局问题”时的短板,让AI能更好地理解海量文本的整体情况、提炼核心信息。

先通俗解释下背景:我们平时用的AI(比如ChatGPT)如果要回答关于大量私人文档(比如公司内部资料、几十万字的行业报告)的问题,常会用到一种叫“RAG”的技术——简单说就是先从海量文档里“检索”相关片段,再让AI基于这些片段生成答案。但这种传统RAG有个大问题:只能回答“局部问题”(比如“某篇文档里提到的XX方案是什么”),没法回答“全局问题”(比如“这整个数据集的核心主题是什么”“过去十年行业趋势有哪些”)。因为全局问题需要理解所有文档的关联和整体逻辑,而不是零散的片段。

而GraphRAG就是为了解决这个问题而生的,它把“知识图谱”和“总结能力”结合起来,步骤很直观:

  1. 先给文档建“关系网”(知识图谱):用AI把海量文档拆成小块,从中提取关键信息——比如“实体”(像公司、人物、概念)和“关系”(比如A公司收购了B公司、X技术用于Y场景),再把这些信息组织成一张“图”(节点是实体,连线是关系),就像给所有文档画了一张“人物关系图+核心概念图”。

  2. 给“关系网”分“圈子”(社区划分):用算法把这张图里联系紧密的实体分成一个个“圈子”(比如“人工智能相关的实体圈”“医疗行业相关的实体圈”),还会形成层级(大圈子里套小圈子,比如“AI圈”里再分“大模型圈”“语音识别圈”)。

  3. 给每个“圈子”写总结:让AI给每个“圈子”(从最小的小圈子到最大的大圈子)写一份总结,说明这个圈子里的核心实体、它们的关系和关键信息。这些总结就像“部门报告”,能覆盖文档的不同主题和层级。

  4. 回答问题时“汇总报告”:当用户问一个全局问题(比如“这个数据集里的主要技术趋势是什么”),GraphRAG会让每个“圈子”的总结先给出部分答案,再把所有部分答案汇总、提炼,最终生成一个全面的全局答案——相当于让各个“部门”先报情况,再汇总成“总报告”。

然后文档还做了实验验证:用了两个百万级词汇的数据集(播客 transcript、新闻文章),对比GraphRAG和传统RAG的效果。结果很明显:

  • 面对“全局问题”,GraphRAG的答案更全面(覆盖的要点更多)、更多元(能从不同角度回答),而传统RAG只能给出零散信息,没法形成整体认知;
  • 而且GraphRAG效率很高,因为它基于“圈子总结”来回答,不用每次都遍历所有原始文档,节省了大量计算资源。

简单说,传统RAG是“大海捞针”(找相关片段),GraphRAG是“画地图看全貌”(先理清所有信息的关联和结构,再总结全貌),特别适合需要理解海量文本整体情况的场景——比如分析行业报告的核心主题、提炼大量新闻的趋势、梳理复杂文档的关键关联等。

From Local to Global: A GraphRAG Approach to Query-Focused Summarization