基于EAS&Milvus搭建RAG检索增强对话系统

为解决大语言模型(LLM)回答可能不准确或知识过时的问题,可通过检索增强生成(RAG)技术,让模型基于私有数据生成回答。本文介绍如何使用PAI-EAS阿里云向量检索服务Milvus,快速搭建一套完整的RAG对话系统,并使用该系统进行智能问答。

注意事项

本实践受制于LLM服务的服务器资源大小以及默认Token数量限制,能支持的对话长度有限,旨在帮助您体验RAG对话系统的基本检索功能。

一、(可选)创建阿里云Milvus实例

登录阿里云Milvus控制台,在阿里云Milvus实例列表页面中创建Milvus实例,详情请参见快速创建Milvus实例

说明

建议创建与EAS服务同地域的Milvus实例,以便通过内网地址访问。

二、部署RAG服务并关联Milvus

  1. 登录PAI控制台,在页面上方选择目标地域,并在右侧选择目标工作空间,然后单击进入EAS

  2. 模型在线服务(EAS)页面,单击部署服务,然后在场景化模型部署区域,单击大模型RAG对话系统部署

  3. 在部署页面,配置以下关键参数。其他参数可保持默认。其他参数配置说明,详情请参见部署RAG服务

    • 基本信息

      • 版本选择:选择LLM一体化部署

      • RAG版本:选择pai-rag:0.3.4

      • 模型类别:选择qwen1.5-1.8b

    • 资源信息:系统会根据所选模型自动推荐资源规格。为避免服务启动失败,建议您使用推荐的规格。

    • 向量检索库设置

      重要

      向量检索库的配置在服务部署后无法通过更新服务修改,如需修改,请在Web应用界面的知识库 > 知识库设置中操作。

      • 版本类型:选择Milvus

      • 访问地址代理端口:登录阿里云Milvus控制台,单击目标实例名称进入实例详情页签,在访问地址区域,获取内网地址Proxy Port

      • 账号:默认为root

      • 密码:创建Milvus实例时设置的用户密码,如忘记,可重置实例密码

      • 数据库名称:本方案使用默认数据库default

        说明

        也可以手动创建新的数据库,具体操作,请参见管理Databases

      • Collection名称:系统会根据输入执行不同操作。

        • 创建新 Collection:输入一个新名称,EAS 将在部署时会自动创建符合 PAI-RAG 要求的 Collection。

        • 使用现有 Collection:输入已存在的Collection名称,EAS 将直接使用该 Collection。请确保该CollectionPAI-RAG服务创建,以保证结构兼容。

      • OSS地址:选择已创建的OSS存储目录,用于存放和管理知识库文件。

    • 专有网络:务必选择与Milvus实例相同的专有网络,以确保网络互通。

  4. 确认参数配置无误后,单击部署。当服务状态变为运行中(约需3分钟)即表示部署成功。

三、使用RAG对话系统

部署成功后,单击目标RAG服务名称进入详情页,单击右上角的查看Web应用即可访问RAG系统的WebUI。更多用法,请参见大模型RAG对话系统

3.1 配置大语言模型

LLM一体化部署过程中,若采用vLLM进行模型服务的部署,系统自动填充的模型名称可能不准确,需要手动校准,以确保对话功能正常工作。

  1. 查找正确的模型名称:在服务详情页的服务配置页签,找到运行命令中的 --served-model-name 参数,其后的值(例如:Qwen1.5-1.8B)即为正确的模型名称。

    image

  2. 更新配置:进入Web界面,在系统设置页签的模型及存储配置页面将模型名称字段更新为上一步找到的正确名称,然后单击保存模型配置image

3.2 上传企业知识库文件

进入WebUI后,在知识库页签的文件管理Tab页上传知识库文件(例如rag_chatbot_test_doc.txt)。上传知识库文件的具体操作方法,请参见RAG知识库管理

重要

请务必将文件上传到docs目录下,系统才会处理。

image

3.3 进行知识问答

对话页签,选择知识库名称、使用意图(使用更多工具选择查询知识库)进行知识问答。

image

附录:通过Attu管理Milvus

AttuMilvus的图形化管理工具,可以查看和管理向量数据。

  1. 登录阿里云Milvus控制台,在实例列表页面中,单击目标实例名称。

  2. 安全配置页签,单击开启公网,为Milvus实例开启公网访问。具体操作,请参见网络访问与安全设置

    配置完成后,实例状态变为升级中,大约持续1分钟。

  3. 开启成功后,返回实例详情页面,单击Attu manager

  4. 在弹出的登录框中,输入用户名和密码,即可进入Attu管理界面。

  5. 登录成功后,可在Attu页面管理Collection。

更多使用说明,参见Attu工具管理