GraphRAG 与 RAG 的比较分析,收藏这一篇就够了!!!

检索增强生成(RAG)技术概述

检索增强生成(Retrieval-Augmented Generation,简称 RAG)是一种旨在提升大型语言模型(Large Language Models,LLMs)性能的技术方法。其核心思想是通过整合外部可靠知识库的信息来增强模型的输出质量。

RAG 的工作原理可以概括如下:当 LLM 接收到查询时,它不仅依赖于自身的预训练知识,还会主动从指定的知识源检索相关信息。这种方法确保了生成的输出能够参考大量上下文丰富的数据,并得到最新、最相关可用信息的支持。

RAG 系统的核心组件

标准 RAG 系统主要由三个关键组件构成:

  1. 检索器组件(Retriever Component):
  • 功能:在知识库或大规模文档集中搜索与查询主题高度相关的信息。

  • 工作方式:识别在语义上与查询相关的文档,并通过相似度度量(通常采用向量间的余弦相似度)计算相关性。

  1. 生成器(Generator):
  • 定义:通常是一个大型语言模型。

  • 输入:检索到的相关信息和原始查询。

  • 输出:基于输入生成响应。

  1. 知识库(Knowledge Base):
  • 用途:作为检索器查找文档或信息的数据源。

RAG 的工作流程

  1. 从外部源收集相关信息。

  2. 将收集到的信息附加到用户的原始提示中。

  3. 将增强后的提示作为输入发送给语言模型。

  4. 在生成阶段,LLM 结合增强提示和自身的训练数据表示,生成针对用户查询定制的响应。

这一过程产生的响应融合了个性化和可验证的信息,特别适用于聊天机器人等应用场景。

图2:检索增强生成流程示意

构建 RAG 系统的关键步骤

  1. 知识库准备:
  • 对文档进行索引

  • 创建文本嵌入

  1. 检索器模型:
  • 训练或微调,以有效搜索知识库
  1. 生成器模型:
  • 通常采用预训练的语言模型
  1. 系统集成:
  • 确保各组件无缝协作

Graph RAG 技术简介

Graph RAG 是 RAG 方法的一个高级变体,其特点是引入了图结构数据。与将知识库视为平面文档集合不同,Graph RAG 将信息表示为实体和关系的互联网络。

Graph RAG 的核心概念

Graph RAG 基于知识图谱(Knowledge Graphs,KGs)构建。知识图谱是现实世界实体及其关系的结构化表示,主要由两个基本元素组成:

  • **节点(Nodes):**表示单个实体,如人物、地点、物体或概念。

  • **边(Edges):**表示节点之间的关系,定义了实体间的连接方式。

相比于标准 RAG 使用向量相似度和向量数据库进行检索,Graph RAG 利用知识库进行更全面、系统的信息检索,从而提高了检索的完整性和准确性。

Graph RAG 的技术优势

Graph RAG 相较于标准 RAG 具有以下显著优势:

  1. 关系上下文捕捉:

    能够捕捉和利用信息片段之间的复杂关系,提供更丰富、更具语境的信息检索结果。

  2. 多跳推理能力:

    图结构支持系统沿关系链进行推理,实现更复杂、更深入的逻辑分析。

  3. 结构化知识表示:

    相比平面文档结构,图结构能更自然地表示层级和非层级关系,更贴近现实世界的知识组织方式。

  4. 查询效率提升:

    对于涉及关系遍历的查询类型,图结构可显著提高处理效率。

图3:知识图谱示例

Graph RAG 的工作原理

Graph RAG 的工作流程可以概括为以下几个关键步骤:

  1. 查询处理:

    对输入查询进行分析和转换,使其适合图结构的查询格式。

  2. 图遍历:

    系统在图结构中进行探索,沿相关关系路径寻找连接的信息节点。

  3. 子图检索:

    不同于检索独立的信息片段,系统提取包含相互关联上下文的相关子图。

  4. 信息整合:

    将检索到的子图进行组合和处理,形成一个连贯、全面的上下文信息集。

  5. 响应生成:

    语言模型基于原始查询和整合后的图信息生成最终响应。

Graph RAG 处理流程图

图4:Graph RAG 处理流程示意图

标准 RAG 与 Graph RAG 的关键区别

  1. 知识表示方式:
  • 标准 RAG:采用平面文档结构

  • Graph RAG:使用图结构表示知识

  1. 检索机制:
  • 标准 RAG:主要依赖向量相似度搜索

  • Graph RAG:采用图遍历算法进行信息检索

  1. 上下文理解能力:
  • Graph RAG 能够捕捉更复杂的多步骤关系,这些关系在标准 RAG 中可能被忽略
  1. 推理能力:
  • Graph RAG 的图结构支持对相互关联信息进行更深入、更复杂的推理

