RAG理论到实践:高级、模块化RAG在AI工程架构中的行业通用解决方案与实施策略(Advanced RAG)

RAG理论到实践:高级、模块化RAG在AI工程架构中的行业通用解决方案与实施策略(Advanced RAG✨)

随着 ChatGPT 的兴起,大语言模型再次走进人们的视野,其在 NLP 领域表现出的语言识别、理解以及推理能力令人惊叹。越来越多的行业开始探索大语言模型的应用,比如政务、医疗、交通、导购等行业。

通义系列、GPT 系列、LLama 系列等模型,在语言交互场景下表现十分抢眼。以 Gemini 为代表这类大模型甚至发展出了视觉和听觉,朝着智能体的方向演化。他们在多个指标上展现的能力甚至已经超过了人类。然而,大型语言模型也存在诸多不足:

  • 知识的局限性:模型知识的广度获取严重依赖于训练数据集的广度,目前市面上大多数的大模型的训练集来源于网络公开数据集,对于一些内部数据、特定领域或高度专业化的知识,无从学习。

  • 知识的滞后性:模型知识的获取是通过使用训练数据集训练获取的,模型训练后产生的一些新知识,模型是无法学习的,而大模型训练成本极高,不可能经常为了弥补知识而进行模型训练。

  • 幻觉问题:所有的 AI 模型的底层原理都是基于数学概率,其模型输出实质上是一系列数值运算,大模型也不例外,所以它有时候会一本正经地胡说八道,尤其是在大模型自身不具备某一方面的知识或不擅长的场景。而这种幻觉问题的区分是比较困难的,因为它要求使用者自身具备相应领域的知识。

  • 数据安全性:对于企业来说,数据安全至关重要,没有企业愿意承担数据泄露的风险,将自身的私域数据上传第三方平台进行训练。这也导致完全依赖通用大模型自身能力的应用方案不得不在数据安全和效果方面进行取舍。为了解决纯参数化模型的局限,语言模型可以采取半参数化方法,将非参数化的语料库数据库与参数化模型相结合。这种方法被称为 RAG(Retrieval-Augmented Generation)。

1.RAG简介

词汇 解释说明
embedding 嵌入(embedding)是指将高维数据映射为低维表示的过程。在机器学习和自然语言处理中,嵌入通常用于将离散的符号或对象表示为连续的向量空间中的点。在自然语言处理中,词嵌入(word embedding)是一种常见的技术,它将单词映射到实数向量,以便计算机可以更好地理解和处理文本。通过词嵌入,单词之间的语义和语法关系可以在向量空间中得到反映。
VectorDB 向量数据库是一种特殊类型的数据库,它可以存储和处理向量数据。向量数据通常用于表示多维度的数据点,例如在机器学习和人工智能中使用的数据。在向量数据库中,数据被表示为向量,这些向量可以在多维空间中进行比较和搜索。

RAG 是 Retrieval-Augmented Generation(检索增强生成)的缩写,它是一种用于自然语言处理和文本生成的模型框架。RAG 结合了信息检索和文本生成的技术,旨在通过检索相关信息来增强文本生成的质量和相关性。在 RAG 中,检索阶段用于从大规模的知识库中获取与正在生成的文本相关的信息。这些信息可以包括文本片段、实体、事实、知识等。生成阶段则利用检索到的信息来生成自然语言文本,使得生成的文本更加准确、相关和丰富。

RAG 模型通常基于大规模的预训练语言模型(如 BERT、GPT 等),并结合了信息检索技术和文本生成技术。这种模型框架在问答系统、对话系统、摘要生成等自然语言处理任务中具有广泛的应用。总的来说,RAG 是一种结合了信息检索和文本生成技术的模型框架,旨在通过检索相关信息来增强自然语言文本的生成过程。

  • RAG 的组成部分

RAG(Retrieval-Augmented Generation)模型框架包括以下几个关键组成部分:

  • 检索器(Retriever):检索器是 RAG 框架中的一个重要组成部分,用于从大规模的知识库中检索相关的信息。这些信息可能是文本片段、图像、视频等。检索器可以使用各种信息检索技术,如倒排索引、BM25 等,以有效地从知识库中检索相关的内容。

  • 生成器(Generator):生成器是 RAG 框架中的另一个关键组成部分,用于利用从检索器中检索到的信息来生成自然语言文本。生成器通常基于大规模的预训练语言模型(如 BERT、GPT 等),能够产生丰富、流畅且相关性强的文本输出。

  • 交互式组件(Interactive Components):RAG 模型可能还包括一些交互式组件,用于在检索和生成之间进行交互性操作,以进一步提高生成文本的质量。这些组件可以包括重写模块、排序模块等,用于对检索到的信息进行进一步加工和处理。

  • 联合训练框架(Joint Training Framework):RAG 模型也可能包括一个联合训练框架,用于同时优化检索器和生成器,以使它们能够更好地协同工作,产生更准确、相关和丰富的文本输出。

总的来说,RAG 模型框架主要由检索器、生成器以及可能的交互式组件和联合训练框架组成。这些组件共同作用,利用检索的信息来增强文本生成的质量和相关性。RAG 的设计使其具有广泛的应用潜力,特别是在问答系统、对话系统和摘要生成等领域。

现在虽然在 RAG 架构上出现了初级 RAG、高级 RAG 以及模块化 RAG 的架构设计,但都是在上面的 4 个关键部分内做一些模块删减或做一些架构调整。基本数据流如下:


针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包括LL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值