2025年掌握知识图谱 RAG 的最佳 GraphRAG 教程
如果您曾经尝试过让标准的 RAG(检索增强生成)处理复杂的多跳问题,却发现它在上下文限制下崩溃,那么您并不孤单。GraphRAG 是许多构建者正在转向的升级方案。通过将知识图谱与 RAG 相结合,GraphRAG 使您的 AI 能够执行结构化推理,跟踪实体和关系,并以更高的保真度回答跨多个文档的问题。
在本实用且以解决方案为导向的指南中,我们将规划出目前可用的最佳 GraphRAG 教程、它们之间的区别、它们的适用对象,以及发布生产就绪的 GraphRAG 管道的最快路径。我们还将提供实践建议、需要避免的陷阱以及建议的学习路径,以避免您在图中迷失方向。
注意:本综述整理了顶级社区教程和播放列表,以及您将从每个教程中学到的内容,以便您可以为您的目标选择正确的起点。
什么是 GraphRAG 以及它为何重要
- GraphRAG 将知识图谱与 RAG 相结合,以改进检索和推理。您不仅检索文本块,还检索结构化的节点和边——实体、关系和路径。
- 为什么它比原始 RAG 更好:GraphRAG 支持多跳查询(例如,“哪些供应商向后来超出预算的项目供应了零件?”),提高了实体和同义词的召回率,并通过将答案建立在显式的图结构中来减少幻觉。
- 何时使用它:企业搜索、研究助手、法律/医疗保健语料库、财务分析、事件响应,以及关系与内容同等重要的任何领域。
如何使用此列表
- 如果您想要快速掌握基础知识:从简短的介绍视频开始。
- 如果您想要代码指导:选择一个播放列表或笔记本驱动的教程。
- 如果您想比较各种方法:查找使用 LangChain、LlamaIndex、Neo4j 或 NetworkX 的示例。
10 个最佳 GraphRAG 教程(精选)
以下是最佳 GraphRAG 教程,包括它们最适合的对象、您将学到的内容以及任何突出的实现细节。
1) GraphRAG 简介 — Zach Blumenfeld(视频)
- 最适合:想要简洁地了解知识图谱构建和图感知检索模式的概念性概述的初学者。
- 您将学到的内容:GraphRAG 如何从文本构建知识图谱,核心检索策略(邻域扩展、路径查询),以及如何将它们应用于实际的问答管道。
- 它的优点:结构清晰,框架实用,并侧重于 GraphRAG 设计背后的“原因”。
2) GraphRAG 简介(会议演讲/深入探讨)
- 最适合:想要更广泛、以用例为导向的 GraphRAG 文档分析和问答演练的构建者。
- 您将学到的内容:图结构如何减少幻觉,如何将非结构化和结构化检索配对,以及如何评估答案。
3) GraphRAG 教程播放列表(多部分系列)
- 最适合:喜欢具有多个入口点的循序渐进课程的学习者(例如,“什么是 GraphRAG?”、“GraphRAG vs RAG”、“LangChain 入门”)。
- 您将学到的内容:从基础知识和架构到使用 CSV 和 LangChain 的实践构建。如果您要构建端到端演示,这将是理想的选择。
- 它的优点:它组织良好,适合渐进式学习,并且包含实用的示例和初学者友好的工具。
4) 基础笔记本:从文档构建知识图谱
- 最适合:想要从原始文本 → 实体提取 → 图创建 → 查询的工程师。
- 您将学到的内容:使用 LLM 或 spaCy 进行 NER、关系提取模式、使用 NetworkX/Neo4j 构建图,然后检索和重新排序以获得答案。
- 它的优点:教授从摄取到回答的整个循环,而不仅仅是理论。
5) LangChain + GraphRAG 快速入门
- 最适合:已经使用 LangChain 并且想要具有图感知检索器和链编排,且代码最少的团队。
- 您将学到的内容:将文本索引到图中、混合检索(向量 + 图)以及用于图引用的提示模板。
- 它的优点:利用流行的生态系统来实现更快的原型设计。
6) LlamaIndex 知识图谱索引教程
- 最适合:喜欢 LlamaIndex 声明式模式的构建者。
- 您将学到的内容:创建 KnowledgeGraphIndex、提取三元组、将 KG 检索与向量存储相结合以及构建评估器。
- 它的优点:用于混合结构化和非结构化信号的干净抽象。
7) Neo4j 驱动的 GraphRAG 演示
- 最适合:需要 ACID、扩展和 Cypher 查询的面向生产的设置。
- 您将学到的内容:图模式设计的最佳实践、用于问答的 Cypher 模板以及缓存策略。
8) 用于 CSV/表格数据的 GraphRAG
- 最适合:想要使用关系丰富表并使用 GraphRAG 提出类似 BI 问题的分析师。
- 您将学到的内容:将行转换为实体和边,跨文件连接,以及对业务实体进行推理。
- 它的优点:满足团队实际存储数据的位置——电子表格和导出。
9) 评估优先的 GraphRAG 研讨会
- 您将学到的内容:Groundedness 评分、答案保真度、路径覆盖率以及用于图引用的测试提示。
- 它的优点:防止出现“酷炫的演示,但答案很弱”的陷阱。
10) GraphRAG 多跳问答 Cookbook
- 您将学到的内容:提示对图邻域进行多跳推理、动态扩展以及在向量和图检索之间进行路由。
推荐的学习路径(快速通道)
- 观看 10-15 分钟的介绍,以锁定核心心智模型:
- 首先观看 Zach Blumenfeld 的简介,了解图构建和常见的检索模式。
- 然后观看更广泛的 GraphRAG 简介演讲,了解文档分析和问答中的应用。
- 使用 GraphRAG 教程播放列表来实现初学者友好的示例:导入 CSV、创建实体/边并运行简单的 QA 链。
- 将您的内存图(例如,NetworkX)迁移到 Neo4j 以处理更大的工作负载。
- 分层向量搜索(FAISS/PGVector/Elastic)和图检索;在发送到 LLM 之前重新排序结果。
您将在大多数 GraphRAG 教程中看到的核心概念
- 知识图谱构建:三元组提取,如
(实体) —[关系]→ (实体)。
- 图存储:用于演示的内存图;用于生产的 Neo4j 或其他图数据库。
- 双重检索:向量相似性用于查找候选块 + 图邻域扩展用于推理。
- 多跳查询:跨具有约束(时间、类型、权重)的节点查找路径。
- 答案合成:LLM 将检索到的片段和路径组合成简洁的响应。
实用、最小的 GraphRAG 蓝图
这是一个您可以调整的高级代码草图。替换为您喜欢的库。
# 1) 摄取和提取
texts = load_documents("./docs")
triplets = extract_triplets_with_llm(texts) # (head, relation, tail)
# 2) 构建图
import networkx as nx
g = nx.DiGraph
for h, r, t in triplets:
g.add_node(h)
g.add_node(t)
g.add_edge(h, t, relation=r)
# 3) 混合检索
query = "哪些供应商参与了 2023 年超出预算的项目?"
vector_hits = vector_search(texts, query, top_k=8)
seed_nodes = entities_from_query(query)
# 扩展邻域
subgraph = expand_neighborhood(g, seed_nodes, depth=2)
# 4) 合成提示
context = render(vector_hits) + render_paths(subgraph)
answer = llm("""
你是一位精确的分析师。仅使用上下文中的事实回答。
在相关时引用图节点/边。
问题:{query}
上下文:{context}
""")
# 5) 评估
assert grounded(answer)
常见陷阱(以及教程如何帮助您避免这些陷阱)
- 实体爆炸:由于命名不一致,导致不同的节点过多。使用别名词典和规范化来修复。
- 浅图:如果您的提取仅捕获明显的联系,则多跳查询的性能将不佳。迭代提示并添加关系候选者。
- 过度依赖向量搜索:GraphRAG 在您实际遵循边时会发光。确保您的管道扩展了邻域。
- 缺少评估:添加护栏——保真度评分、引用检查和路径覆盖率。
选择您的堆栈
- 提取:spaCy + 基于规则的模式以实现精度;基于 LLM 的三元组提取以实现覆盖率。
- 存储:NetworkX 用于原型设计;Neo4j 用于生产;如果您需要语义 Web 工具,则使用 RDF 存储。
- 编排:LangChain 或 LlamaIndex 加速链接。
- 检索:将向量存储(FAISS、PGVector、Elasticsearch)与图查询(Cypher/Gremlin 或自定义遍历)结合使用。
- 模型:使用具有强大事实基础的指令调整 LLM;考虑使用较小的本地模型来处理私有数据。
顺便说一句:使用 Sider.AI 加速研究和迭代
值得注意的是:当您研究 GraphRAG 文档、比较 API 或迭代提示时,位于浏览器中的侧边栏副驾驶可以成为力量倍增器。使用 Sider.AI,您可以总结冗长的 GraphRAG 教程、提取步骤列表,并在观看或阅读时直接在您的工作流程中生成测试提示。如果您正在调试模式,请要求它起草 Cypher 查询或评估清单。在此处探索 Sider.AI:https://sider.ai./ 在学习完这些 GraphRAG 教程后要构建什么
- 一个研究助手,可以通过引用实体和关系来回答“为什么”和“如何”的问题。
- 一个尽职调查副驾驶,可以将备案和文章中的人员、公司和事件联系起来。
- 一个内部策略顾问,可以遍历策略 → 所有者 → 系统 → 事件,以提供可操作的指导。
主要收获
- GraphRAG 通过添加结构化关系来提升 RAG——这对于多跳推理和扎实的答案至关重要。
- 从简短的介绍开始,然后转到构建端到端管道的播放列表或笔记本。
- 混合向量和图检索;从第一天开始记录路径并评估保真度。
- 使用图数据库来实现规模和可靠性;规范化实体以控制节点膨胀。
常见问题解答
Q1:什么是 GraphRAG,它与标准 RAG 有何不同?
GraphRAG 将知识图谱集成到检索中,因此模型可以遵循实体和关系,而不仅仅是文本块。与标准 RAG 相比,这可以实现多跳推理和更可靠的答案。
Q2:初学者最好的 GraphRAG 教程是什么?
首先观看简洁的视频,如“GraphRAG 简介 — Zach Blumenfeld”和更广泛的“GraphRAG 简介”演讲,了解基础知识,然后使用结构化的播放列表,如 GraphRAG 教程系列,进行逐步构建。
Q3:我应该使用哪些工具来实现 GraphRAG?
要快速入门,请使用 LangChain 或 LlamaIndex,并使用 NetworkX 进行原型设计,使用 Neo4j 进行生产。将向量存储(FAISS、PGVector、Elasticsearch)与图查询(Cypher 或自定义遍历)结合使用。
Q4:如何评估 GraphRAG 系统?
跟踪扎实性和保真度,要求引用图节点/边,并分析多跳查询的路径覆盖率。为提取提示和模式规范化创建单元测试。
Q5:GraphRAG 可以与 CSV 或表格数据一起使用吗?
是的。将行转换为实体和关系,跨键链接表,并使用 GraphRAG 回答跨多个来源的业务问题,例如供应商、项目和预算。