GraphRAG——一个基于图的检索增强生成的开源项目【送源码】

news2024/9/21 10:46:26

GraphRAG

最近几天,微软团队开源了GraphRAG,这是一种基于图(Graph)的检索增强生成方法。

先说说RAG吧,检索增强生成,相当于是从一个给定好的知识库中进行检索,接入LLM模型,让模型生成准确且符合上下文的答案,减少幻觉,根据特定的知识库进行符合知识库内容的回答。如果和模型微调进行比较,通俗点来说,RAG是给模型一本《答案全解》让它自己查,微调是给模型开辅导班补习。不过,传统RAG有一些待解决的问题,比如推理能力不足,答案不完整,准确性不足等。

图片

知识图谱可视化示例

而 GraphRAG 的实现流程大致如下,首先将输入文本转化为文本块,让 LLM 提取知识图谱,将知识图谱聚类,基于关键词实现子图遍历。

我们直接来看看 GraphRAG 的实战测试吧。测试基于俄乌双方关于暴力事件的上千份新闻报道,文件内容比较多,而且内容之间关系复杂,无法直接放入LLM的上下文中,RAG方法是此时的最优解。团队首先测试了第一个问题:Novorossiya 是什么?

图片

可以看到无论是 Baseline RAG 还是 GraphRAG 表现都很好,因为这种查询确实是基线RAG擅长的部分,查就完了。

但如果把问题换成:Novorossiya 做了什么?

图片

Baseline RAG 根本没法给出答案,它的源文件中没有任何东西提到这个关键词。而 GraphRAG 让 LLM 建立了知识图谱,分析实体之间的关系,生成了很不错的答案。GraphRAG 极大的提升了 RAG 的检索能力,在捕获上下文的这个过程中可以填充更多具有相关性的内容,从而让生成的答案更具准确性。

不过有一个无法避免的问题:所有的性能改进技术,都会导致 token 的使用和推理的时间增加。但这并不影响 GraphRAG 的优秀,让我们一起期待一下GraphRAG的进一步发展吧!

项目地址:

https://github.com/microsoft/graphrag

  ——EOF——

福利:

后台回复【酒店】可免费领取酒店管理系统源码

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

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

相关文章

数据结构——顺序表【C】

顺序表 1. 顺序表的概念以及结构1.1概念1.2静态顺序表和动态顺序表 2. 顺序表接口模拟实现接口总览2.1 初始化数据和销毁容器 2.2 顺序表的尾插和尾删2.3 头插和头删2.4 任意位置插入和删除数据2.5 查找数据 3. 顺序表的问题 : 1. 顺序表的概念以及结构 1.1概念 顺…

无缝协作:如何实现VMware与Ubuntu虚拟机的剪切板共享!

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 剪贴板共享 📒📝 VMware设置📝 安装VMware Tools或open-vm-tools📝 验证剪贴板共享功能⚓️ 相关链接 🚓️📖 介绍 📖 无缝的剪贴板共享是提高工作效率的关键。在VMware和Ubuntu虚拟机的协同工作中,能够直接在宿…

【鸿蒙学习笔记】属性学习迭代笔记

