LightRAG开源了!轻巧、强大,GraphRAG的进化版

我们以前介绍了HybridRAG、GraphRAG这些,今天我们将介绍一个崭新的RAG项目:LightRAG

现有的RAG系统老是搞不清复杂关系,答案经常被切碎,缺乏上下文,难以真正理解问题。而LightRAG就是来解决这些问题的,它把图结构引入文本索引和检索,采用双层检索系统,从低到高全面覆盖信息。更酷的是,它还能快速更新数据,保持实时高效的响应,而且它已经开源了哦!

并且你现在可以通过简单的API调用来实现多种检索模式,包括本地、全局和混合检索。

LightRAG 的工作流程分为三个核心部分:

    1. 图基文本索引(Graph-Based Text Indexing)
    1. 双层检索范式(Dual-Level Retrieval Paradigm)
    1. 增量知识库的快速适应
一、图基文本索引
  • 步骤 1:实体和关系提取

  • • 使用大型语言模型(LLM)分析文档,自动识别出文本中的实体(如人名、地点、组织等)及其关系(如“属于”或“位于”)。

  • • 文本被分割成多个较小的块(chunks)来提升处理效率。

  • 步骤 2:LLM Profiling 生成键值对

  • • 对每个识别出的实体和关系,LLM 生成键值对(Key-Value Pair)。其中,“键”(Key)是一个或多个关键词,而“值”(Value)是与这些实体或关系相关的文本段落。

  • 步骤 3:去重优化

  • • 合并不同文档中的重复实体和关系,减少不必要的计算,提升处理速度。

二、双层检索范式
  • 步骤 4:生成查询关键词

  • • 针对用户查询,系统自动提取局部关键词(low-level)和全局关键词(high-level)用于匹配检索。

  • 步骤 5:关键词匹配

  • • 使用向量数据库,局部关键词会匹配相关的实体,全局关键词会匹配到相应的实体关系。

  • 步骤 6:整合高阶相关性

  • • 为增强检索的准确性,LightRAG 会收集检索到的图元素的邻接节点,涉及检索到的实体及其关系的上下文。

三、检索增强的答案生成
  • 步骤 7:使用检索到的信息

  • • 检索完成后,系统将提取到的实体和关系输入LLM,并基于这些信息生成答案。

  • 步骤 8:上下文整合与答案生成

  • • 系统将用户查询与多源检索结果进行合并,生成符合查询语境的答案。

四、增量知识库的快速适应
  • 步骤 9:增量更新知识库

  • • 新文档加入时,系统会按照之前的图基索引步骤处理新文档,将新生成的知识图谱与现有图谱数据合并,实现无缝更新。

  • 步骤 10:减少计算开销

  • • 为了提升效率,LightRAG 避免重建整个知识图谱,仅更新新数据部分,从而减少计算开销,提升系统响应速度。

通过这些步骤,LightRAG 实现了更精准、更高效、更具上下文关联的知识检索和答案生成,特别是对复杂问题的解决和大规模数据处理具有显著优势。

LightRAG 架构实例解释

LightRAG 主要通过以下几个步骤来让信息检索更准确、更智能:

    1. 从文本中提取信息:系统会读取文档,识别出重要的“实体”(比如人、地点、事物)和它们之间的“关系”(比如某人属于某组织,某事物位于某地)。
  • • 比如,系统可能会识别出“Beekeeper(养蜂人)”这个实体,并且提取出它与“Bee(蜜蜂)”的关系。
    1. 去掉重复信息:系统会去除文档中相同的实体和关系,避免不必要的重复。这样可以减轻系统的负担,提高效率。
  • • 比如,系统发现同一个文档中多次提到了“Beekeeper”,但意思相同,就只保留一次。
    1. 把信息放入图表:这些提取出来的实体和关系会被放入一个“图”中。在这个图里,实体是“节点”,关系是“边”,所有的节点和边相连形成了一个可以高效查询的信息网络。
  • • 比如,图中可以显示“Beekeeper”节点和“Bee”节点通过一条“管理(Manage)”的边相连。
    1. 双层检索:当用户提问时,系统会分两步进行检索。首先,它会寻找与问题直接相关的“局部关键词”(如“Beekeeper”),然后它会寻找与这些关键词关联的“全局关键词”(如“Bee”、“Hive(蜂巢)”等)。
  • • 例如,用户问:“养蜂人如何管理蜂群?”系统会找到“Beekeeper”相关的信息,同时也找到了“Bee”和“Hive”的相关内容,给出更完整的答案。
    1. 生成答案:系统结合检索到的信息,利用大语言模型(LLM)生成详细的答案,并且确保答案逻辑连贯、信息准确。
    1. 知识更新:当有新的信息加入时,系统会把新信息无缝整合到已有的图中,确保系统总是基于最新的知识进行检索,而不会每次都重建整个系统。

