背景介绍
阿里云向量检索 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系统
- 进入模型在线服务页面。
- 登录PAI控制台(https://pai.console.aliyun.com/)。
- 在左侧导航栏单击工作空间列表,在工作空间列表页面中单击待操作的工作空间名称,进入对应工作空间内。
- 在工作空间页面的左侧导航栏选择模型部署>模型在线服务(EAS),进入模型在线服务(EAS)页面。
- 在模型在线服务页面,单击部署服务。
- 在部署服务页面,选择大模型RAG对话系统部署。
- 在部署大模型RAG对话系统页面,配置以下关键参数,其余参数可使用默认配置,更多参数详情请参见大模型RAG对话系统(https://help.aliyun.com/zh/pai/user-guide/deploy-a-rag-based-dialogue-system)。
参数 |
描述 |
|
基本信息 |
服务名称 |
您可以自定义。 |
模型来源 |
使用默认的开源公共模型。 |
|
模型类别 |
本示例以Qwen1.5-1.8b为例。 |
|
资源配置 |
实例数 |
使用默认的1。 |
资源配置选择 |
按需选择GPU资源配置。例如,ml.gu7i.c16m30.1-gu30。 |
|
向量检索库设置 |
版本类型 |
选择Milvus。 |
访问地址 |
Milvus实例的内网地址。您可以在Milvus实例的实例详情页面查看。 |
|
代理端口 |
Milvus实例的Proxy Port。您可以在Milvus实例的实例详情页面查看。 |
|
账号 |
配置为root。 |
|
密码 |
配置为创建Milvus实例时,您自定义的root用户的密码。 |
|
数据库名称 |
配置为数据库名称,例如default。创建Milvus实例时,系统会默认创建数据库default,您也可以手动创建新的数据库,具体操作,请参见管理Databases(https://help.aliyun.com/zh/milvus/user-guide/manage-databases)。 |
|
Collection名称 |
输入新的Collection名称或已存在的Collection名称。对于已存在的Collection,Collection结构应符合PAI-RAG要求,例如您可以填写之前通过EAS部署RAG服务时自动创建的Collection。 |
|
专有网络配置 |
VPC |
创建Milvus实例选择时的VPC、交换机和安全组。您可以在Milvus实例的实例详情页面查看。 |
交换机 |
||
安全组名称 |
- 单击部署。
当服务状态变为运行中时,表示服务部署成功。
步骤二:通过RAG WebUI上传知识库
- 配置RAG对话系统。
- 在模型在线服务(EAS)页面,单击查看Web应用,进入WebUI页面。
- 配置Embedding模型。
在RAG服务WebUI界面的Settings选项卡中,系统已自动识别并应用了部署服务时配置的向量检索库设置。
- Embedding Model Name:系统内置四种模型供您选择,将自动为您配置最合适的模型。
- Embedding Dimension:选择Embedding Model Name后,系统会自动进行配置,无需手动操作。
c. 测试向量检索库连接是否正常。
系统已自动识别并应用了部署服务时配置的向量检索库设置,并且该设置不支持修改。您可以单击Connect Milvus,来验证Milvus连接是否正常。
- 上传知识库。 在RAG服务WebUI界面的Upload选项卡中,可以上传知识库文档。
- 设置语义切块参数。
通过配置以下参数来控制文档切块粒度的大小和进行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模板以获得更好的推理效果。
- 配置LLM问答策略
- 在RAG服务WebUI界面的Chat选项卡中,选择LLM。
- 直接与LLM对话,返回大模型的回答。
- 配置Retrieval问答策略
- 配置RAG(Retrieval + LLM)问答策略
选择RAG (Retrieval + LLM),然后进行向量检索等一系列实验。
步骤四:查看知识库切块
Attu是一款专为Milvus向量数据库打造的开源数据库管理工具,提供了便捷的图形化界面,极大地简化了对Milvus数据库的操作与管理流程。下面,我们将使用Milvus的Attu工具,查看向量数据库的存储内容。
- 进入安全配置页面。
- 登录阿里云Milvus控制台(https://milvus.console.aliyun.com/)。
- 在左侧导航栏,单击Milvus实例。
- 在顶部菜单栏处,根据实际情况选择地域。
- 在Milvus实例页面,单击目标实例名称。
- 单击安全配置页签。
- 配置公网访问。
- 在安全配置页签,单击开启公网。
b. 输入当前服务器的公网访问IP地址或符合CIDR定义的IP地址段。
多个IP条目以半角逗号(,)隔开,不可重复。您可以通过访问https://www.cip.cc/,获取当前服务器的公网访问IP地址。
c. 单击确定。
- 访问Attu页面。
a. 单击页面上方的Attu manager。
b. 在弹出的对话框中输入所要访问的数据库、用户名和密码,单击连接,即可打开Attu管理页面。
实例创建完成后,系统会自动创建一个名为default的默认数据库,并为您创建一个名为root的用户,该用户的密码由您在创建实例时自行设置。
- 在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咨询。