通过阿里云 Milvus 与 PAI 搭建高效的检索增强对话系统

背景介绍

阿里云向量检索服务Milvus版(简称阿里云Milvus)是一款云上全托管服务,确保了了与开源Milvus的100%兼容性,并支持无缝迁移。在开源版本的基础上增强了可扩展性,能提供大规模 AI 向量数据的相似性检索服务。相比于自建,目前阿里云Milvus具备易用性、可用性、安全性、低成本与生态优势。凭借其开箱即用的特性、灵活的扩展能力和全链路监控告警,阿里云Milvus 云服务成为多样化 AI 应用场景的理想选择,包括多模态搜索、检索增强生成(RAG)、搜索推荐、内容风险识别等。您还可以利用开源的 Attu 工具进行可视化操作,进一步促进应用的快速开发和部署。

阿里云Milvus现已无缝集成于阿里云PAI平台,一站式赋能用户构建高性能的RAG(Retrieval-Augmented Generation)对话系统。您可以利用Milvus作为向量数据的实时存储与检索核心,高效结合PAI和LangChain技术栈,实现从理论到实践的快速转化,搭建起功能强大的RAG解决方案。

前提条件

  • 已创建Milvus实例,并配置了公网访问。

进入阿里云Milvus页面(​​https://www.aliyun.com/product/milvus​​​),登录阿里云Milvus控制台(​​https://milvus.console.aliyun.com/#/overview​​)。并在左侧导航栏,单击Milvus实例,并继续创建实例

在目标实例的安全配置页面,单击开启公网。输入当前服务器的公网访问IP地址或符合CIDR定义的IP地址段。

  • 已开通PAI(EAS)并创建了默认工作空间。

登录​​PAI控制台​​​(​​https://pai.console.aliyun.com​​),在左上角选择需要开通的地域后,进行认证、授权并开通服务,待开通成功后,便可进入控制台进行AI开发。

使用限制

  • Milvus实例和PAI(EAS)须在相同地域下。

操作流程

步骤一:通过PAI部署RAG系统

1.进入模型在线服务页面。

        a.登录​​PAI控制台​​(​​https://pai.console.aliyun.com/​​)。

        b.在左侧导航栏单击工作空间列表,在工作空间列表页面中单击待操作的工作空间名称,进入对应工作空间内。

        c.在工作空间页面的左侧导航栏选择模型部署>模型在线服务(EAS),进入模型在线服务(EAS)页面。

2.在模型在线服务页面,单击部署服务

3.在部署服务页面,选择大模型RAG对话系统部署

4.在部署大模型RAG对话系统页面,配置以下关键参数,其余参数可使用默认配置,更多参数详情请参见​​大模型RAG对话系统​​​(​​https://help.aliyun.com/zh/pai/user-guide/deploy-a-rag-based-dialogue-system​​)。

5.单击部署

服务状态变为运行中时,表示服务部署成功。

步骤二:通过RAG WebUI上传知识库

1.配置RAG对话系统。

        a.在模型在线服务(EAS)页面,单击查看Web应用,进入WebUI页面。

        b.配置Embedding模型。

        在RAG服务WebUI界面的Settings选项卡中,系统已自动识别并应用了部署服务时配置的向量检索库设置。

  • Embedding Model Name:系统内置四种模型供您选择,将自动为您配置最合适的模型。
  • Embedding Dimension:选择Embedding Model Name后,系统会自动进行配置,无需手动操作。

2.测试向量检索库连接是否正常。

系统已自动识别并应用了部署服务时配置的向量检索库设置,并且该设置不支持修改。您可以单击Connect Milvus,来验证Milvus连接是否正常。

3.上传知识库。 在RAG服务WebUI界面的Upload选项卡中,可以上传知识库文档。

        a. 设置语义切块参数。

        通过配置以下参数来控制文档切块粒度的大小和进行QA信息提取:

参数

描述

Chunk Size

指定每个分块的大小,单位为字节,默认为500。

Chunk Overlap

表示相邻分块之间的重叠量,默认为10。

Process with QA Extraction Model

通过选中Yes复选框启动QA信息提取功能,系统将在您上传业务数据文件后自动抽取出QA对,以获得更好的检索和回答效果。

        b. 在Files页签下上传业务数据文件(支持多文件上传)。

        本文以唐诗三百首的​​poems.txt​​​(​​https://help-static-aliyun-doc.aliyuncs.com​​)文档作为示例数据,您可以直接使用。

        c. 单击Upload,系统会先对上传的文件进行数据清洗(文本提取、超链接替换等)和语义切块,然后进行上传。

步骤三:通过RAG WebUI对话

在RAG服务WebUI界面的Chat选项卡中,提供了多种不同的Prompt策略,您可以选择合适的预定义Prompt模板或输入自定义的Prompt模板以获得更好的推理效果。

1.配置LLM问答策略

        a.在RAG服务WebUI界面的Chat选项卡中,选择LLM。

        b.直接与LLM对话,返回大模型的回答。

2.配置Retrieval问答策略

3.配置RAG(Retrieval + LLM)问答策略

选择RAG (Retrieval + LLM),然后进行向量检索等一系列实验。

步骤四:查看知识库切块

Attu是一款专为Milvus打造的开源数据库管理工具,提供了便捷的图形化界面, 极大的简化了对Milvus的操作与管理流程。下面,我们将使用Milvus的Attu工具,查看 向量检索服务的存储内容。

1.进入安全配置页面。

        a.登录​​阿里云Milvus控制台​​(​​https://milvus.console.aliyun.com/​​)。

        b.在左侧导航栏,单击Milvus实例

        c.在顶部菜单栏处,根据实际情况选择地域。

        d.在Milvus实例页面,单击目标实例名称。

        e.单击安全配置页签。

2.配置公网访问。

        a.在安全配置页签,单击开启公网

        b.输入当前服务器的公网访问IP地址或符合CIDR定义的IP地址段。

        多个IP条目以半角逗号(,)隔开,不可重复。您可以通过访问​​https://www.cip.cc/​​,获取当前服务器的公网访问IP地址。

        c.单击确定

3.访问Attu页面。

        a.单击页面上方的Attu manager

         b.在弹出的对话框中输入所要访问的数据库、用户名和密码,单击连接,即可打开Attu管理页面。

        实例创建完成后,系统会自动创建一个名为default的默认数据库,并为您创建一个名为root的用户,该用户的密码由您在创建实例时自行设置。

4.在Attu页面,您可以看到RAG服务自动创建的Collection。

相关信息

  • 更多关于Milvus的介绍,请参见​​什么是向量检索服务Milvus版​​​(​​https://help.aliyun.com/zh/milvus/product-overview/what-is-the-vector-retrieval-milvus-version​​)。
  • Milvus最新动态:
  • 预付费包年折扣:1年85折、2年7折、3年5折;
  • 产品动态:

如有疑问,可加入向量检索 Milvus 版用户交流钉群 59530004993咨询。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/63539.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【批量生成WORD和PDF文件】根据表格内容和模板文件批量创建word文件,一次性生成多个word文档和批量创建PDF文件

如何按照Word模板和表格的数据快速制作5000个word文档 ? 在与客户的合作的中需要创建大量的合同,这些合同的模板大概都是一致的,是不是每次我们都需要填充不一样的数据来完成? 今天用表格数据完成合同模板的填充,批量…

pip使用方法

1. 安装包: pip install :安装指定的 Python 包。 pip install :安装特定版本的 Python 包。 pip install -r requirements.txt:从文件中读取依赖列表并安装所有列出的包。 pip install --pre :允许安装预发布或开发版…

Windows11 安装 Ubuntu-20.04,同时安装配置 zsh shell,配置 git 别名(alias),大大提高开发效率

背景:家里配置了一台 Windows 电脑,有时候需要用到 vscode 开发测试一些代码,在使用过程中发现原生 windows 敲代码不是很友好,于是想到配置 wsl,安装 Ubuntu,并安装配置 zsh shell,同时配置 gi…

什么是渐进式 Web 应用,有哪些特点

渐进式 Web 应用 (Progressive Web Apps, PWAs) 的定义与特点 一、定义 渐进式 Web 应用(Progressive Web App,简称 PWA)是一种结合了传统 Web 技术和现代移动应用特性的新型应用程序形式。PWAs 可以像普通网站一样通过浏览器访问&#xff…

鸿蒙心路旅程:HarmonyOS NEXT 心路旅程:技术、成长与未来

HarmonyOS NEXT 心路旅程:技术、成长与未来 技术的浪潮中,总有一些瞬间让人感到心潮澎湃。作为一名HarmonyOS NEXT开发者,我有幸成为这个时代科技创新的一部分。从最初的接触到深入学习、开发,以及如今规划未来的职业方向&#x…

勤研低代码平台:重塑软件开发协作新生态

在当今数字化浪潮汹涌澎湃的时代,软件开发的效率与质量成为企业竞争的关键因素之一。勤研低代码开发平台以创新性的实际页面 - 功能设计 - 页面设计 - 原型页面切换功能,脱颖而出,为软件开发过程中的团队协作、客户沟通以及项目推进带来了前所…

ChatGPT等大语言模型与水文水资源、水环境领域的深度融合

聚焦GPT等大语言模型与水文水资源领域的深度融合,通过系统化内容与实践案例,讲解如何高效完成时间序列分析、空间数据处理、水文模型优化以及智能科学写作等任务。同时,展示AI在高级机器学习模型开发、资源优化算法编程与模型微调中的最新应用…

node安装,npm安装,vue-cli安装以及element-ui配置项目

node.js Node.js主要用于开发高性能、高并发的网络服务器,特别适合构建HTTP服务器、实时交互应用(如聊天室)和RESTful API服务器等。‌它使用JavaScript语言,基于Chrome V8引擎,提供模块化开发和丰富的npm生态系统&…

easyplayer-pro播放器学习

背调 查询官方文档,EasyPlayer-pro支持ws-flv, http-flv, hls, webrtc(webrtc://xxx)格式,电子放大、水印(动态水印、幽灵水印)、显示上一个视频最后一帧、播放器快照截图、视频录制(WebM格式(音频视频)、MP4格式(视频),FLV格式(…

5G 模组 初始化状态检测

5G 模组 上电检测 5G 模组 上电检测 #终端上电后,待模组正常启动,再进入 控制台。 #vim /etc/profile##新增 until [ -c /dev/ttyUSB1 ] doecho -e "Wait module[5G] up ... "sleep 5 done ##新增The End.

WPF+MVVM案例实战与特效(四十三)- 打造动态炫酷彩虹字控件,让你的界面动起来

文章目录 1、引言1、案例效果2、案例实现1、XAML 布局2、逻辑代码3、动画效果4、控件使用5、运行效果3、案例源代码4、总结1、引言 上一节,我们实现了炫酷的彩虹字控件,现在我们想让彩虹字更加生动吸引人,让每个字体跳动起来,让字体活过来。这里我们通过动画实现,我们把这…

线程知识总结(一)

1、概述 1.1 进程与线程 进程是程序运行时,操作系统进行资源分配的最小单位,包括 CPU、内存空间、磁盘 IO 等。从另一个角度讲,进程是程序在设备(计算机、手机等)上的一次执行活动,或者说是正在运行中的程…

深入QML语法

文章目录 深入了解 QML 文档的结构和语法什么是 QML 文档?导入语句导入语句的格式示例 对象声明基本语法示例更复杂的对象声明 QML 对象类型详解1. Rectangle(矩形)2. Gradient(渐变)3. Text(文本&#xff…

【Python】使用Selenium 操作浏览器 自动化测试 记录

【自动化】Python SeleniumUtil 工具 开启开发者模式 自动安装油猴用户脚本等-CSDN博客文章浏览阅读389次。【自动化】Python SeleniumUtil 工具。https://blog.csdn.net/G971005287W/article/details/144565691?spm1001.2014.3001.5501【学习记录】浏览器指纹相关学习记录&am…

Linux应用软件编程-文件操作(标准io)

在Linux下一切皆文件,比如:.txt,.c,.h,.jpg,目录,键盘,鼠标,显示器、硬盘等等都是文件,即IO。文件操作的统一思想:打开文件,读、写文件…

【Rust自学】4.4. 引用与借用

4.4.0 写在正文之前 这一节的内容其实就相当于C的智能指针移动语义在编译器层面做了一些约束。Rust中引用的写法通过编译器的约束写成了C中最理想、最规范的指针写法。所以学过C的人对这一章肯定会非常熟悉。 喜欢的话别忘了点赞、收藏加关注哦(加关注即可阅读全文…

深入解析 StarRocks 物化视图:全方位的查询改写机制

小编导读: 本文将重点介绍如何利用物化视图进行查询改写。文章将全面介绍物化视图的基本原理、关键特性、应用案例、使用场景、代码细节以及主流大数据产品的物化视图改写能力对比。 物化视图在 StarRocks 中扮演着至关重要的角色,它是进行数据建模和加速…

2. petalinux-build失败

NOTE 解决因为网络原因产生的编译错误分享详细的解决步骤 报错的情况 因为网络原因产生编译错误 现象 找不到适合的包文件(No suitable stageing package found) 不能发现文件(Fetcher failure for URL) 解决方法 采用本地加载本地文件的方式,步骤如下 进入…

sql server msdb数据库备份恢复

备份 BACKUP DATABASE [msdb] TO DISK ND:\liyuanshuai\test\sqlserver_bakfile\msdb20241219.bak WITH NOFORMAT, NOINIT, NAME Nlys-完整 数据库 备份, SKIP, NOREWIND, NOUNLOAD, COMPRESSION, STATS 10 GO然后删除2个测试的job,停止 SQL Server 代理…

web实验二

web实验二 2024.12.19 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>青岛理工大学</title>&l…