Tree-RAG工作流程及实体树应用介绍

引言

T-RAG方法基于将检索增强生成(Retrieval-Augmented Generation,简称RAG)架构与开源经过微调的大型语言模型(Large Language Model,简称LLM)以及实体树向量数据库相结合。这种方法的重点在于上下文检索。

具体来说,T-RAG系统:

  • 首先利用RAG架构进行信息检索,这一架构通过结合检索到的文档片段和生成的文本来生成响应。
  • 通过在开源的LLM上进行微调,使得模型能够更好地理解和适应特定组织的需求和术语。

此外,T-RAG还包括了一个实体树向量数据库 ,这个数据库存储了组织内部实体的详细信息及其层级结构。在处理用户查询时,系统不仅会搜索相关的文档片段,还会检测查询中提到的任何组织相关实体,并将这些实体的详细信息整合到生成的上下文中。

本文分享了在私有文件上部署问答系统的LLM应用的经验,使用了一种名为Tree-RAG(T-RAG)的系统,该系统结合了实体层次结构以提高性能。

亮点

在论文中,研究人员开发了一个应用,该应用将检索增强生成(RAG)与微调后的开源大型语言模型(LLM)结合在一起,用于生成响应。这个模型是使用指令数据集进行训练的。

他们引入了一个新颖的评估指标,称为Correct-Verbose,旨在评估生成响应的质量。这个指标根据其正确性评估响应,同时考虑包含超出原始问题范围的额外相关信息。

T-RAG

以下是Tree-RAG(T-RAG)的工作流程:

对于给定的用户查询,搜索向量数据库以寻找相关的文档片段,这些片段作为LLM在上下文学习中的参考知识。

如果查询提到了有组织性的实体,那么将从实体树中提取关于这些实体的信息,并添加到上下文中。

最终使用微调的Llama-2 7B模型根据输入的数据生成响应。

T-RAG的一个特点是除了向量数据库用于上下文检索之外,还包括了一个实体树

实体树

T-RAG的一个显著特点是其结合了实体树和向量数据库来进行上下文检索。实体树存储了组织性的实体及其层级安排的详细信息。

这里所说的组织性是指:很多时候,一些概念本身是有组织的,比如一家公司的各个部门,会有一些层级关系。树中的每个节点代表一个实体,父节点表示其所属的一个更广义的实体,比如一个小组的父节点是其所属的部门。

在检索过程中,框架利用实体树来增强从向量数据库检索到的上下文。

实体树搜索和上下文生成的详细过程如下:

  1. 一个解析模块扫描用户查询,寻找与组织内实体名称相对应的关键词。
  2. 一旦识别出一个或多个匹配项,就从树中提取每个匹配实体的详细信息。
  3. 这些细节被转换成文本陈述,提供有关实体及其在组织层级中位置的信息。
  4. 随后,这些信息与从向量数据库检索到的文档片段合并,构建上下文。
  5. 由此,当用户询问有关实体时,模型可以获得有关实体及其在组织层级中的定位的相关信息。

例子

如下图所示:

这里使用了一个组织结构树,来展示如何执行树搜索和检索。

除了获取上下文文档外,还使用spaCy库和自定义规则来识别组织内的命名实体。

如果查询包含一个或多个这样的实体,将从树中提取有关实体层级位置的相关信息,并将其转换为文本陈述。然后,这些陈述被整合到上下文中,与检索到的文档一起使用。

然而,如果用户的查询没有提到任何实体,那么将省略树搜索过程,只使用从检索到的文档中获取的上下文以加速响应。

总结

这项研究结合了检索增强生成(RAG)和微调技术。同时,使用在本地部署的开源模型来解决数据隐私问题,。

此外,通过spaCy框架使用实体进行实体搜索和上下文生成也很有趣。通过这种方式,T-RAG能够在提供准确和相关响应的同时,保持对上下文的敏感性和对组织内部结构的理解。这种结合检索、生成和实体检测的方法,为构建高效、可靠的问答系统提供了一种有效的解决方案。

相关推荐
Allen_LVyingbo5 分钟前
医院大数据平台建设:基于快速流程化工具集的考察
大数据·网络·人工智能·健康医疗
黑色叉腰丶大魔王20 分钟前
数据挖掘:定义、挑战与应用
人工智能·数据挖掘
Adenialzz28 分钟前
Rectified Flow 原理简介与示例代码解读
人工智能·深度学习·机器学习·计算机视觉·diffusion
看星猩的柴狗1 小时前
机器学习-高斯混合模型
人工智能·机器学习
power-辰南2 小时前
机器学习之数据分析及特征工程详细分析过程
人工智能·python·机器学习·大模型·特征
少说多想勤做2 小时前
【前沿 热点 顶会】AAAI 2025中与目标检测有关的论文
人工智能·深度学习·神经网络·目标检测·计算机视觉·目标跟踪·aaai
橙子小哥的代码世界4 小时前
【计算机视觉基础CV-图像分类】05 - 深入解析ResNet与GoogLeNet:从基础理论到实际应用
图像处理·人工智能·深度学习·神经网络·计算机视觉·分类·卷积神经网络
leigm1234 小时前
深度学习使用Anaconda打开Jupyter Notebook编码
人工智能·深度学习·jupyter
Aileen_0v06 小时前
【玩转OCR | 腾讯云智能结构化OCR在图像增强与发票识别中的应用实践】
android·java·人工智能·云计算·ocr·腾讯云·玩转腾讯云ocr
阿正的梦工坊7 小时前
深入理解 PyTorch 的 view() 函数:以多头注意力机制(Multi-Head Attention)为例 (中英双语)
人工智能·pytorch·python