阿里云向量引擎快速搭建企业级RAG最佳实践

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: 本文介绍了基于阿里云搭建RAG(检索增强生成)应用的技术分享。首先回顾了RAG技术背景及其面临的挑战,如大模型幻觉、知识局限和数据安全问题。接着详细讲解了阿里云提供的RAG技术架构,涵盖数据处理、模型服务和高性能检索引擎等多方面能力。最后,通过自研引擎与开源组件的结合,展示了如何快速构建RAG应用,并提供端到端的最佳实践方案,确保系统在企业级应用中的高效性和成本优化。

今天主要分享基于技术,产品快速去搭建 RAG 的应用。分享分为三个部分,第一就是背景介绍,回顾一下 RAG 技术出现了一年, RAG 到底叫什么,面临的挑战是什么?第二部分技术架构,在阿里云上如何去提供整体的 RAG 的解决方案,包括这个方案里有哪些能力辅助用户去搭建这个系统。第三部分是基于自研的引擎,包括开源组件,如何快速在阿里云上搭建整体的 RAG 的应用,服务整个的业务流程。

 

一、RAG背景&挑战

RAG 已经出来大概一年多。在这里它解决的问题是大模型本身带来的幻觉,包括知识有局限性,整个数据安全的问题,它的流程简单来说是三个部分,是构建索引,做整体的检索增强,最终用大模型生成最终的答案,以达到用大模型在企业内部包括企业to C、to B端应用的落地。


在构建 RAG 应用落地有一些问题,包括刚才所提到的效果的问题,效率的问题,成本的问题,拆解来看项目,可以分为功能性,功能性解决 RAG 如何去增强检索的效果,可以让检索的效果更加精准,通过构建开源组件或者是看到的框架去构建,经常会遇到例如检索出来的内容缺少,包括文档关键链路上的召回、未召回,文档切割导致上下文的文档缺少,这些都是在功能层面需要去解决的。


在非功能层面,是效率和成本这块的挑战,对于整体的大模型调用次数过多,导致整体调度链路推理时间太长,对话需要几秒甚至10秒的等待,用户层面是无法接受的。

 

二、RAG 技术架构

整体的解决方案的架构。解决方案是结合了阿里云大数据加 AI 的产品线去构建的逻辑的解决方案,整个RAG 系统结合了数据层面,结合了 AI 层面,结合了搜索层面的功能重建,所以它是多产品的组合。包括底层需要用到存储类的产品,存储相关检索需要用到的文档。在数据管理层面,需要经过数据处理后,生成结构化和非结构化的数据,如何去做原数据的管理,原数据数据的构建,也是需要用到我们像类似于 DIF 相关的一些能力。

在 RAG 系统里最重要最关键的一层是很多的不同的在各种各样的模型,包括了做向量化的模型,做切分的模型,做召回排序的模型,还有包括大模型的部分,提供了全维度的模型服务,除了这些还有很关键的检索的能力,阿里云上有很多不同的检索引擎,像ES等都提供相对的高性能的检索引擎来提供服务。我们如何去评测 RAG 的系统也有对应的方案去提供。


全链路的能力上来看,分为数据的接入,在线查询的部分,数据的接入部分主要就是如何去快速的把这个文档上传,如何去做这个数据的处理,把非循环数据结构化或者是拆分成工具化和结构化,如何去构建向量是稠密的向量还是稀疏的向量?


在线阶段时,提供了整个的大模型的调用解析理解分析,包括对于文档的检索,包括最终召回完的链路上如何去调用大模型,如何去构建提示工厂这些能力,最左边会提供整个的测评服务去测评整个系统如何能达到企业的应用效果

 

三、RAG 解决方案最佳实践

接下来是如何去基于阿里云的自研的引擎,包括开源的引擎去构建整个 RAG 的系统。基于 OPEM SEARCH 的自研引擎去构建RAG 的系统,在离线的链路中,通过整个的自研引擎是支持多种不同的文档类的上传和数据接入,包括当时会展示是通过拖拽式的, POC 方式拖拽几个文档,然后快速构建系统去看整体系统效果,支持 API 的方式,支持对接大数据引擎去接入整体的数据,接入了数据对内容进行抽取


自研引擎里是提供了多维度的数据抽取,包括数据理解的模型,包括类似于OCR的模型文档解析的模型,那对于文档本身的切片,提供了模型类的切片,也提供了规则类的切片,在整个的产品内部,向量化也可以用开源的、自研的接入资源的模型,也可以用本身引擎提供向量化模型。在整个的检索链路问答链路上,支持多人对话,可以去提高整体的这样链路的效果,也提供了多轮对话模式,也提供单对话模式,包括不同的的解析理解,传统的搜索链路如何去做几个检索,以结合现在大模型链路上去做检索。


