链载Ai

标题: GraphRAG落地难,微软工业级RAG Agent实施方案 [打印本页]

作者: 链载Ai    时间: 昨天 17:31
标题: GraphRAG落地难,微软工业级RAG Agent实施方案


一、RAG面临的问题

RAG系统需要处理来自不同领域的复杂数据,包括文本、表格、图表等,这些数据的格式多样,且包含大量非文本信息。

现有的RAG方法在处理这些复杂数据时,存在以下问题:


二、RAG系统能力的解构

为了能全面的解构RAG系统,可以从三个角度对 RAG 框架进行了概念化:


2.1 知识库

那么,如何组织庞杂的知识库呢?


2.2 任务分类

当前的检索增强生成 (RAG) 框架经常忽略不同任务固有的复杂性和后勤需求,通常采用一种一刀切的方法。

然而,即使拥有全面的知识检索,目前的 RAG 系统也无法同样有效地处理难度不同的任务。

因此,对任务进行分类并分析克服每个类别固有挑战的典型策略至关重要。

可以将任务的难度划分为4个方面:

在对行业中真实的 RAG 任务进行分类时,通常需要关注知识提取、理解、组织和利用的过程,以提供结构化和有见地的回应。

因此, 大致可以分为四类问题:


2.3 系统开发

其中:“PA”代表文件解析,“KE”代表知识提取,“RT”代表知识检索,“KO”代表知识组织,“KR”代表知识中心推理。


三、工业级RAG+Agent架构

这里介绍PIKE-RAG 框架,包括7个模块:

每个组件都可以根据系统能力水平的需求进行定制,以支持不同复杂度的任务。

后文,将根据上面提到的系统开发的4个级别,按照顺序来详细的阐述工业级RAG的构建流程与细节。


3.1 构建知识库:L0级的任务


3.1.1 文档解析


3.1.2 知识组织

将知识库解构为多层异构图,表示不同层次的信息粒度和抽象程度。

图能捕获数据各个组成部分(例如,文档、章节、片段、图表和表格)之间的关系,并将它们组织成节点和边,反映它们的相互连接和依赖关系。

这种多层结构包含:信息资源层、语料库层和蒸馏知识层,能够为下游任务提供语义理解和基于原理的检索。

蒸馏知识层,包含的知识有:


3.2 关注事实问题:L1级的任务

L1 系统在 L0 系统的基础上,引入了知识检索和知识组织,实现了其检索和生成能力。


3.2.1 分块增强模块

  1. 首先,根据全文头部的文本,生成一个初始摘要

  2. 然后,滑动一个窗口,取一个固定长度的文本块。将当前窗口的文本块与初始摘要,送入大模型中,进行分块。得到当前窗口真实chunk和该chunk的摘要,并保存起来。

  3. 接着,再滑动一个固定的窗口得到新的文本块,与2中生成的摘要一起,送入大模型中进行分块。得到当前窗口真实chunk和该chunk的摘要

  4. 重复第3步,直到整个文本被分割并总结。


3.2.2 自动标注


3.2.3 多粒度检索

图的每一层(例如,信息源层、语料库层、蒸馏知识层)都代表不同抽象级别和粒度的知识,允许系统以各种规模探索和检索相关信息。

例如:查询可以映射到整个文档(信息源层)或特定的文本片段(语料库层),确保可以根据给定任务在适当的级别检索知识。

具体的做法如下:


3.3 可链接和推理问题聚焦2级的任务


3.3.1 知识原子化


3.3.2 基于知识的任务分解


3.3.3 知识任务分解的训练

主要包括4个部分:

具体做法如下:

收集训练数据.通过采样上下文并创建多样化的交互轨迹来收集关于每个步骤背后的基本原理的数据。

具体流程如下:


3.4 预测性问题:L3级的任务

在 L3 中,越来越强调基于知识的预测能力,这需要有效地收集和组织知识,并构建预测基本原理。

利用任务分解和协调模块,基于从检索到的知识中收集和组织的知识来构建预测基本原理

举个例子:


3.5 创造性问题:L4级的任务

L4 主要实现特征在于集成了多代理系统以促进多角度思考。

主要包括:


PIKE-RAG的检索案例

PIKE-RAG通过利用简洁的原子问题列表进行目标选择,保留完整片段以获得丰富的上下文支持而获益。

在法律领域中比较PIKE-RAG与GraphRAG,简直是降维打击







欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5