GraphRAG揭秘:构建层次化知识图谱的终极指南

GraphRAG:知识图谱+大模型 LangChain实现 需要注意的是,生成的图谱质量很大程度上取决于您使用的模型。在 RAG 应用中,结合结构化的图数据和非结构化的文本向量搜索,可以让我们同时享受两者的优势,这也是本文将要探讨的内容。的引入,生成知识图谱的过程现在应该更加顺畅和易于访问,这使得任何想要通过知识图谱提供的深度和上下文来增强其基于 RAG 的应用的人更容易上手。接下来,我们将引入一个提示,它利用混合检索器提供的上下文来生成响应,从而完成 RAG 链的实现。正如我们一开始提到的,我们将结合非结构化和图检索器来创建最终的上下文,这将传递给 LLM。 阅读详情

简介

现在的 RAG 检索增强生成是一种使用真实世界信息改进 LLM 输出的技术。

大多数 RAG 方法使用向量相似性作为搜索技术,叫 Baseline RAG 。

但是 RAG 提取的每个文档是独立的,没有显式的结构化关系。

检索出的文档可能缺乏上下文连接,并且依赖于语言模型的推理能力还有检索出的文档。

GraphRAG 是一种结构化的、分层的检索增强生成 ( RAG ) 方法,不同于使用纯文本片段的简单语义搜索方法。

GraphRAG 流程包括从原始文本中提取知识图谱、构建社区层次结构、为这些社区生成摘要,然后在执行基于 RAG 的任务时利用这些结构。

微软在在这种情况下推出了 GraphRAG ,它通过将知识表示为图结构,捕捉更复杂的知识结构和关系,通过这种图结构,可以更容易地获取相关实体的上下文信息。

这样的图结构提供了更直观的知识表示,有助于理解模型的推理过程。也大幅提高了模型的推理问答性能。

一、环境安装

GraphRAG 依赖的 python 版本在 3.10-3.12 之间,执行下列命令:

  pip install graphrag

下载一个语料数据集,https://www.gutenberg.org/cache/epub/24022/pg24022.txt 。

根目录新建 /ragtest/input 空文件,然后把下载好的语料文件放入 input 下面。

二、graphRAG 使用

第一步先完成 GraphRAG 初始化:

 python -m graphrag.index --init --root ./ragtest

执行成功,可以看到我们的 ragtest 目录下面是这样,

这里面的 .env 里面是 GraphRAG 管道所需的环境变量。

主要是 GRAPHRAG_API_KEY=<API_KEY> 这是 OpenAI API 或 Azure OpenAI 端点的 API 密钥。

用我们自己的 API 密钥。

settings.yaml 包含流程的设置。你可以修改此文件以更改流程的设置。

在这里插入图片描述

这里的llm如果是 openai_chat,最好是设置成 gpt-4o-mini ,这一步为了减少我们的成本。现在初始化工作完全准备了,开始执行索引建立:

 python -m graphrag.index --root ./ragtest

下面是我们终端的输出,当然这一步时间要长一点,取决于你文档的大小,

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

可以看到正在提取我们文档里面的数据集还有段落。最后出现 All workflows completed successfully. 说明就成功了。然后打开我们的 output 下面的图谱文件。

在这里插入图片描述

图谱至此建立完毕,我们来做一个查询:

 python -m graphrag.query \ --root ./ragtest \ --method global \ "What are the top themes in this story?"

得到下面输出:

可以发现问题的答案非常贴近整部书籍。

GraphRAG 在回答上述问题时显示出显著的改进,展示了比以前应用于私有数据集的方法更高的智能的掌握能力。

三、总结

上面就是使用 GraphRAG基本流程,完成的步骤主要就是提取+嵌入,跟之前的rag很类似,GraphRAG 结合了知识图谱和 RAG 。

它的目的在于解决传统 RAG 的一些问题,提供更高质量的检索,同时它的出现也改变了企业私有数据分析的技术。

