GraphRAG原理详解

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

From Local to Global: A Graph RAG Approach to Query-Focused Summarization

摘要:通过检索增强生成(RAG),大型语言模型(LLM)能够从外部知识源检索信息,从而回答涉及私有或未见文档的问题。然而,RAG 在处理全局问题(如“数据集的主要主题是什么?”)时表现不佳,因为这类问题本质上是查询聚焦的摘要任务,而非直接检索。现有的 QFS 方法也难以处理大规模文本。为此,我们提出图 RAG 方法,该方法结合了两种方法的优势,能够随着问题普遍性和文本量的增加而扩展。图 RAG 通过 LLM 构建图索引,先从文档中提取实体图,再预生成相关实体的摘要。在回答问题时,每个摘要生成部分答案,最终汇总为完整回答。实验表明,图 RAG 在处理大规模数据集的全局问题时,能显著提升答案的全面性和多样性。全球和本地图 RAG 的开源 Python 实现即将发布。

https://arxiv.org//pdf/2404.16130

最近微软终于开源了他的GraphRAG,短短7天就集齐了6.7K Star。那GraphRAG到底是个啥???

GraphRAG的论文实际上要比代码开源早很多,论文应是今年4月份在Arxiv上发表的,但是代码是2024年7月1号才正式上传开源。

项目开源地址:https://github.com/microsoft/graphrag

项目帮助文档:https://microsoft.github.io/graphrag/posts/get\_started/

1 为什么要提出GraphRAG?


RAG,又称检索增强生成(Retrieval Augumented Generation)。RAG目前已经成为大语言模型应用的核心组件之一,利用检索到的内容,无论是相似度检索,还是传统搜索、搜索引擎来增强大语言模型的外部知识。凭借这一能力,RAG在帮助LLM处理私有化数据集上发挥了巨大的潜力、取得了不俗的表现,这些私有化数据集对于LLM来说是全新的,比如企业内部文档、商业文件、用户对话记录等。即使如此,传统RAG仍然存在很多问题,比如:

  • 在处理多信息点时存在困难,比如某个问题的回答需要整合多个文档、多个片段的信息,提供全新的见解时,传统RAG往往在回答的全面性方面存在不足。
  • </
GraphRAG原理深入剖析--图谱检索 GraphRAG原理中的local search和global search各自拥有独特的优势和适用的环境。local search以其快速性和对起始点的依赖性而著称,非常适合处理大规模图谱数据集,并且在对解决方案的精确度要求不是特别严格的情况下表现良好。而global search则致力于发现最优解决方案,尽管它需要更多的计算资源,但它在需要高精度解决方案且图形数据集的规模较小的情况下是理想的选择。 阅读详情

相关推荐

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

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

llm_way的博客 2848

图数据库 NebulaGraph 发布了业界首个基于知识图谱的 RAG:基于知识图谱的检索增强生成

在信息过载的时代,通过梳理海量数据以提供引人入胜且易于理解的准确搜索结果已经成为一场艰难的战斗。传统的搜索增强技术往往在处理复杂查询和聊天 GPT 等尖端技术带来的高需求时表现不佳。这就是图 RAG 进入的地方——这是由 NebulaGraph 制造的一个改变游戏规则的概念,它承诺彻底改革该领域。“图RAG” 是一个由 Neo4j 领先的概念。这项技术利用知识图谱与大语言模型(LLMs)相结合,为搜索引擎提供更全面的上下文理解能力。它可以帮助用户以更低的成本获得更智能、更精确的搜索结果。

洛阳泰山的博客 2023

从本地到全局:基于图的RAG方法进行查询聚焦原理摘要

使用检索增强生成(RAG)从外部知识源检索相关信息,使大型语言模型(LLMs)能够回答有关私有和/或以前未见过的文档集合的问题。然而,当针对整个文本文档库提出全局问题时,例如“数据集中的主要主题是什么?”,RAG 会失败,因为这本质上是一个查询聚焦摘要(QFS)任务,而不是明确的检索任务。与此同时,之前的 QFS 方法无法扩展到典型 RAG 系统索引的大量文本。

洛阳泰山的博客 1184