图5:RAG 与 Graph RAG 对比示意

总结

Graph RAG 技术通过引入图结构化的知识表示和处理方法,显著增强了传统 RAG 系统的能力。它不仅提高了信息检索的准确性和完整性,还为复杂查询和多步推理提供了更强大的支持。这种方法在处理需要深度上下文理解和复杂关系分析的任务中,展现出了明显的优势。

随着知识图谱技术和图数据库的不断发展,Graph RAG 有望在各种高级人工智能应用中发挥越来越重要的作用,特别是在需要精确、全面信息检索和复杂推理的领域。

最后的最后

感谢你们的阅读和喜欢,我收藏了很多技术干货,可以共享给喜欢我文章的朋友们,如果你肯花时间沉下心去学习,它们一定能帮到你。

因为这个行业不同于其他行业,知识体系实在是过于庞大,知识更新也非常快。作为一个普通人,无法全部学完,所以我们在提升技术的时候,首先需要明确一个目标,然后制定好完整的计划,同时找到好的学习方法,这样才能更快的提升自己。

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

大模型知识脑图

为了成为更好的 AI大模型 开发者,这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

经典书籍阅读

阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。

在这里插入图片描述

实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

面试资料

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下

在这里插入图片描述

640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

在这里插入图片描述

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/55689.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

5 -《本地部署开源大模型》在Ubuntu 22.04系统下ChatGLM3-6B高效微调实战

在Ubuntu 22.04系统下ChatGLM3-6B高效微调实战 无论是在单机单卡(一台机器上只有一块GPU)还是单机多卡(一台机器上有多块GPU)的硬件配置上启动ChatGLM3-6B模型,其前置环境配置和项目文件是相同的。如果大家对配置过程还…

如何给手机换ip地址

在当今数字化时代,IP地址作为设备在网络中的唯一标识,扮演着举足轻重的角色。然而,有时出于隐私保护、网络访问需求或其他特定原因,我们可能需要更改手机的IP地址。本文将详细介绍几种实用的方法,帮助您轻松实现手机IP…

Vue.js 学习总结(10)—— Vue 前端项目性能优化常用技巧

1. 使用路由懒加载 在 Vue.js 应用中,路由懒加载可以延迟加载路由组件直到它们被需要时才加载,从而减少应用的初始加载时间。示例代码: // router/index.js import { createRouter, createWebHistory } from vue-router;const Home () >…

一元n次多项式乘法【数据结构-链表】

一元n次多项式定义如下: 其中Ai​为实数,i为不小于0的整数。在完成“一元n次多项式输入输出”题目的基础上实现一元n次多项式的乘法。要求使用链表实现上述运算。 输入格式: 有两个一元n次多项式,格式分别为: f(X)3X2 X1 g(X)−…

ubuntu 使用appimage安装的应用,应该怎么创建桌面的快捷方式

要为使用 AppImage 安装的应用程序在 Ubuntu 22.04 上创建桌面快捷方式,您可以按照以下步骤操作: 1. 确保 AppImage 文件可执行 首先,确保您下载的 AppImage 文件具有可执行权限。如果没有,可以通过以下命令授予权限&#xff1a…

MySQL 知识点_01

1、DISTINCT select DISTINCT EMPLOYEE_ID ,FIRST_NAME from employees 按照ID去重,DISTINCT的字段要放在前面,不会再继续在FIRST_NAME上去重判断; 如果需要多字段去重,需要用到group by,这个后面讲; …

一次恶意程序分析

首先F12shift查看字符表 字符表发现可疑字符串 双击进入 再tab 进入这里 推测为main函数 可见一些可疑的api FindResourceW推测该木马使用了资源加载 VirtualAlloc申请内存 然后sub_1400796E0 有 dwSize 参数 推测为 拷贝内存 memcpy类似函数 、 然后sub_140078CB0函数 跟进函…

HarmonyOS NEXT 应用开发实战(五、页面的生命周期及使用介绍)

HarmonyOS NEXT是华为推出的最新操作系统,arkUI是其提供的用户界面框架。arkUI的页面生命周期管理对于开发者来说非常重要,因为它涉及到页面的创建、显示、隐藏、销毁等各个阶段。以下是arkUI页面生命周期的介绍及使用举例。 页面的生命周期的作用 页面…

【正点原子K210连载】第四十六章 车牌识别实验 摘自【正点原子】DNK210使用指南-CanMV版指南