这里写目录标题 TextImageColumnRow Text Entry Component struct PracExample {build() {Row() {Text(文本描述).fontSize(40)// 字体大小.fontWeight(FontWeight.Bold)// 加粗.fontColor(Color.Blue)// 字体颜色.backgroundColor(Color.Red)// 背景颜色.width(50%)// 组件宽…

arp缓存中毒实验

文章目录 一、相关知识1.什么是arp(地址解析协议)2.什么是免费arp(1)简介(2)主要应用(3)代码 3.什么是arp缓存中毒(1)简介(2)过程&…

ubuntu使用kubeadm搭建k8s集群

一、卸载k8s kubeadm reset -f modprobe -r ipip lsmod rm -rf ~/.kube/ rm -rf /etc/kubernetes/ rm -rf /etc/systemd/system/kubelet.service.d rm -rf /etc/systemd/system/kubelet.service rm -rf /usr/bin/kube* rm -rf /etc/cni rm -rf /opt/cni rm -rf /var/lib/etcd …

第5章-组合序列类型

#全部是重点知识,必须会。 了解序列和索引|的相关概念 掌握序列的相关操作 掌握列表的相关操作 掌握元组的相关操作 掌握字典的相关操作 掌握集合的相关操作1,序列和索引 1,序列是一个用于存储多个值的连续空间,每一个值都对应一…

python实现建议股票计算器

name 无忧传播 stock_price 19.99 stock_code "003032" stock_rise 1.2 day 7print(f"公司:{name},代码:{stock_code},当前股价:{stock_price}")print("增长系数是:%f,经过%d天后&am…

Git本地仓库的搭建与使用

目录 一、前言 二、Linux下搭建 git 仓库 三、Windows下搭建 git 仓库 一、前言 做项目时,我们常常需要将自己的代码进行托管,但有时候 Github 的速度属实叫人流泪。有的人会选择 Gitee 等进行托管代码,这当然是可以的。那如果没有其他代码…

【VUE基础】VUE3第一节—vite创建vue3工程

什么是VUE Vue (发音为 /vjuː/,类似 view) 是一款用于构建用户界面的 JavaScript 框架。它基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。无论是简单还是复杂的界面&#xff0…

藏汉翻译通作为翻译软件的优势有哪些?

藏汉翻译通作为一款专业的藏汉双语翻译软件,具有以下优势: 人工智能技术应用:藏汉翻译通利用了人工智能翻译和语音识别合成技术,提供智能藏文翻译服务。 高准确率:文字识别准确率可达90%,语音识别转化文字…

IDEA新建项目并撰写Java代码的方法

本文介绍在IntelliJ IDEA软件中,新建项目或打开已有项目,并撰写Java代码的具体方法;Groovy等语言的代码也可以基于这种方法来撰写。 在之前的文章IntelliJ IDEA社区版在Windows电脑中的下载、安装方法(https://blog.csdn.net/zheb…

Echarts水球图(liquidFill)添加文字

效果 代码 {type: liquidFill,shape: shapes[0].value,radius: 90%,data: [{name: 独立百货,value: 0}],center: [50%, 50%],color: [{type: linear,x: 0,y: 0,x2: 0,y2: 1,colorStops: [{offset: 0,color: #446bf5},{offset: 1,color: #2ca3e2}],globalCoord: false}],backgro…

混合贪心算法求解地铁线路调度

一、问题描述 城市轨道交通的繁荣发展,带来了车辆资源需求的日益增加。如何兼顾运营服务水平和运营成本,以最少的车底优质地完成运输任务成为一大严峻问题。本题在后续的描述中将由多辆动车和拖车组合而成的车组称为车底。在日常的运营组织中&#xff0…

算力狂飙|WAIC 2024上的服务器

7月7日,2024世界人工智能大会暨人工智能全球治理高级别会议(WAIC 2024)在上海落下帷幕。这场备受瞩目的AI盛宴与热辣夏日碰撞,吸引了全球科技、产业及学术界的广泛关注,线下参观人数突破30万人次,线上流量突…

DOM(文档对象模型)生命周期事件

前言 DOM 生命周期事件涉及到从创建、更新到销毁 DOM 元素的不同阶段。 ● 我们来看下当HTML文档加载完再执行JavaScript代码 document.addEventListener(DOMContentLoaded, function (e) {console.log(HTML parsed adn DOM tree built!, e); })● 除此之外,浏览…

Linux | 安装lb-toolkits 1.2.4库

Linux | 安装 lb-toolkits 最近又需要下载葵花的数据,之前分享过一次代码。今天发现之前的环境不小心被我删了,而运行相关的代码需要安装lb-toolkits这个库,今天正好记录了一下安装lb-toolkits的过程。 这里安装的版本是1.2.4,别…

【前端从入门到精通:第十二课: JS运算符及分支结构】

JavaScript运算符 算数运算符 关于自增自减运算 自增或者自减运算就是在本身的基础上进行1或者-1的操作 自增或者自减运算符可以在变量前也可以在变量后,但是意义不同 自增自减运算符如果在变量前,是先进行自增或者自减运算,在将变量给别人用…

基于springboot+vue实现的厨艺交流平台(文末源码+Lw)093

93基于SpringBootVue的实现的厨艺交流平台(源码数据库万字Lun文流程图ER图结构图演示视频软件包) 系统功能: 这次开发的厨艺交流平台功能有个人中心,食材分类管理,用户管理,菜品分类管理,菜谱信…

力扣第一题

1. 两数之和 提示 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可…

CSS技巧专栏:一日一例 2.纯CSS实现 多彩边框按钮特效

大家好,今天是 CSS技巧一日一例 专栏的第二篇《纯CSS实现多彩边框按钮特效》 先看图: 开工前的准备工作 正如昨日所讲,为了案例的表现,也处于书写的习惯,在今天的案例开工前,先把昨天的准备工作重做一遍。 清除浏览器的默认样式定义页面基本颜色设定body的样式清除butt…