在大模型本身链路上,在这个平台上提供了多个版本的模型,包括基于搜索链路优化过的模型,当然也满足客户对模型的定制化,在整体的链路上,支持用户自定义外部的大模型的调用链路,在大模型去做生成和检索。


看具体的步骤,第一步在整个的 OpenSearch的产品上做实例的开通,使用到OpenSearch的大语言模型版,开通实例后,第一步上传文档,是支持通过网页的拖拽式,比如说作 POC 场景的,直接就拖拽简单的文档上去尝试整个系统的效果,也支持大数据系统的对接网页的一些导入。数据接入后会去做数据的预处理,在这一步就会有很多模型的介入。会支持不同的模型,如何定义解析出来的数据结构,解析成结构化的数据存储到检索正财库或者倒排库,最终对整体检索,经过预处理的数据做整体的展示和检查,有源于传统数据的预处理阶段后,去调试整个 RAG 链路的工程,分了很多不同的模型,包括了大语言的模型,中间检索常用的向量模型,还有重排的模型的配置,对于预制的可以做不同的泄露的参数的调试,也提供了可视化的对话框的方式做不同版本模型的调试,包括自研的模型左上角有自定义的大模型,可以进入客户的大模型的服务,现在市面上通用的 OPI 的接口,OPI 格式和接口的模型服务,都是可以做整个的多轮调试。


调试完成后整个的 OPI 系统后,会做端到端的测评,基于不同的调试不同模型的组合,可以上传测评的文档,通过测评文档的打分,包括输出,可以得到 RAG 链路测评的评分。最终生成在线业务的 API 来接入自身得业务系统。


API 从产品维度在后台动态调度承接流量,最终服务B端或者C端的应用,整个的流程是基于自研引擎快速搭建 RAG 应用整体端到端的流程。除了自研的引擎,也支持很多开源的组件,现在已经开源了端到端的的系统,可以下载到对应的代码,通过代码部署到模型服务的引擎上,来提供端到端外的 RAG 的搭建,在这个过程中每一步里用到了所有的模型测,引擎都可以是开源组件,像引擎侧的检索 ES 自研开源的 havenask 开源的faiss ,都是可以支持的。


模型测可以支持开源的通易,类似于开的模型可以去构建相关的RAG的系统。整个的流程和自研的流程是类似的,就是从数据的上传到文档网解析,到模型构建索引,最终去检索整个的链路。


提供一开源代码一键式部署。除了说用到预制的镜像以外,如果用户自定义了开源的github上的代码,也可以通过镜像的方式一键的拉起系统,拉起系统后,可以去对接到自己任意的开源的检索引擎上,事例是检索引擎,也可以对接到阿里云的实例上,去构建自己的检索库同时在左侧界面可以去选择自己的模型,包括开模型,包括其他的设置。


在文档上传的部分,为了方便调试,提供网页端的文档上传的接口,可以让用户快速去上传相关的文档,也支持通过 API 的方式快速的把需要去测试,包括去检索的文档上传到整个的系统上,通过对接的开源引擎的检索库里,去实时的看到对应的文档。开源的引擎上,提供的可视化组件,去观察或者去查询构建的库和它对应的数据有了整个的库,后面就可以去基于自研或者是开源的大模型调试整个的 RAG 系统,为了方便在界面上提供 oppotion 可以让用户去调试,所有代码是开展到github的,对于用户来说可以在github上,在代码层面去做更精细力度的调试,去生成整个系统的对外的open API ,除了配置层面的调试,在整个开源的界面上,也对接了阿里云的云监控的系统,它可以对于整个 RAG 链路上每一步的性能,包括效果去做单步的调试。左边截图是对接云监控整个性能维度的调试,每一步花费的时间都可以在整个的监控上看,细腻度的去优化每节点性的问题。达到生产级别可用。右边截图对效果的调试每一步的调用、检索包括召回,到底生成的结果是什么?在哪一步出的错,在右边的图上面也有详细的展示,可以精细的去调整每一步的配置,得到更好的效果。


通过全链路调试后,最终可以提供对外在线的 API 的服务, 来支撑整个潮汐调用,通过整个底层计算资源的弹性,支持定时或者是基于业务的 QPS 的弹性能力,达到整个业务的成本最优的 RAG 的应用。

