部署上线模型的第一个版本


模型版本上架完成后,可将模型版本部署到对应的容器中运行。


创建部署实例


  1. 登录至 EnOS 管理控制台并在左侧导航栏中选择 智能工作室 > 智能集市

  2. 在模型列表中,选择模型名称,打开 版本管理 页面。

  3. 云端部署 标签下,选择 新建部署实例

  4. 输入以下信息:

    • 实例名称:输入部署实例名称

    • 资源池:选择已创建的资源池

    • 标签:输入部署实例标签

    • 描述:输入对部署实例的描述信息

  5. 选择 确认,完成部署实例创建。新创建的部署实例将显示在 部署实例 列表中。

配置部署实例

部署模型版本


  1. 在左侧导航栏中选择 智能工作室 > 智能集市

  2. 选择部署实例名称,进入模型部署页面。模型部署页面主要由编辑画布、部署配置栏和部署日志栏组成。编辑画布中的卡片可代表模型、模型版本、流量路由器等。选择选中卡片后,部署配置栏中显示对应的配置项。选择选中模型版本卡片后,部署日志栏中显示模型版本的部署日志。

  3. 在编辑画布中,选择 进入配置,在画布中选择 请添加部署版本

  4. 在弹窗中选择需要部署的模型版本并选择 确定

  5. 添加的模型版本将显示为编辑画布中的 Version 卡片。选中 Version 卡片,然后在右侧的 部署配置 窗口中,配置运行模型版本的资源:

    • 请求资源 一栏中,输入运行模型版本需要的 CPU 和内存

    • 资源限制 一栏中,输入运行模型版本的 CPU 和内存上限

    • 如果底层资源支持 GPU,可选择开启 GPU

  6. 如需根据模型服务的繁忙率指标,自动对运行模型服务所需资源进行扩容或缩容,可开启 是否开启自动扩容,并完成以下配置:

    • Pod 设置 一栏中,输入 Pod 副本的最小值和最大值

    • 扩容度量 一栏中,选择启动弹性扩缩容的触发指标(CPU 或内存)以及目标平均利用率

  7. 选择页面右上角的 部署 按钮,系统将按设置的资源配置部署模型版本。展开部署日志,可查看模型版本的部署进度。

测试部署版本


模型版本部署成功后,可通过以下步骤测试当前版本:

  1. 在左侧导航栏中选择 智能工作室 > 智能集市

  2. 选择部署实例名称,进入模型部署页面。

  3. 在模型部署页面左侧的编辑画布栏中,选中 Predictor 卡片,即可在右侧的 调用服务 窗口中查看模型服务的调用方式和调用地址。

  4. 在线测试 部分中,选择 调用服务测试 类型,并在 输入参数 输入框中输入测试参数,然后选择 发起测试,即可测试验证模型服务。

  5. 在线测试 部分中,选择 Feedback测试 类型,并在 输入参数 输入框中输入测试参数,然后选择 发起测试,即可测试验证模型 Feedback。

  6. 选择 进入配置 并在画布选中 Predictor 卡片,可在 请求超时 输入框中,对访问模型服务 API 设置 timeout 时限,最小可设置 1000ms 的时长,最大可设置 600000ms 的时长。

  7. 返回 模型版本管理 页面,可在 版本管理 标签下查看模型版本的状态已变更为 生产中

(可选)调整模型输入格式


若模型版本的输入格式与智能工作室支持的输入格式不兼容,通过以下步骤对当前模型版本的输入格式进行调整:

  1. 在左侧导航栏中选择 智能工作室 > 智能集市

  2. 在部署实力列表中选择部署实例名称打开模型部署页面。

  3. 在编辑画布中开启 前处理 开关,将 Pre-Processor 卡片添加到画布中。


    ../_images/preprocessor.png


  4. 选择 Pre-Processor 卡片并在右侧面板的前处理脚本框中输入如下所示的处理脚本:

    import json
    import logging
    import numpy as np # you may use numpy if necessary
    
    def transform_input(user_input: dict) -> dict:
    
       log=logging.getLogger()
       log.info("this is a sample log in code")
       user_input["data"]["ndarray"][0][0] = 2
       user_input["data"]["names"][0] = "input_2"
       return user_input
    
  5. 选择 部署

(可选)记录 API 调用日志


通过以下步骤记录 API 调用日志:

  1. 在左侧导航栏中选择 智能工作室 > 智能集市

  2. 在部署实力列表中选择部署实例名称打开模型部署页面。

  3. 在编辑画布中开启 API 调用记录 开关,将 API Call Recorder 卡片添加到画布中。


    ../_images/apicall.png


  4. 选择 API Call Recorder 卡片并在右侧面板中输入以下信息:

    • 目标数据源:指定用于保存 API 调用记录的 MySQL 或 Hive 数据源。

    • 目标表名:指定用于保存 API 调用记录的数据表。

  5. 选择 部署


如需将测试数据写入目标数据源,则在 Predictor 卡片测试之前启用 API 调用记录,否则禁用 API 调用记录功能后再进行测试。