简介:本文系统定义了一种基于知识图谱的检索增强生成技术方案,阐述其核心概念、工作流程、关键模块与性能优势。读者可从中理解该技术如何利用图结构实现全局语义问答,掌握其与传统检索增强生成方法的本质区别,以及在私有数据集问答、全局信息综合等场景下的适用方式与落地注意事项。
基于知识图谱的检索增强生成(Graph-based Retrieval-Augmented Generation,以下简称”GraphRAG”)是一种将知识图谱构建与检索增强生成深度融合的技术方案。其核心思想是:在回答用户问题之前,先利用大语言模型对原始文本数据进行自动化的实体识别与关系抽取,构建出结构化的知识图谱;然后在用户提问时,通过图谱上的语义路径检索相关信息,最终由大语言模型生成准确、连贯的回答。
从技术视角来看,GraphRAG 本质上是对传统检索增强生成(RAG)范式的一次结构性升级。传统 RAG 依赖向量相似度进行片段级检索,难以捕捉跨段落、跨文档的全局语义关联;而 GraphRAG 通过显式的实体-关系图结构,将分散在不同文本块中的信息以节点和边的方式组织起来,使系统具备了”全局理解”的能力。
从使用视角来看,GraphRAG 是一套面向私有或从未见过的数据集的问答基础设施。它不要求预先训练专用模型,而是通过对新数据集的即时图谱构建,即可支持问答、摘要、趋势分析等多种下游任务。
传统 RAG 的典型流程是:将文档切分为小块 → 对每个块进行向量化 → 用户提问时检索最相似的若干块 → 将检索结果喂给大模型生成答案。这种方法在面对以下场景时存在明显瓶颈:
GraphRAG 的出现正是为了解决上述问题。它的价值体现在三个层面:
GraphRAG 的完整工作流程可以拆解为以下关键阶段:
这是与传统 RAG 相同的起始步骤。将大文本按照 token 数量切分为若干段落,每个段落作为后续实体关系提取的最小输入单元。分块粒度的选择直接影响后续图谱的密度与质量:块过大会导致实体关系提取精度下降,块过小则可能丢失跨块的上下文信息。
输入: 完整文档集处理: 按 token 阈值切割 → [块_1, 块_2, ..., 块_N]输出: 带索引的文本块列表(每个块关联原始文本偏移)
这是 GraphRAG 区别于传统方案的核心环节,包含以下子步骤:
(1)实体与关系提取
对每个文本块,利用大语言模型进行实体识别和关系抽取。一个典型的实体记录包含:
| 字段 | 说明 | 示例 |
|---|---|---|
| 实体名称 | 文本中识别出的核心对象 | “Alex” |
| 实体类型 | 实体所属类别 | person |
| 实体描述 | 对实体的简要语义概括 | “经历了挫折并观察其他角色动态的角色” |
一个典型的关系记录包含:
| 字段 | 说明 | 示例 |
|---|---|---|
| 源实体 | 关系的起始节点 | “Alex” |
| 目标实体 | 关系的终止节点 | “Taylor” |
| 关系描述 | 对关系的语义说明 | “受到权威性影响并观察态度变化” |
| 关系强度 | 关系的置信度或重要程度(如 1-10 分) | 7 |
其背后的提示词(Prompt)逻辑大致如下:
给定一个文本文档和预定义的实体类型列表,请从文本中识别所有符合条件的实体,并提取它们之间所有存在的关系,输出结构化的实体列表和关系三元组。
(2)图谱增强
在初始图谱生成后,系统会对图谱进行去重、合并、消歧等后处理操作,确保同一实体在不同文本块中的描述被统一为单一节点,避免图谱膨胀和信息冗余。
(3)社区检测与摘要生成
这是 GraphRAG 实现”全局问答”的关键技术。系统利用社区检测算法(如 Leiden 算法等常见图聚类方法)将图谱划分为若干语义社区,每个社区代表一个紧密关联的主题簇。然后针对每个社区,利用大语言模型自动生成高层级摘要。这些摘要使系统能够回答诸如”数据集的主要主题有哪些”这类宏观问题。
当用户提出问题时,GraphRAG 的检索阶段不再仅依赖向量相似度,而是:
其核心思路借鉴了 Map-Reduce 范式:先在各社区内”Map”(局部检索生成),再在社区摘要层面”Reduce”(全局汇总),从而实现对整个数据集的综合理解。
| 维度 | 传统 RAG | GraphRAG |
|---|---|---|
| 知识组织方式 | 扁平化向量片段 | 结构化实体-关系图 |
| 全局问答能力 | 弱,依赖单次检索 | 强,通过社区摘要支持 |
| 多跳推理 | 需多次检索拼接 | 图遍历天然支持 |
| 预处理成本 | 较低(仅向量化) | 较高(需图谱构建) |
| 可解释性 | 较低 | 较高(关系路径可追溯) |
| 适用数据规模 | 中小规模更优 | 中大规模、关系复杂时更优 |
需要强调的是,GraphRAG 并非要完全替代传统 RAG,而是在传统 RAG 难以胜任的场景下提供补充方案。对于简单的事实性问答,传统 RAG 依然高效且成本更低。
基于知识图谱的检索增强生成(GraphRAG)是一种将结构化知识图谱与大语言模型生成能力深度结合的问答技术方案。它通过自动化的实体关系提取、社区检测与摘要生成,弥补了传统 RAG 在全局理解和多跳推理方面的不足,为私有数据集的深度问答提供了一条可落地的技术路径。其核心价值在于”让机器不仅找到相关片段,更能理解片段之间的关系”。在选型时,开发者应根据数据规模、问题类型和成本预算综合判断:对于需要全局洞察、关系推理和高可解释性的场景,GraphRAG 是值得重点关注的技术方向;而对于简单事实查询,传统 RAG 仍具性价比优势。