相关文章
|
搜索推荐
统一召回引擎的优势
统一召回引擎的优势
114 0
|
3天前
|
人工智能 关系型数据库 分布式数据库
PolarDB-PG AI最佳实践3 :PolarDB AI多模态相似性搜索最佳实践
本文介绍了如何利用PolarDB结合多模态大模型(如CLIP)实现数据库内的多模态数据分析和查询。通过POLAR_AI插件,可以直接在数据库中调用AI模型服务,无需移动数据或额外的工具,简化了多模态数据的处理流程。具体应用场景包括图像识别与分类、图像到文本检索和基于文本的图像检索。文章详细说明了技术实现、配置建议、实战步骤及多模态检索示例,展示了如何在PolarDB中创建模型、生成embedding并进行相似性检索
|
3天前
|
人工智能 运维 监控
阿里云Milvus产品发布:AI时代云原生专业向量检索引擎
随着大模型和生成式AI的兴起,非结构化数据市场迅速增长,预计2027年占比将达到86.8%。Milvus作为开源向量检索引擎,具备极速检索、云原生弹性及社区支持等优势,成为全球最受欢迎的向量数据库之一。阿里云推出的全托管Milvus产品,优化性能3-10倍,提供企业级功能如Serverless服务、分钟级开通、高可用性和成本降低30%,助力企业在电商、广告推荐、自动驾驶等场景下加速AI应用构建,显著提升业务价值和稳定性。
|
2月前
|
存储 运维 关系型数据库
开源新发布|PolarDB-X v2.4.1 增强企业级运维能力
PolarDB-X 是阿里云推出的云原生分布式数据库,自2021年10月开源以来,持续迭代升级,至2024年4月发布的v2.4.1版本,重点增强了企业级运维能力,如无锁变更、物理扩缩容、数据TTL等,提供金融级高可用、透明分布式、HTAP一体化等特性。PolarDB-X 支持集中式和分布式一体化形态,兼容MySQL生态,适用于金融、通信、政务等行业。
|
5月前
|
开发框架 自然语言处理 API
基于RAG搭建企业级知识库在线问答
本文介绍如何使用搜索开发工作台快速搭建基于RAG开发链路的知识库问答应用。
8371 17
|
6月前
|
存储 关系型数据库 MySQL
深度评测:PolarDB-X 开源分布式数据库的优势与实践
本文对阿里云开源分布式数据库 PolarDB-X 进行了详细评测。PolarDB-X 以其高性能、强可用性和出色的扩展能力在云原生数据库市场中脱颖而出。文章首先介绍了 PolarDB-X 的核心产品优势,包括金融级高可靠性、海量数据处理能力和高效的混合负载处理能力。随后,分析了其分布式架构设计,包括计算节点、存储节点、元数据服务和日志节点的功能分工。评测还涵盖了在 Windows 平台通过 WSL 环境部署 PolarDB-X 的过程,强调了环境准备和工具安装的关键步骤。使用体验方面,PolarDB-X 在处理分布式事务和实时分析时表现稳定,但在网络问题和性能瓶颈上仍需优化。最后,提出了改进建
7089 2
|
5月前
|
存储 缓存 API
【建议收藏】企业级 RAG 产品的搭建需要重点考虑哪些问题?
【建议收藏】企业级 RAG 产品的搭建需要重点考虑哪些问题?
176 0
|
6月前
|
自然语言处理 搜索推荐 关系型数据库
ErnieRAG:用ErnieBot打造企业级RAG应用
ErnieRAG:用ErnieBot打造企业级RAG应用
65 0
|
8月前
|
存储 人工智能 自然语言处理
通过阿里云 Milvus 与 PAI 搭建高效的检索增强生成(RAG)系统
阿里云Milvus现已无缝集成于阿里云PAI平台,一站式赋能用户构建高性能的检索增强生成(RAG)系统。您可以利用Milvus作为向量数据的实时存储与检索核心,高效结合PAI和LangChain技术栈,实现从理论到实践的快速转化,搭建起功能强大的RAG解决方案。
通过阿里云 Milvus 与 PAI 搭建高效的检索增强生成(RAG)系统
|
8月前
|
人工智能 NoSQL atlas
如何用MongoDB Atlas和大语言模型,高效构建企业级AI应用?
利用生成式 AI 强化应用程序为客户打造令人叹服、真正差异化的体验意味着将人工智能建立在事实的基础之上
1832 0