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能够在提供准确和相关响应的同时,保持对上下文的敏感性和对组织内部结构的理解。这种结合检索、生成和实体检测的方法,为构建高效、可靠的问答系统提供了一种有效的解决方案。

相关推荐
Godspeed Zhao38 分钟前
自动驾驶中的传感器技术36——Lidar(11)
人工智能·机器学习·自动驾驶·全固态激光雷达
不老刘1 小时前
《生成式AI消费级应用Top 100——第五版》| a16z
人工智能·ai·chatgpt·a16z
此处不留情3 小时前
基于pytorch的垃圾分类识别项目实战
人工智能·pytorch
mit6.8243 小时前
[AI人脸替换] docs | 环境部署指南 | 用户界面解析
人工智能·python
fantasy_arch3 小时前
Pytorch超分辨率模型实现与详细解释
人工智能·pytorch·python
AI大模型4 小时前
文科生也能逆袭AI?这5个方向0基础也能成功转行!
程序员·llm·agent
爱读源码的大都督4 小时前
小白LLM教程:不训练模型,如何进行微调?
java·人工智能·后端
大千AI助手4 小时前
接吻数问题:从球体堆叠到高维空间的数学奥秘
人工智能·agi·deepmind·接吻数·kissingnumber·牛顿·alphaevolve
程序猿小D4 小时前
【完整源码+数据集+部署教程】硬币分类与识别系统源码和数据集:改进yolo11-SWC
人工智能·yolo·计算机视觉·数据挖掘·数据集·yolo11·硬币分类与识别系统
西猫雷婶6 小时前
神经网络|(十六)概率论基础知识-伽马函数·中
人工智能·深度学习·神经网络·学习·机器学习·概率论