文档智能&RAG,让你的AI大模型开启“外挂”之旅
手动部署
60
https://www.aliyun.com/solution/tech-solution/document-mind-rag-for-llm
方案概览
大语言模型(LLM)作为自然语言处理的核心技术能力,能在文档中为知识问答、内容生成、大数据清洗、办公流程自动化等场景挖掘出更多的价值,极大降低了普通人对于专业词汇多、结构复杂、图文混合的文档内容阅读门槛。但文档的处理十分具有挑战性,特别是在PDF格式下,多种合同、试卷、论文、财报、简历、报告场景中,对于输入给大模型所需要的就不仅仅是文本内容,同时包括表格内容、公式文本、图片内容处理,以及无关内容的过滤。
对于不同格式的文档输入,如何实现将文档智能和检索增强生成(RAG)结合起来构建强大的LLM知识库,关键是如何清洗文档内容、文档内容向量化、问答内容召回后通过特定的Prompt,提供给LLM足够的上下文信息,以此来满足对企业级文档类型知识库的问答处理。
接下来我们将基于文档智能的文档解析处理,结合百炼平台构建单文档问答应用。
方案架构
本方案主要分为3个阶段:
文档解析:通过调用文档智能提供的文档解析(大模型版),将文件处理为Json对象,包含多个版面块单元。
构建知识库:文档内容切片向量化存储,将多个版面块过滤非正文内容,切分成多个切块,进行向量化服务,存入知识库中。
创建问答服务:当接收到一个提问时,服务首先将问题转换为内容向量,然后在知识库中进行召回,找到相关信息。接着,结合召回的内容和问题,通过语言模型进行智能问答,提供准确的回答。
方案架构如下图所示:
本方案的技术架构包括以下云服务:
百炼:一站式的企业专属大模型生产平台。在本方案中,提供通义千问LLM模型的调用以及知识索引功能。
文档智能:多模态文档识别与理解引擎,为用户提供通用文档智能、行业文档智能和文档自学习能力,可满足各种场景下的智能文档处理需求。
1个专有网络 VPC:将云服务器 ECS部署在专有网络中。
1台交换机:将云服务器 ECS实例部署在交换机中。
1台云服务器 ECS:用于部署应用程序。
部署准备
10
准备账号
如果您还没有阿里云账号,请访问阿里云账号注册页面,根据页面提示完成注册。阿里云账号是您使用云资源的付费实体,因此是部署方案的必要前提。
本方案的云服务(包括文档智能和百炼)支持按量付费,且默认设置均采用按量付费引导操作。使用按量付费资源需要确保账户余额不少于100元。
完成本方案的部署及体验,预计产生费用不超过 5 元(假设您选择本文示例规格资源,且资源运行时间不超过 60 分钟。实际情况中可能会因您操作过程中实际使用的流量差异而导致费用有所变化,请以控制台显示的实际报价以及最终账单为准,如下表格仅供参考)。
序号
产品
规格
地域
说明
1
ECS云服务器
ECS的实例规格及内核、vCPU数量。关于ECS选型的最佳实践请参见实例规格选型指导。
本教程使用
ecs.e-c1m2.large
规格作为示例。
华东1(杭州)
以1小时内流入和流出的数量总和未超过1GB为例。注意:1、方案中建议配置可稳定运行,实际可适当降低配置,最低配置不低于1vCPU 2GiB,如出现CPU和内存负载过高情况,再适当升配。相关计费说明请参考:ECS计费概述。
2
百炼模型服务
-
-
相关计费说明请参考:阿里云百炼计费概述。
部署资源
20
请按照以下步骤部署方案中的所有资源。
1. 创建专有网络VPC和交换机
您需要创建专有网络VPC和交换机,为云服务器ECS实例构建云上的私有网络。
登录专有网络管理控制台。
在顶部菜单栏,选择华东1(杭州)地域。
在左侧导航栏,单击专有网络。
在专有网络页面,单击创建专有网络。
在创建专有网络页面,配置1个专有网络和1台交换机。配置交换机时,请确保交换机所属的可用区的ECS是可用状态。
项目
说明
示例值
VPC名称
建议您在部署过程中新建一个VPC作为本方案的专有网络。部署过程中填写VPC名称即可创建对应名称的VPC。
长度为2~128个字符,以英文大小写字母或中文开头,可包含数字、下划线(_)和连字符(-)。
VPC_HZ
IPv4网段
在创建VPC时,您必须按照无类域间路由块(CIDR block)的格式为您的专有网络划分私网网段。阿里云VPC支持的网段信息请参见专有网络组成部分。
在网络规划时可以按照管理网段-开发网段-测试网段-生产网段等规则做好规划。网段一旦投入使用,调整过程复杂,因此规划十分重要。
192.168.0.0/16
交换机名称
建议您在部署过程中在新建的VPC内创建虚拟交换机。部署过程中填写交换机名称即可创建对应名称的虚拟交换机。
长度为2~128个字符,以英文大小字母或中文开头,可包含数字、下划线(_)和连字符(-)。
vsw_RAG
可用区
建议选择排序靠后的,一般此类可用区较新。新可用区资源更充沛,新规格也会在新的可用区优先上线。
杭州 可用区J
2. 创建安全组
您已经创建了专有网络VPC和交换机。接下来您需要创建1个安全组,用于限制该专有网络VPC下交换机的网络流入和流出。
在左侧导航栏,选择网络与安全>安全组。
在顶部菜单栏,选择华东1(杭州)地域。
在安全组页面,单击创建安全组。
在创建安全组页面,创建1个安全组。
项目
说明
示例值
名称
设置安全组的名称。
sg_RAG
网络
选择之前规划的专有网络VPC。
VPC_HZ
安全组类型
本方案用于为个人用户或组织的基础场景提供网络访问控制,建议您选择普通安全组。
普通安全组
在访问规则-入方向中,单击手动添加。端口范围填入8000,授权对象选择“所有IPv4(0.0.0.0/0)”,最后单击创建安全组。
3. 创建云服务器 ECS
您已经创建好专有网络VPC和交换机等资源。接下来您需要创建1个云服务器ECS实例,用于部署文档智能。
在左侧导航栏,选择实例与镜像 > 实例。
在顶部菜单栏,选择华东1(杭州)地域。
在实例页面,单击创建实例。
下表中未说明的参数,在本方案中可使用默认值。
项目
说明
示例值
付费类型
付费类型影响实例的计费和收费规则。ECS计费的详细信息请参见计费方式概述。
按量付费
地域
实例所在地域
华东1(杭州)
网络及可用区
选择刚刚创建的专有网络VPC和交换机。
VPC_HZ、vsw_RAG
实例
ECS的实例规格及内核、vCPU数量。关于ECS选型的最佳实践请参见实例规格选型指导。
ecs.e-c1m2.large
镜像
ECS的“装机盘”,为ECS实例提供操作系统、预装软件等。
在公共镜像中选择Alibaba Cloud Linux
镜像版本
镜像的版本。
Alibaba Cloud Linux 3.2104 LTS 64位
系统盘类型
硬盘类型。
ESSD Entry
系统盘容量
硬盘容量。
40 GiB
公网IP
用于访问外网和提供企业门户网站服务。
选中分配公网 IPv4 地址
带宽计费方式
由于本方案为解决方案示例,因此选择按使用流量,以节省流量成本。
按使用流量(CDT)
带宽值
本方案以5 Mbps为例。
5 Mbps
安全组
使用之前创建的安全组。选择已有安全组。
sg_RAG
管理设置
选择设置自定义密码,方便后续登录机器安装服务环境。
自定义密码
4. 获取百炼API KEY和业务空间ID
登录阿里云账号,访问百炼控制台。
点击右上角用户图标,点击下拉菜单进入API-KEY管理页面。
点击操作栏中的查看。如果是首次使用百炼平台,则点击右上角创建我的API-KEY。
复制API KEY和对应的业务空间ID。(复制完毕后,请仔细核对内容准确,确保没有多余的符号,例如多余的空格)
应用部署
10
部署示例应用
开通了云资源后,接下来您需要执行以下操作部署示例应用:
在云服务器ECS控制台,点击ECS实例的远程连接。
配置环境变量
cat << EOF >> ~/.bash_profile
export UPLOAD_FOLDER=<文件上传路径名,例如:uploads>
export DASHSCOPE_API_KEY=<百炼平台的API密钥,用于访问百炼平台服务>
export DASHSCOPE_WORKSPACE_ID=<百炼平台业务空间ID>
EOF
source ~/.bash_profile
安装并启动服务
curl -fsSL https://help-static-aliyun-doc.aliyuncs.com/install-script/docmind-rag/install.sh|bash
返回如下信息,说明安装完毕。
Installation completed.
应用体验
5
使用文档智能(Document Mind)提供的文档解析(大模型版)解析本地文档。并将解析结果接入百炼平台创建知识库。基于该知识库的内容,实现增强检索生成(RAG)的问答应用。这一应用开发是基于LlamaIndex社区框架,并使用百炼平台提供的相关组件能力实现的。
在浏览器中输入:http://<ECS实例公网IP>:8000访问应用首页。
文档上传:用户可以选择本地文档并设置知识库名称。点击上传后,系统将解析文档并构建相应的知识库,最终返回文档信息、文档摘要和文档结构。例如,您可以使用我们提供的“百炼”手机详细参数.docx文档进行尝试。
问答服务:点击页面上方问答服务,切换到问答服务界面,然后输入知识库名称并输入针对该知识库的提问,即可获得精准的回答。
总结:通过该方案,企业用户可以高效地处理各类复杂文档,构建强大的知识库,并通过增强检索生成(RAG)技术实现智能问答服务,显著提升文档处理和信息获取的效率。
为了方便用户快速体验效果,当前应用为演示版本,体验完毕请及时释放资源。若想用于生产环境,建议下载源码,可以进行二次开发,同时打开登录鉴权功能。
移动端体验应用(可选)
10
我们已经成功实现了文档解析与知识库的构建,并基于LlamaIndex框架开发部署了RAG应用。在此基础上,可以创建一个百炼RAG应用,并集成至钉钉或微信公众号中,以实现移动设备上的AI助手功能,提供更加便捷、高效的智能服务体验。
完成及清理
5
清理资源
在本方案中,您创建了1台云服务器ECS实例、1个百炼知识库、1个交换机、1个专有网络VPC、1个安全组。测试完方案后,您可以参考以下规则处理对应产品的实例,避免继续产生费用:
释放1台云服务器ECS实例:
登录ECS控制台,在实例页面,找到目标实例,然后在操作列选择
>释放,根据界面提示释放实例。
释放1台交换机:
登录专有网络控制台,在交换机页面,找到目标交换机,然后在操作列单击删除,按照界面提示释放实例。
删除1个安全组:登录云服务器管理控制台,在安全组页面,选择目标安全组,然后在操作列单击删除。
释放1个专有网络VPC:
登录专有网络控制台,在专有网络页面,找到目标VPC,然后在操作列单击删除,按照界面提示释放实例。
删除百炼 API-KEY:
在API-KEY管理页面,找到目标API-KEY,单击右侧操作列下的删除,根据页面提示进行删除。
删除百炼应用和数据:
删除钉钉应用:
登录钉钉开放平台,点击导航栏中的应用开发。
在左侧导航栏点击钉钉应用,找到目标应用,点击应用名称进入应用详情。
点击左侧导航栏中的凭证与基础信息,先点击停用按钮,然后点击删除应用按钮。
删除钉钉连接流:登录AppFlow控制台,找到目标连接流,然后在其右侧操作列,单击删除。
删除微信连接流:登录AppFlow控制台,找到目标连接流,然后在其右侧操作列,单击删除。
一键部署
40
https://www.aliyun.com/solution/tech-solution/document-mind-rag-for-llm
方案概览
大语言模型(LLM)作为自然语言处理的核心技术能力,能在文档中为知识问答、内容生成、大数据清洗、办公流程自动化等场景挖掘出更多的价值,极大降低了普通人对于专业词汇多、结构复杂、图文混合的文档内容阅读门槛。但文档的处理十分具有挑战性,特别是在PDF格式下,多种合同、试卷、论文、财报、简历、报告场景中,对于输入给大模型所需要的就不仅仅是文本内容,同时包括表格内容、公式文本、图片内容处理,以及无关内容的过滤。
对于不同格式的文档输入,如何实现将文档智能和检索增强生成(RAG)结合起来构建强大的LLM知识库,关键是如何清洗文档内容、文档内容向量化、问答内容召回后通过特定的Prompt,提供给LLM足够的上下文信息,以此来满足对企业级文档类型知识库的问答处理。
接下来我们将基于文档智能的文档解析处理,结合百炼平台构建单文档问答应用。
方案架构
本方案主要分为3个阶段:
文档解析:通过调用文档智能提供的文档解析(大模型版),将文件处理为Json对象,包含多个版面块单元。
构建知识库:文档内容切片向量化存储,将多个版面块过滤非正文内容,切分成多个切块,进行向量化服务,存入知识库中。
创建问答服务:当接收到一个提问时,服务首先将问题转换为内容向量,然后在知识库中进行召回,找到相关信息。接着,结合召回的内容和问题,通过语言模型进行智能问答,提供准确的回答。
方案架构如下图所示:
本方案的技术架构包括以下云服务:
百炼:一站式的企业专属大模型生产平台。在本方案中,提供通义千问LLM模型的调用以及知识索引功能。
文档智能:多模态文档识别与理解引擎,为用户提供通用文档智能、行业文档智能和文档自学习能力,可满足各种场景下的智能文档处理需求。
1个专有网络 VPC:将云服务器 ECS部署在专有网络中。
1台交换机:将云服务器 ECS实例部署在交换机中。
1台云服务器 ECS:用于部署应用程序。
部署准备
10
准备账号
如果您还没有阿里云账号,请访问阿里云账号注册页面,根据页面提示完成注册。阿里云账号是您使用云资源的付费实体,因此是部署方案的必要前提。
本方案的云服务(包括文档智能和百炼)支持按量付费,且默认设置均采用按量付费引导操作。使用按量付费资源需要确保账户余额不少于100元。
完成本方案的部署及体验,预计产生费用不超过 5 元(假设您选择本文示例规格资源,且资源运行时间不超过 60 分钟。实际情况中可能会因您操作过程中实际使用的流量差异而导致费用有所变化,请以控制台显示的实际报价以及最终账单为准,如下表格仅供参考)。
序号
产品
规格
地域
说明
1
ECS云服务器
ECS的实例规格及内核、vCPU数量。关于ECS选型的最佳实践请参见实例规格选型指导。
本教程使用
ecs.e-c1m2.large
规格作为示例。
华东1(杭州)
以1小时内流入和流出的数量总和未超过1GB为例。注意:1、方案中建议配置可稳定运行,实际可适当降低配置,最低配置不低于1vCPU 2GiB,如出现CPU和内存负载过高情况,再适当升配。相关计费说明请参考:ECS计费概述。
2
百炼模型服务
-
-
相关计费说明请参考:阿里云百炼计费概述。
学生权益:
领取300元高校专属权益优惠券(若已领取请跳过)
当前领取的优惠券适用于多种ECS按量付费实例规格,包括但不限于ecs.e-c1m1.large、ecs.u1-c1m2.large以及ecs.e-c1m2.large。在进行一键部署并创建资源时,当您在ECS实例配置 > 实例规格的搜索框输入上述任一实例规格并选中,即可使用学生权益来完成资源的开通。
开通百炼服务并创建API-KEY
登录百炼控制台,点击开通服务按钮, 勾选同意协议,点击确认开通。
点击右上角用户图标,点击下拉菜单进入API-KEY管理页面,点击创建我的API-KEY。
一键部署
10
一键部署基于阿里云资源编排服务ROS(Resource Orchestration Service)实现,ROS模板已定义好脚本,可自动化地完成云资源的创建和配置,提高资源的创建和部署效率。
操作步骤
您可以通过下方提供的ROS一键部署链接,来自动化地完成这些资源的创建和配置:
创建1台云服务器ECS实例,并在服务器上部署Python环境和应用程序的示例代码。
创建1个专有网络VPC。
创建1台交换机。
创建1个安全组。
一键部署资源。
单击一键部署。
在配置页面修改资源栈名称,按需选择ECS的实例配置,设置实例密码、模型应用系统的用户密码,输入百炼API-KEY和空间ID。
说明打开百炼API KEY管理页面,点击操作栏中的查看。如果是首次使用百炼平台,则点击右上角创建我的API-KEY。
复制API KEY和对应的业务空间ID。(复制完毕后,请仔细核对内容准确,确保没有多余的符号,例如多余的空格)
ECS 实例配置推荐搜索规格:ecs.e-c1m2.large、ecs.e-c1m1.large和ecs.u1-c1m2.large,如果所选可用区没有满足条件的实例规格,可以切换其他可用区查看。
完成配置模板参数后,点击下一步:检查并确认,预览确认,点击创建,创建资源需要5分钟左右的时间,请您耐心等待。
当资源栈信息页面的状态显示为创建成功时表示一键配置完成。
应用体验
5
使用文档智能(Document Mind)提供的文档解析(大模型版)解析本地文档。并将解析结果接入百炼平台创建知识库。基于该知识库的内容,实现增强检索生成(RAG)的问答应用。这一应用开发是基于LlamaIndex社区框架,并使用百炼平台提供的相关组件能力实现的。
单击资源栈的输出页签,再单击体验地址对应的URL进行访问。
文档上传:用户可以选择本地文档并设置知识库名称。点击上传后,系统将解析文档并构建相应的知识库,最终返回文档信息、文档摘要和文档结构。例如,您可以使用我们提供的“百炼”手机详细参数.docx文档进行尝试。
问答服务:点击页面上方问答服务,切换到问答服务界面,然后输入知识库名称并输入针对该知识库的提问,即可获得精准的回答。
总结:通过该方案,企业用户可以高效地处理各类复杂文档,构建强大的知识库,并通过增强检索生成(RAG)技术实现智能问答服务,显著提升文档处理和信息获取的效率。
为了方便用户快速体验效果,当前应用为演示版本,体验完毕请及时释放资源。若想用于生产环境,建议下载源码,可以进行二次开发,同时打开登录鉴权功能。
移动端体验应用(可选)
10
我们已经成功实现了文档解析与知识库的构建,并基于LlamaIndex框架开发部署了RAG应用。在此基础上,可以创建一个百炼RAG应用,并集成至钉钉或微信公众号中,以实现移动设备上的AI助手功能,提供更加便捷、高效的智能服务体验。
验证及清理
5
清理资源
测试完方案后,您可以参考以下规则处理对应产品的实例,避免继续产生费用。
ROS一键删除创建的云资源。
登录ROS控制台。
在左侧导航栏,选择资源栈。
在资源栈页面的顶部选择部署的资源栈所在地域,找到资源栈,然后在其右侧操作列,单击删除。
在删除资源栈对话框,选择删除方式为释放资源,然后单击确定,根据提示完成资源释放。
删除百炼 API-KEY:
在API-KEY管理页面,找到目标API-KEY,单击右侧操作列下的删除,根据页面提示进行删除。
删除百炼应用和数据:
删除钉钉应用:
登录钉钉开放平台,点击导航栏中的应用开发。
在左侧导航栏点击钉钉应用,找到目标应用,点击应用名称进入应用详情。
点击左侧导航栏中的凭证与基础信息,先点击停用按钮,然后点击删除应用按钮。
删除钉钉连接流:登录AppFlow控制台,找到目标连接流,然后在其右侧操作列,单击删除。
删除微信连接流:登录AppFlow控制台,找到目标连接流,然后在其右侧操作列,单击删除。