这张图表可以理解为整个过程的可视化,它展示了从识别实体到检索再到生成答案的完整流程。

面对问题“哪些指标最适合评估电影推荐系统?”时,LLM首先提取低层次和高层次的关键词,用这些关键词在生成的知识图谱上检索相关的实体和关系。检索到的信息被组织成三个部分:实体、关系和相应的文本片段。然后,这些结构化的数据被送入LLM,帮助它生成一个全面的答案。

LightRAG在四个数据集/评估维度上都显示出了显著的改进,效果优于GraphRAG、NaiveRAG、RQ-RAG 、HyDE。

▲ 在四个数据集和四个评估维度下,基线与LightRAG的胜率(%)对比

LightRAG 的代码结构基于nano-graphrag,一个更小、更快的GraphRAG。

LightRAG 论文:https://arxiv.org/abs/2410.05779

▲ 基于Claude生成的论文摘要卡片

读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用

对于0基础小白入门:

如果你是零基础小白,想快速入门大模型是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。

包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
在这里插入图片描述

👉AI大模型学习路线汇总👈

大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

👉大模型实战案例👈

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

在这里插入图片描述

👉大模型视频和PDF合集👈

观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述
在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
在这里插入图片描述

### 关于 LightRAG 知识图谱的技术文档、使用教程及API示例 #### 一、技术概述 LightRAG 是一种创新性的检索增强生成系统,它利用基于图的文本索引和双级检索范式来提升信息获取的速度与准确性。该架构不仅能够快速响应用户的查询请求,还能有效地捕捉不同文献间的潜在联系,从而为用户提供更加全面的信息支持[^4]。 #### 二、安装指南 为了开始使用 LightRAG 进行开发工作,建议先访问官方 GitHub 页面下载最新版本源码并按照说明完成环境配置: ```bash git clone https://github.com/HKUDS/LightRAG.git cd LightRAG pip install -r requirements.txt ``` 上述命令会克隆项目仓库并将所需依赖项安装到当前环境中[^2]。 #### 三、构建知识图谱 创建自定义的知识图谱是充分利用 LightRAG 功能的关键一步。这通常涉及到以下几个方面的工作: - 数据收集:从各种渠道搜集目标领域的原始资料; - 实体识别:运用自然语言处理工具自动标注出重要概念及其关系; - 图形化表示:将实体间的关系转化为节点链接形式存储起来以便后续调用; 具体操作可以参照官方提供的 Jupyter Notebook 教程文件中的实例进行实践练习[^3]。 #### 四、API 接口介绍 对于希望集成 LightRAG 到现有应用程序中的开发者来说,掌握 RESTful 风格 Web Service 的设计模式非常重要。以下是几个常用的 HTTP 请求路径示例: - **POST /api/v1/query** 向此端点发送 POST 请求可执行全文搜索功能,返回最匹配的结果列表。 ```json { "query": "如何制作披萨", "top_k": 5, "include_context": true } ``` - **GET /api/v1/entities/{entity_id}** 获取指定 ID 对应的具体条目详情,包括但不限于名称、描述和其他属性字段等基本信息。 - **PUT /api/v1/graph/update** 当有新知识点加入时可通过 PUT 方法提交更新后的 JSON 文件至服务器端,实现实时同步维护最新的知识体系结构。 以上就是关于 LightRAG 基本使用的简单介绍,更多高级特性等待着大家深入挖掘探索!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值