公开笔记

GraphRAG

覆盖 GraphRAG 核心定义、技术演进、与传统 Vector RAG 的核心差异、核心技术架构、双模式检索机制、实践流程、应用场景及优化方向,详解知识图谱结合大模型的检索增强落地方法

发布于 更新于

GraphRAG 本质上是 KRAG 在大模型能力溢出后的一个现代化变种。它用大模型暴力平推了建图过程,并且放弃了极度苛求准确的 Text-to-Cypher 方式,转而使用图结构游走+社区摘要**来进行泛化检索。

一、基础入门:GraphRAG 核心认知

1. 什么是 GraphRAG

GraphRAG(基于图的检索增强生成)是一种将 知识图谱(Knowledge Graph, KG) 的结构化能力与 大语言模型(LLM) 的语义理解能力相结合的检索范式。

  • 核心定义: 它通过将非结构化文本转化为“实体-关系-实体”的图结构,并利用图算法(如社区发现、拓扑游走)对知识进行预处理和索引。
  • 技术本质: 传统的 Vector RAG 是在“寻找相似的碎片”,而 GraphRAG 是在“还原逻辑的网格”。它不仅存储文本的向量特征,还显式地存储了实体间的逻辑联系。

2. GraphRAG 的起源与发展

  • KG-RAG 阶段(早期): 开发者尝试将现有的结构化数据库(如 Neo4j 中的企业数据)通过 Text-to-Cypher 转换提供给 LLM。由于对预建图谱依赖过高且 Schema 僵硬,难以处理通用非结构化文档。
  • 微软 GraphRAG 的突破(2024年): 微软开源了同名框架,标志着进入了“由 LLM 驱动建图”的新阶段。
    • 创新点: 引入了 社区发现(Leiden 算法)多层级摘要 机制,解决了图谱在海量数据下的查询效率问题,并首次实现了大规模文档集的全局总结能力。
  • 现状: 目前正向“轻量化”和“实时化”发展,尝试在建图成本(Token 消耗)与检索精度之间寻找平衡。

3. GraphRAG 与传统 RAG 的区别

特性传统 Vector RAGGraphRAG
底层索引向量嵌入(Vector Embedding)实体-关系图 + 向量 + 社区摘要
检索单位孤立的文本切片(Chunks)节点、关系路径、社区总结
推理能力弱,仅支持单跳语义相似度匹配强,支持跨文档的多跳(Multi-hop)推理
视野范围局部视图: 只能看到 Top-K 个片段全局视图: 能够理解全量文档的主题趋势
典型缺陷容易出现“盲人摸象”,丢失跨片段的逻辑索引成本高(需要大量 LLM 预处理)

4. GraphRAG 的核心价值与应用场景

核心价值:

  1. 消除碎片化: 通过边(Edges)将散落在不同文档的信息缝合,解决“信息孤岛”问题。
  2. 增强可解释性: 检索到的答案可以追溯到明确的实体关联路径,而不仅仅是概率上的语义相似。
  3. 支持复杂查询: 能够回答“总结这 500 份报告的主要风险点”这类传统 RAG 无法处理的聚合类问题。

典型应用场景:

  • 金融/法律审计: 在数千份合同或财报中发现潜在的风险关联链条(如:A公司通过B公司控股C公司的隐秘关系)。
  • 科研知识发现: 辅助研究员在海量论文中寻找跨领域的潜在联系(如:某种蛋白质与特定病症的间接逻辑)。
  • 企业级 Agent 记忆库: 作为 Agent 的长期记忆(Long-term Memory)底层,记录用户复杂的人际关系、项目进展和逻辑偏好。
  • 垂直领域问答: 在医疗、工程等对逻辑严密性要求极高的场景下,提供比向量检索更准确的事实核查。

二、核心基础:Graph 与 RAG 前置知识

2.1 图(Graph)基础

  • 图的核心概念(节点、边、属性、图结构类型)
  • 常用图数据库简介(Neo4j、NebulaGraph 等,适配 GraphRAG 的特性)
  • 图数据的存储与基础操作(增删改查、图遍历)

2.2 RAG(检索增强生成)基础

三、GraphRAG 核心技术架构

1. GraphRAG 整体架构拆解

数据输入、图构建、检索增强、生成输出

2. 核心模块详解

数据预处理与图构建

(文本拆分、实体抽取、关系抽取、图生成)

图检索模块

核心框架

GraphRAG 的图检索(Graph Search)模块是整个系统的检索核心,负责从构建好的知识图谱(实体-关系-社区层次结构)中提取结构化上下文,供给 LLM 生成答案。

其最大创新在于双模式检索架构

  • Local Search(局部搜索):以具体实体为入口,通过图遍历 + 邻域扩展获取精确子图 + 关联文本块(TextUnits)。 特点:细节丰富、多跳推理能力强、可解释性高、适合事实性、针对性、逻辑推理查询。 本质是“从点到面”的精确检索。
  • Global Search(全局搜索):基于预计算的社区报告(Community Reports),采用 map-reduce 方式对高层抽象总结进行合成。 特点:覆盖整个数据集、擅长主题洞察、跨文档综合、趋势总结,解决“只见树木不见森林”问题。 本质是“从面到点”的抽象检索。