下一节我们将讲述怎么在项目里使用向量数据neo4j ,还有 langchain 工具和 GraphRAG 结合起来。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
  • …

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
  • …

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
  • …

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案
  • …

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

GraphRAG:一种新型的RAG技术 微软前几天发布的 GraphRAG 架构非常厉害,但是具体的原理和内容可能不太好理解。Neo4j 的 CTO 写了一篇详细的文章《GraphRAG 宣言:为 GenAI 增加知识》,通俗易懂的介绍了 GraphRAG 的原理、与传统 RAG 的区别、GraphRAG的优势、知识图谱的创建和利用知识图谱工作。 阅读详情

相关推荐

图可视化工具Gephi使用教程

网络图绘制软件Gephi的教程(有向网络和无向网络的绘制学习笔记)

D_Ddd0701的博客 2万+

GraphRAG:知识图谱+RAG技术

由于RAG的一些缺陷,最近工作中用到了GraphRAG,可以简单理解为知识图谱+RAG工作,在进行QFS与深度推理上表现良好。老板希望,在类似于库存管理、预测上面,可以结合更多的上下文信息和逻辑关系,进行推理和结果的输出。(下图为RAG简单示意图)

2401_84208172的博客 2万+

GraphRAG源码解读:基于知识图谱构建的检索增强生成系统

讨论代码前, 我们先简单了解下 GraphRAG 项目的目标与定位. 在论文中, 作者很明确地提出了一个常规 RAG 无法处理的应用场景:也就是类似该数据集的主题是什么这种 high level 的总结性问题。作者认为, 这种应用场景本质上是一种聚焦于查询的总结性(QueryFocused Summarization, QFS)任务, 单纯只做数据检索是无法解决的.。相应地, 其解决思路也在论文中清楚地描述出来了:

2401_85377976的博客 1888

一文搞懂GraphRAG、LightRAG、AgenticRAG,看这一篇就够了!

一文搞懂GraphRAG、LightRAG、AgenticRAG,看这一篇就够了!

xxue345678的博客 1万+

GraphRAG原理深入剖析-知识图谱构建

GraphRAG(Graph Retrieval-Augmented Generation)是一种结合了知识图谱和图机器学习技术的新型检索增强生成模型,它的核心优势在于它能够将非结构化的文本数据转换为结构化的知识图谱,从而更高效地表示实体、关系及关键声明。通过知识图谱,GraphRAG能够提供更丰富的上下文信息,使LLM在回答复杂查询时能够更全面地理解问题,并生成更准确、更完整的答案。

llm_way的博客 2908

手把手教你构建基于知识图谱的GraphRAG:结构化数据篇

GraphRAG 是一种结合了知识图谱与自然语言生成的技术框架。它通过检索知识图谱中的信息,增强生成模型的输出质量,特别适合需要高准确性和知识性的生成任务。本文介绍了如何构建基于知识图谱的 GraphRAG 系统,重点展示了结构化数据的知识图谱构建、SPARQL 检索、生成模块等技术环节。通过这个系统,我们可以将知识图谱与自然语言生成有机结合,增强生成任务的知识性和准确性。

小蜗牛的珍贵百宝箱 1436

【GraphRAG】构建知识图谱:从技术到实战的完整指南

本文深入探讨了知识图谱的构建全流程,涵盖了基础理论、数据获取与预处理、知识表示方法、知识图谱构建技术等关键环节。

2301_81888214的博客 2万+

《向量数据库指南》揭秘:GraphRAG如何重塑知识图谱与RAG的融合之道

最后一步是为每个community及其中的重要部分生成摘要。这些摘要包括Community内的主要Entity、Entity的关系和关键Claim。它们为整个数据集提供了概览,并为后续查询提供了有用的上下文信息。在生成摘要时,GraphRAG会采用自下而上的方法,逐步合并较小的community以形成更大的摘要。这些摘要不仅有助于用户快速了解数据集的内容,还能为后续的查询处理提供有用的参考信息。

实战AI智能体 1331

一文讲清楚KG、RAG、KAG、GraphRAG...这些有什么区别?