从代码学习深度强化学习 - 目标导向的强化学习-HER算法 PyTorch版

经典的深度强化学习算法,如 PPO、SAC 等,在各自擅长的任务中都取得了非常好的效果。但它们通常都局限在解决单个任务上,换句话说,训练好的算法,在运行时也只能完成一个特定的任务。想象一个场景:我们想让一个机械臂能把桌子上的任何一个物体重置到任意一个指定位置。对于传统强化学习而言,如果目标物体的初始位置和目标位置每次都变化,那么这就是一个全新的任务。即便任务的“格式”——抓取并移动——是一样的,但策略本身可能需要重新训练。这显然效率极低。为了解决这类问题,

weixin_43887510的博客 1490

【2021工业图像异常检测文献】DRÆM: 基于判别性训练的重建嵌入表面异常检测方法

DRÆM – A discriminatively trained reconstruction embedding for surface anomaly detection

qq_1532145264的博客 1474

IPSec案例部署

步骤二:按照规划划分vlan并开启vlanif接口,配置链路类型实现vlan之间的互通。步骤2 :配置OSPF实现公司内部通信,配置静态路由实现AR1和AR3路由可达。3. 配置IPSec的安全联盟(协商业务数据加密时使用的参数)下发缺省路由,使网关设备有去往对端的路由‘配置对等体IP地址,即分公司的出口IP。步骤1:设备重命名以及IP地址的配置。步骤4:配置NAT,实现内网访问外网。步骤3:配置IPSec VPN。5.调用IPSec的安全策略。发了5个包 加密5个包。

2301_76769137的博客 1690

手把手教你用C语言实现GNSS卫星方位角计算(附RTKLIB风格代码解析)

本文详细介绍了如何使用C语言实现GNSS卫星方位角计算,包括从地固坐标系到站心坐标系的转换链条。通过RTKLIB风格的代码解析,展示了XYZ到ENU坐标转换的核心原理和C语言实现框架,帮助开发者掌握卫星方位角和高度角的计算技巧,适用于GNSS观测数据质量分析和精密定位算法开发。

weixin_30699915的博客 362

电路中的DGND、GROUND、GROUND_REF的区别,VREF、VCC、VDD、VEE和VSS的区别?

DGND是数字地,是数字电路部分的公共基准端,用于连接数字电路的接地。

XU157303764的博客 2322

从 ST22 到根因定位:ABAP Dumps 全景排查指南(含典型 Dump 案例、修复套路与云时代实践)

本文系统介绍了SAP系统中ABAP短转储(Dump)的分析方法。首先指出短转储是程序运行时无法处理的错误导致系统强制终止执行。文章详细解析了短转储报告各区块的作用:从概述性的Short Text和What happened,到核心的Error Analysis和Source Code Extract,再到关键的系统字段Contents of system fields和调用栈Active Calls/Events。针对不同场景提供了排查建议:客户代码应建立可控边界,标准对象优先查阅SAP Notes。最后推

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 462

【Claude】媒体文件处理错误:PDF 与 Image 过大的检测与预处理方法 bug报错已解决

图片压缩是必须的:原始图片的 base64 会占用大量 TokenPDF 提取文本优于传图片:文本版 PDF 比扫描版更省 Token分块处理大文件:不要一次性处理整个大文件控制分辨率:800x800 通常足够 Claude 分析。

博客 6352

RK3588+YT9215快速拓展以太网口

YT9215支持7个端口的非阻塞数据传输,确保高效的数据流处理;在开发过程中,最重要的一点就是YT9215与RK3588的GMAC连接和配置部分,下面是gmac1对应dtsi文件的修改,包括注释掉rgmii_phy1对应的mdio1,以及gmac1对应的phy-handle部分,同时将gmac1修改成1000Mbps全双工模式。这就是最简单,最快速的RK3588拓展网口的方法了,如果需要用到交换芯片的其他功能,那就不可以直接使用原厂提供的bin,而是需要对YT9215进行另外的驱动开发。

带着耳朵取流浪的博客 2773

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

上一篇: 知识图谱在美团推荐场景中的应用
下一篇: 架构操练Kata
程序员.小富
博客等级 码龄11年 3015粉丝 384原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值