Local 与 Global 的本质关系

  • Local 是实体驱动的图结构检索(graph traversal + vector)。
  • Global 是社区驱动的总结检索(pre-summarized hierarchical communities)。
  • 两者并非对立,而是互补:Local 提供精度与证据链,Global 提供广度与全局上下文。实际系统中常采用混合模式(Hybrid / DRIFT Search)——先 Global 粗选社区,再 Local 精细遍历。

Local Search 主导的检索方法

这些方法以实体匹配或路径扩展为核心,高度依赖知识图谱的结构化遍历,构成了 Microsoft GraphRAG Local Search 的主要实现路径。

  • 基于实体匹配的检索:最基础入口,从 query 抽取实体 → 向量匹配节点 → 返回 1~2 跳子图。Local Search 的标准起点
  • 基于关系路径的检索:固定跳数或带约束的路径查找(A→B→C)。Local Search 的多跳推理核心
  • 基于子图匹配的检索:将意图转化为查询子图模式,进行同构/近似匹配。Local Search 处理复杂结构查询的主要方式。
  • 基于图嵌入 / 向量的检索:节点/关系/子图嵌入 + 向量相似度检索。Local Search 中用来模糊匹配实体的关键技术(TransE、GraphSAGE 等)。
  • 基于关键词 / 文本属性的图检索:对节点文本属性做 BM25/向量检索后扩展邻域。Local Search 中实现“图 + 文本”混合检索的常用手段。
  • 规则 / 模板驱动检索:预设模板 + 槽位填充执行图查询。Local Search 在垂直领域固定问答中的高效实现。
  • 大模型引导的检索(LLM-guided):LLM 生成 Cypher/SPARQL 查询后执行遍历。Local Search 中用于高度定制的复杂路径查询(需结合规则防不稳定)。

Local Search 共同特点: 检索起点是具体实体/路径,输出是结构化子图 + 原始文本,强调精确性和可追溯性。

Global Search 主导的检索方法

这类方法直接依托 GraphRAG 的 社区发现(Leiden 算法) 与预生成的社区报告,是 Global Search 的专属机制。

  • 基于社区 / 聚类的检索:定位 query 相关社区,返回整个社区子图或报告。Global Search 的绝对核心,通过 map-reduce 实现全局合成。

Global Search 共同特点: 检索起点是高层社区摘要,输出是抽象总结,擅长处理无明确实体或需要全景洞察的查询。

混合 / 辅助型检索方法

这些方法不绑定单一模式,而是作为优化层桥梁,在 Local 和 Global 中均可灵活使用。

  • 混合检索:图结构 + 向量检索(最常用):向量先找相关文本/实体 → 映射到图中扩展子图。
    • Local 中是默认流程;Global 中可先向量筛选社区报告。
  • 基于权重 / 重要度的剪枝检索:PageRank、度中心性等排序后保留高价值子图。
    • Local 中控制邻域扩展规模;Global 中实现动态社区选择(Dynamic Community Selection),大幅降低 token 消耗。

总结

检索方法类型主导模式核心机制典型适用查询类型在 GraphRAG 中的位置
实体匹配Local向量 + 1-2跳遍历事实类、简单实体问答Local 起点
关系路径 / 子图匹配Local图遍历 + 路径约束多跳推理、逻辑问题Local 核心
图嵌入 / 向量检索Local嵌入相似度语义模糊、开放域Local 主要技术
关键词 / 文本属性Local文本检索 + 邻域扩展图文混合场景Local 增强
规则 / 模板驱动Local模板匹配垂直领域固定问答Local 优化
LLM-guidedLocalLLM 生成查询语句复杂定制查询Local 高级
社区 / 聚类Global社区报告 + map-reduce全局主题、趋势总结Global 核心
混合(图+向量)混合向量→图映射绝大多数实际场景默认策略
权重 / 剪枝混合重要度排序大图 token 控制两者均用优化层

增强生成模块

(图信息融合、prompt 设计、大模型适配)

3. GraphRAG 的技术关键点

实体对齐、关系推理、上下文融合

四、GraphRAG 实践流程

  1. 环境搭建(依赖库、图数据库部署、大模型配置)
  2. 数据准备(数据源选择、数据清洗、格式适配)
  3. 图构建实操(实体 / 关系抽取工具、图数据库写入)
  4. 检索与生成调试(检索策略优化、prompt 调优、结果评估)
  5. 常见问题与解决方案(图构建失败、检索精度低、生成不符合预期)

五、进阶提升:GraphRAG 优化与扩展

  1. 性能优化(检索速度、生成效率、图存储优化)
  2. 功能扩展(多模态 GraphRAG、动态图更新、多图融合)
  3. 高级技巧(prompt 工程、实体消歧、关系推理增强)

六、案例解析:GraphRAG 实际应用场景

  1. 知识库问答(企业文档、学术文献)
  2. 知识图谱增强生成(智能对话、报告撰写)
  3. 复杂场景应用(金融分析、医疗检索、舆情分析)

七、工具与资源汇总

  1. 常用工具(图构建工具、检索工具、调试工具)
  2. 学习资源(官方文档、论文、开源项目、教程)
  3. 社区与交流渠道

八、总结与展望

  1. GraphRAG 核心知识点总结
  2. 技术发展趋势(未来优化方向、落地场景拓展)
  3. 个人学习计划与实践规划
← 返回 Notes

Contact

Contact Me

Leave a message here. The form sends directly from the browser to a form delivery service and then to my email.

Messages are delivered to lzx744008464@gmail.com.