第四十六章 车牌识别实验 在上一章节中,介绍了利用maix.KPU模块实现了通过提取图像中人脸的特征进行人脸识别,本章将继续介绍利用maix.KPU模块实现的车牌识别。通过本章的学习,读者将学习到车牌识别应用在CanMV上的实现。 本章分为如下几个小…

视觉识别技术:开启智能视觉新时代

引言 在数字化时代,信息的获取和处理变得前所未有的重要。视觉识别技术,作为人工智能领域的一个重要分支,正在逐渐改变我们与数字世界的互动方式。它通过模拟人类视觉系统,使计算机能够识别和理解图像和视频中的内容,…

LeetCode-四数相加-Java

一、题目 给你四个整数数组 nums1、nums2、nums3 和 nums4 &#xff0c;数组长度都是 n &#xff0c;请你计算有多少个元组 (i, j, k, l) 能满足&#xff1a; 0 < i, j, k, l < nnums1[i] nums2[j] nums3[k] nums4[l] 0 示例 1&#xff1a; 输入&#xff1a;nums1…

Shell案例之一键部署mysql

1.问题 我认为啊学习就是一个思考的过程&#xff0c;思考问题的一个流程应该是&#xff1a;提出问题&#xff0c;分析问题&#xff0c;解决问题 在shell里部署mysql服务时&#xff0c;我出现一些问题&#xff1a; 1.安装mysql-server时&#xff0c;没有密钥&#xff0c;安装…

普通java web项目集成spring-session

之前的老项目&#xff0c;希望使用spring-session管理会话&#xff0c;存储到redis。 项目环境&#xff1a;eclipse、jdk8、jetty嵌入式启动、非spring项目。 实现思路&#xff1a; 1.添加相关依赖jar。 2.配置redis连接。 3.配置启动spring。 4.配置过滤器&#xff0c;拦…

宏观经济分析应该看哪些指标?

文章目录 1.国内生产总值(GDP)1.1 GDP(国内生产总值)2. 失业率2.1 城镇登记失业率2.2 调查失业率2.3 青年失业率2.4 长期失业率3. 通货膨胀率3.1 CPI(消费者物价指数):3.2 PPI(生产者物价指数):4. 利率4.1 贷款市场报价利率(LPR)4.2 金融机构贷款基准利率4.3 存款基…

L1练习-鸢尾花数据集处理(分类/聚类)

背景 前文&#xff08;《AI 自学 Lesson1 - Sklearn&#xff08;开源Python机器学习包&#xff09;》&#xff09;以鸢尾花数据集的处理为例&#xff0c;本文将完善其代码&#xff0c;在使用 sklearn 的部分工具包基础上&#xff0c;增加部分数据预处理、数据分析和数据可视化…

QUIC 协议的优势

QUIC 协议的优势包括&#xff1a; 快速建立连接&#xff1a;将传输层和加密层的握手合并&#xff0c;减少了连接建立的延迟。QUIC 建连时间大约为 0~1RTT&#xff0c;相比 HTTPS 的 3RTT 建连&#xff0c;具有极大的优势。客户端第一次建连的握手协商需 1RTT&#xff0c;而已建…

Linux 和Windows创建共享文件夹实现文件共享

直接开整 1.Windows下创建共享文件夹share右击-》属性—》共享-》选择所有人-》点击共享 2.共享创建完成后可以使他的共享网络地址或者Windows ip地址-推荐使用Windows ip地址有时候 不知道什么原因他Linux解析不了网络地址 共享网络地址 —共享文件夹share 右击-》属性—》共…

扫普通链接二维码打开小程序

1. 2.新增规则&#xff08;注意下载文件到跟目录下&#xff0c;需要建个文件夹放下载的校验文件&#xff09; 3.发布 ps&#xff1a;发布后&#xff0c;只能访问正式版本。体验版本如果加了 测试链接http://xxx/xsc/10 那么http://xxx/xsc/aa.....应该都能访问 例如aa101 aa…

CMOS晶体管的串联与并联

CMOS晶体管的串联与并联 前言 对于mos管的串联和并联&#xff0c;一直没有整明白&#xff0c;特别是设计到EDA软件中&#xff0c;关于MOS的M和F参数&#xff0c;就更困惑了&#xff0c;今天看了许多资料以及在EDA软件上验证了电路结构与版图的对应关系&#xff0c;总算有点收…

操作系统(6) (Named /Unnamed Semaphore信号量详解)

目录 1: 信号量的基本概念 2: 命名信号量的示例代码 3. 无名信号量&#xff08;Unnamed Semaphore&#xff09; 背景&#xff08;Background&#xff09; 示例代码讲解 初始化无名信号量 线程函数 创建线程并等待完成 销毁信号量 总结 4. 对比 1: 信号量的基本概念 背…