一文讲清楚KG、RAG、KAG、GraphRAG...这些有什么区别?

weixin_59191169的博客 1675

LLM - 配置 GraphRAG + Ollama 服务 构建 中文知识图谱 教程(踩坑记录)

GraphRAG 结合 知识图谱(Knowledge Graph) 和 大语言模型(LLM),通过使用图关系发现和验证信息,从而增强语言模型的上下文理解能力,生成更准确、更连贯的回答 。GraphRAG 特别适合处理需要复杂推理和深层语义理解的查询。

AGI 4852

GraphRAG实战:构建基于知识图谱的智能检索系统

本文深入探讨了GraphRAG(Graph-based Retrieval Augmented Generation)系统的实战应用,从系统架构、核心原理到具体实现,全方位展示如何构建一个基于知识图谱的智能检索系统。文章将结合实际案例,详细讲解系统设计、开发流程、性能优化等关键环节,为开发者提供完整的实践指南。知识图谱增强:利用图结构存储和检索知识上下文理解:提供更丰富的语义关联推理能力:支持复杂的知识推理私有数据处理:安全处理企业私有数据系统设计模块化架构可扩展性高可用性性能优化。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 1195

可视化 GraphRAG 构建的知识图谱 空谈版

摘要: GraphRAG是一种基于知识图谱的检索增强生成方法,通过结构化处理文档构建包含实体、关系、语义社区等要素的知识图谱。核心数据包括文本块(基础单元)、实体(节点)、关系(语义连接)、社区(聚类)及社区报告(摘要),存储为Parquet文件。使用Neo4j可视化展示图谱结构,可观察实体关联与主题聚类,但其规模需结合子图查询工具分析。相比传统向量RAG,GraphRAG支持多跳推理和语义组织,但需通过编程接口深入挖掘全图信息。开发者可通过实践从数据提取到可视化的全流程,深入理解其工作机制。 (字数:15

tomlone的专栏 1218

LLM - 使用 Neo4j 可视化 GraphRAG 构建的 知识图谱(KG) 教程

Neo4j 是一个高性能的图形数据库,允许用户以图形的形式存储和检索数据,这种形式非常适合处理复杂的关系和网络结构,因其在数据关系处理方面的强大能力而广受欢迎,尤其是在社交网络、推荐系统、网络分析等领域。

AGI 3283

GraphRAG-Local-UI:终极本地知识图谱构建工具完全指南

GraphRAG-Local-UI是一款基于本地大语言模型的知识图谱构建工具,它提供了强大的API和多个应用程序,用于索引、提示词优化、查询、聊天、可视化等功能。这款工具旨在成为终极的本地知识图谱应用,让用户能够在本地环境中高效构建和管理知识图谱。 ## 🌟 为什么选择GraphRAG-Local-UI? 在信息爆炸的时代,如何有效组织和利用知识成为关键挑战。GraphRAG-Local-U

gitblog_00762的博客 978

告别切换烦恼!用Parallels Desktop的Host-Only网卡,在macOS上直接访问虚拟机里的公司内网

本文详细介绍了如何在macOS上使用Parallels Desktop的Host-Only网卡直接访问虚拟机内的公司内网,告别频繁切换操作系统的烦恼。通过配置Host-Only网络模式,实现主机与虚拟机的安全高效通信,特别适合需要频繁访问内网资源的IT从业者。文章包含分步指南、自动化脚本和常见问题解决方案,帮助用户优化工作流程。

weixin_28739079的博客 363

Android 导出aar 用于Unity 百度语音唤醒

AndroidStudio版本下载地址Android Studio Arctic Fox Unity版本2021.3.26f1c1 新建AndroidStudio工程 新建module 这里注意一下,网上很多教程说要注意包名要和unity一样,但是测试下来,不一样也可以的 在新建的module里添加这两个jar包,并点击右键add as library 导入jniLibs 右键创建这几个package 代码就安装这个大佬的写参考代码 需要注意的的是在WakeupListener脚本里U

weixin_38777563的博客 633

GraphRAG与知识图谱

Graph RAG 思想: 对用户输入的query提取实体,然后构造子图形成上下文,最后送入大模型完成生成知识图谱(Knowledge Graph)是一种以结构化形式描述现实世界实体及其关系的技术,通过将数据组织为“节点-边-节点”的三元组(如“北京-是-中国首都”),构建出语义关联的网络。实体(Entities)‌:表示具体或抽象的事物,如“李白”“北京”。‌关系(Relationships)‌:连接实体的边,定义交互方式,如“出生于”“首都”。‌。

moneywenxue的博客 3060

基于Matlab与Bladed联合仿真的交互软件设计

基于Matlab与Bladed的交互软件设计

weixin_45014222的博客 816

【代码不会骗人】从0到1构建GraphRAG:小白也能搞定的LLM+KG融合方案

本文探讨了大语言模型(LLM)与知识图谱(KG)的融合技术,分析了LLM在知识内隐性、幻觉问题等方面的不足,以及KG在结构化知识、可解释性方面的优势。详细阐述了KG增强LLM(训练时和推理时增强)和LLM增强KG(构建、集成、多模态)的双向融合路径,并介绍了智能问答、个性化推荐等应用场景。这种融合被视为克服AI幻觉、提升可解释性、迈向通用人工智能(AGI)的关键技术路径,具有广阔的商业应用前景。

m0_56255097的博客 1003

信奥编程启蒙 3068:【例13.3】时间差

现在给出一个时间,单位是秒,要求按照电子表格式输出,输出保证不会超过 2424 小时。3067:【例13.2】 电子表。把时间转化成电子表格式输出。电子表上的时间显示方法形如。

900

CS5212芯片实战:手把手教你设计DP转VGA转换电路(附完整原理图)

本文详细介绍了CS5212芯片在DP转VGA转换电路设计中的实战应用,包括芯片架构解析、核心电路设计要点、PCB布局与电磁兼容设计、调试技巧及进阶应用开发。通过完整的原理图和实用设计指南,帮助工程师快速掌握高可靠转换器的设计方法,特别适合需要国产化替代方案的场景。

weixin_30576827的博客 392

从零开始构建GraphRAG红楼梦知识图谱问答项目(一)

本文介绍了一个基于GraphRAG的红楼梦知识图谱问答系统构建项目。项目采用Python 3.12环境,使用Qwen3-32B和BAAI/bge-m3模型。文章对比了传统RAG与GraphRAG的差异,详细说明了环境搭建步骤,包括创建虚拟环境、安装依赖、配置文件和数据集准备。重点介绍了GraphRAG的初始化流程和配置文件修改方法,为构建红楼梦知识图谱问答系统提供了完整的技术方案和实施路径。最后提供了优快云官方学长的联系方式供进一步交流。

麦麦大数据 1512

Multisim电路仿真与实验:包含连续时间系统的模拟、周期信号频谱分析、组合逻辑电路:竞争冒险、数字锁

这些实际系统可以是电的或非电的物理量系统,也可以是经济、军事等非物理量系统。矩形周期信号的幅度和周期保持不变,随着占空比的增加(即脉宽加大),主峰高度越高,主峰宽度越窄,各谱线间隔越窄,主峰包含的谱线数量越少,有效频带宽度越窄,主峰内高次谐波分量越少。输入信号所经路径不同而引起的冒险现象,按短暂尖峰极性的不同,可将冒险分为“0-1-0”型险象(也称“1”型)和“1-0-1”型险象(也称“0”型)理想的正弦波的幅度谱包含1条谱线,证明其只有基频分量,而无谐波分量,如果能测出谐波分量,说明该正弦波已有失真。

Jumpingtigger_35的博客 1万+
上一篇: 深入探索 graphrag-local-ollama:开源项目的深度剖析与应用实战
下一篇: 你真的了解CoT?普林斯顿大学解密影响CoT效率的因素,引用5875次的CoT讲了啥
Python_金钱豹
博客等级 码龄5年 1万+粉丝 2835原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值