服务部署:控制台

更新时间: 2023-08-22 13:59:02

PAI-EAS支持将从开源社区下载的模型或您自己训练获得的模型部署为推理服务或AI-Web应用。针对不同方式获取的训练模型,PAI-EAS支持不同的部署方式,您可以使用PAI-EAS的控制台方式快速将其部署为API服务。本文介绍如何使用控制台方式部署及管理服务。

前提条件

已获得训练好的模型。

背景信息

您可以通过控制台部署及管理PAI-EAS模型在线服务。

  • 控制台上传部署

    您可以通过镜像、模型等方式快速进行AI-Web应用或推理服务的部署。

  • 管理PAI-EAS模型在线服务

    PAI-EAS支持通过控制台方式管理已部署的模型服务,包括:查看服务详情、更新服务资源配置、更新服务版本、扩缩容等操作。

控制台上传部署

PAI-EAS模型在线服务页面,可以直接上传训练完成的模型,并将其部署为在线模型服务。

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

    1. 登录PAI控制台

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

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

  2. PAI-EAS 模型在线服务页面的推理服务页签,单击部署服务

  3. 部署服务页面,选择服务类型。

    支持以下服务类型,您可以根据使用场景,选择一种类型。

    服务类型

    描述

    新建服务

    表示新部署一个服务。

    更新服务

    为已有的运行中的服务更新服务版本,您可以通过切换版本功能自由切换线上版本。

    服务群组

    表示新创建的服务归属于一个服务群组。如果没有服务群组,您可以新建一个服务群组,详情请参见服务分组

    服务群组拥有统一的流量入口,您可以根据不同的使用场景分配子服务承载的流量。

    新增蓝绿部署

    为已有运行中的服务新增一个关联服务,且两个服务完全独立。您可以对两个服务进行流量分配,待关联服务完全运行正常之后,您可以将当前服务的流量完全切换到关联服务,实现当前服务到关联服务的平滑切换。

  4. 模型服务信息区域,配置参数。

    • 服务名称:仅上述步骤中选择了新建服务服务群组,才需要自定义服务名称。当选择了其他两种服务类型时仅需要选择已部署的模型服务。

    • 所属群组:仅上述步骤中选择了服务群组,才需要配置。支持以下两种配置方式:

      • 新建群组:创建服务时,新建服务群组。

      • 加入群组:创建服务时,选择已创建的服务群组,服务创建成功后,加入该服务群组中。

    • 部署方式:支持镜像部署服务镜像部署AI-Web应用模型+processor部署服务三种部署方式。

      说明

      在复杂的模型推理场景中,例如AIGC、视频处理等场景,推理耗时比较长,需要打开异步服务开关,实现异步推理服务,详情请参见异步推理服务。仅当部署方式选择镜像部署服务模型+processor部署服务时,支持开启异步服务。

      • 镜像部署服务:如果您想通过镜像、代码及模型挂载的方式快速进行AI推理服务的部署,则选择该部署方式。

      • 镜像部署AI-Web应用:如果您想通过镜像、代码及模型挂载的方式快速进行AI-Web应用的部署,则选择该部署方式。

      • 模型+processor部署服务:如果您想通过模型和Processor(包括预置Processor自定义Processor)进行AI推理服务的部署,则选择该部署方式。

      镜像/镜像AI-Web部署

      部署方式选择镜像部署服务镜像部署AI-Web应用时,参数配置如下表所示:

      参数

      描述

      镜像选择

      支持以下几种配置方式:

      • 镜像地址:支持输入用于部署模型服务的镜像地址,例如registry.cn-shanghai.aliyuncs.com/xxx/image:tag。您可以使用PAI官方公开镜像地址,也可以使用自定义镜像地址。镜像地址的获取方式,详情请参见查看并添加镜像

        重要

        选择的镜像地址和部署的服务需要在同一个地域。

        如果您使用私有仓库中的镜像,则需要单击输入,输入镜像仓库用户名镜像仓库密码

      • 用户自定义镜像:选择已创建的自定义镜像。关于如何创建自定义镜像,详情请参见查看并添加镜像

      • PAI平台镜像:由阿里云PAI产品提供的多种官方镜像。

      填写模型配置

      单击填写模型配置,来进行模型配置。支持通过以下三种方式配置模型文件。

      • OSS挂载

        • 配置OSS源地址路径,即选择OSS Bucket路径。

        • 配置挂载路径,即配置挂载服务实例中的目标路径,用来读取OSS路径中的文件。

      • NAS挂载

        • NAS挂载点:选择NAS文件系统和挂载点,EAS服务通过挂载点来访问NAS文件系统。如何创建通用型NAS文件系统,详情请参见创建文件系统

        • NAS源路径:需要挂载的NAS中的源路径,即NAS实例内部的文件系统路径。

        • 挂载路径:挂载到服务实例中的目标路径,用来读取NAS路径中的文件。

      • PAI模型挂载

        • 根据模型名称和模型版本选择已注册的模型。关于如何查看已注册的模型,详情请参见注册及管理模型

        • 配置挂载路径:挂载服务实例中的目标路径,用来读取模型文件。

      填写代码配置

      单击填写代码配置,进行代码配置,支持使用以下几种挂载方式,来读取服务部署过程依赖的代码数据。

      • OSS挂载

        • 配置OSS源地址路径,即选择OSS Bucket路径。

        • 配置挂载路径,即配置挂载服务实例中的目标路径,用来读取OSS路径中的文件。

      • NAS挂载

        • NAS挂载点:配置NAS挂载点地址,EAS服务通过挂载点来访问NAS文件系统。

        • NAS源路径:需要挂载的NAS中的源路径。

        • 挂载路径:挂载服务实例中的目标路径,用来读取NAS路径中的文件。

      • Git挂载

        • Git地址:配置Git代码地址。

        • 挂载路径:挂载服务实例中的目标路径,用来读取Git代码地址中的代码文件。

      • PAI数据集挂载

        • 选择已创建的数据集,如果没有数据集,您可以单击新建数据集来创建一个新的数据集。

        • 配置挂载路径,即配置挂载服务实例中的目标路径,用来读取PAI数据集。

      • PAI代码挂载

        • 选择已创建的代码集,如果没有代码集,您可以单击新建代码配置来创建一个新的代码集。

        • 配置挂载路径,即配置挂载服务实例中的目标路径,用来读取PAI代码集。

      填写三方库配置列表

      单击填写三方库配置列表来配置三方库。支持以下两种方式配置第三方库。

      • 三方库列表:直接在下方文本框中输入三方库。

      • requirements.txt文件目录:将第三方库写入requirements.txt文件中,在下方文本框中指定该requirements.txt文件的路径。

      填写环境变量

      单击填写环境变量来配置环境变量。

      配置NameValue

      • Name:镜像执行时的环境变量名称。

      • Value:镜像执行时的环境变量取值。

      运行命令

      镜像的启动命令,例如:python /run.py

      同时您需要输入端口号,即镜像启动后监听的本地HTTP端口。

      重要

      由于PAI-EAS引擎监听固定的8080和9090端口,因此端口需要避开8080和9090端口。

      模型+processor部署

      部署方式选择模型+processor部署服务时,参数配置如下表所示:

      参数

      描述

      模型文件

      您可以通过以下任何一种方式配置模型文件:

      • OSS挂载

        选择模型文件所在的OSS路径。

      • 上传数据

        1. 选择当前地域下的OSS路径。

        2. 单击查看本地文件拖拽上传文件,并根据提示上传本地模型文件。

      • 公网下载地址

        单击公网下载地址,并在下方文本框中输入可以公开访问的URL地址。

      • 模型选择

        根据模型名称和模型版本选择已注册的模型。关于如何查看已注册的模型,详情请参见注册及管理模型

      Processor种类

      支持所有的预置官方Processor和自定义Processor,关于预置官方Processor的更多信息,详情请参见预置Processor使用说明

      模型类别

      Processor种类选择EasyVision(CPU)EasyVision(GPU)EasyTransfer(CPU)EasyTransfer(GPU)EasyNLPEasyCV时,支持配置该参数。上述每个Processor种类对应的模型类别不同,请根据业务使用场景选择。

      Processor语言

      支持选择cppjavapython

      Processor包

      您可以通过以下任何一种方式配置Processor包:

      • 本地上传

        1. 单击本地上传

        2. 选择当前地域下的OSS Bucket路径。

        3. 单击查看本地文件拖拽上传文件,并根据提示上传已下载的Processor文件。

          系统会将文件上传至当前地域的官方OSS路径,并自动配置Processor包

          说明

          通过本地上传的方式,可以使系统在模型部署时,快速加载Processor。

      • OSS文件导入

        单击OSS文件导入,并选择文件所在的OSS路径。

      • 公网下载地址

        单击公网下载地址,并在下方文本框中输入可以公开访问的URL地址。

      Processor主文件

      自定义Processor包的主文件。

      填写挂载配置

      单击填写挂载配置,进行挂载配置,支持以下几种挂载方式。

      • OSS挂载

        • 配置OSS源地址路径,即选择OSS Bucket路径。

        • 配置挂载路径,即配置挂载服务实例中的目标路径,用来读取OSS路径中的文件。

      • NAS挂载

        • NAS挂载点:配置NAS挂载点地址,EAS服务通过挂载点来访问NAS文件系统。

        • NAS源路径:需要挂载的NAS中的源路径。

        • 挂载路径:挂载服务实例中的目标路径,用来读取NAS路径中的文件。

      • PAI数据集挂载

        • 选择已创建的数据集,如果没有数据集,您可以单击新建数据集来创建一个新的数据集。

        • 配置挂载路径,即配置挂载服务实例中的目标路径,用来读取PAI数据集。

      • PAI代码挂载

        • 选择已创建的代码集,如果没有代码集,您可以单击新建代码配置来创建一个新的代码集。

        • 配置挂载路径,即配置挂载服务实例中的目标路径,用来读取PAI代码集。

      填写环境变量

      单击填写环境变量来配置环境变量。

      配置NameValue

      • Name:镜像执行时的环境变量名称。

      • Value:镜像执行时的环境变量取值。

  5. 资源部署信息区域,配置参数。

    参数

    描述

    资源组种类

    支持选择公共资源组或已购买(创建)的专属资源组。如何购买专属资源组,详情请参见使用专属资源组

    说明

    建议在任务量相对较少、对任务时效性要求不高的场景下使用公共资源组。

    实例数

    建议配置多个服务实例,以避免单点部署带来的风险。

    资源组种类选择专属资源组时,您需要为每个服务实例配置CPU内存(MB)GPU参数。

    资源配置方法

    资源组种类选择公共资源组时,支持配置该参数。支持以下两种配置方式:

    • 常规资源配置

      支持选择单个CPU或GPU实例规格。

      如果您领取了免费资源包,支持在西南1(成都)、华南2(河源)、华南1(深圳)地域,使用试用活动页签的免费机型,详情请参见新用户免费试用额度

    • 性价比资源配置

      支持配置多规格实例抢占型实例

      • 抢占型保留时长:您可以为抢占型实例设置1小时保护期,即实例抢占成功后,默认至少可以使用1小时。

      • 部署资源:支持同时配置常规型资源或抢占型资源,并按照配置规格的先后顺序做为优先级排序来拉起资源,最多支持添加5个资源类型。如果您设置抢占型资源,需要为该机器资源设置出价上限,用来自动竞价抢占资源。

    弹性资源池

    资源组种类选择专属资源组时,支持配置该参数。

    您可以打开开启弹性资源池开关并参考资源配置方法进行公共资源配置,为部署在专属资源组中的服务开启弹性资源池能力。

    弹性资源池配置完成后,当服务扩容时遇到机器资源不足时,新扩出来的实例会自动启动在已配置的按量付费的公共资源上,并以公共资源组的方式来进行计费;在缩容时会优先缩掉公共资源组中的服务实例。

    系统盘配置

    资源组种类选择公共资源组时,支持配置该参数。

    单击系统盘配置,为EAS服务配置额外系统盘,单位为GB,取值范围为0~2000 GB。PAI-EAS免费赠送30 GB系统盘,如果此处配置20 GB,则实际可用的存储空间为:免费的30 GB+购买的20 GB=50 GB

    额外购买的系统盘按容量和使用时长计费,计费详情请参见PAI-EAS计费说明

  6. 可选:专有网络配置区域,配置VPC交换机安全组名称参数,为部署在公共资源组中的EAS服务开通VPC高速直连。

    网络连通后,该VPC环境中的ECS服务器等即可通过创建的弹性网卡访问部署在公共资源组中的EAS服务,同时EAS服务也可以访问VPC环境中的其他云产品。

  7. 对应配置编辑区域,显示服务配置的相关信息。您可以根据需要补充一些在界面不支持配置的配置项,详情请参见创建服务

    对应配置编辑区域
  8. 单击部署,等待一段时间,当服务状态变为运行中,表明服务部署成功。

管理PAI-EAS模型在线服务

您可以在PAI-EAS 模型在线服务页面的推理服务页签,查看已部署的服务列表,并对目标服务进行停止、启动、删除等操作。

警告

停止或删除模型服务,会导致依赖该服务的相关请求失败,请谨慎操作。

  • 查看服务详情

    单击目标服务名称,进入服务详情页面。您可以在基本信息区域,查看该服务的所属群组及归属该群组的服务信息。群组

    您也可以在该页面上方切换功能页签,查看服务监控服务日志部署事件等内容。image..png

  • 更新服务资源配置

    服务详情页面,单击资源信息区域的资源配置。在资源配置更新服务运行的资源,配置方法请参见控制台上传部署

  • 更新已有服务版本

    单击目标服务操作列下的更新服务,参考控制台上传部署配置方法,来更新服务版本。

    警告

    服务更新时,会运行中断,会导致依赖该服务的相关请求失败,请谨慎操作。

    服务更新完成后,按照下图操作指引,查看版本信息或切换服务版本。e30fe3b97c7f455577a4ffca70aee2ca..png

  • 扩缩容

    单击目标服务操作列下的扩缩容,配置实例数,来提高或减少指定模型服务占用的资源。

  • 弹性伸缩

    根据业务需求,自动调整PAI-EAS模型在线服务占用的资源,具体操作,请参见方式一:通过控制台管理水平自动扩缩容功能

  • 切换流量

    参照下图操作指引,为蓝绿部署服务切换流量。image.png

后续步骤

服务部署成功后,您可以通过在线调试功能,来测试服务运行是否正常,详情请参见服务在线调试

阿里云首页 机器学习平台 PAI 相关技术圈