DataArts Studio串联ModelArts作业

举报
CTYG 发表于 2022/08/11 21:05:32 2022/08/11
【摘要】 【摘要】 DataArts Studio(原DGC)串联ModelArts作业使用说明

0.概要介绍

数据治理中心DataArts Studio(原DGC)使用指南:
https://support.huaweicloud.com/usermanual-dgc/dgc_01_0007.html
数据治理中心DataArts Studio(原DGC)用于编排任务,串联大数据与AI作业。如下图所示为一个简单的串联作业案例:

1. 准备工作

1.1 创建DataArts作业

开始界面如下,点击“数据开发”进入作业编排界面。

点击新建作业如下:

选择批处理并创建:

1.2 选择节点

节点说明:
https://support.huaweicloud.com/usermanual-dgc/dgc_01_0442.html
数据湖探索DLI使用说明:
https://support.huaweicloud.com/dli/
AI开发平台ModelArts使用说明:
https://support.huaweicloud.com/modelarts/
进入作业编辑作业,ModelArts作业选用Rest Client节点,DLI相关作业选用DLI相关节点,其余大数据侧节点同理。

1.3 配置作业参数

多次执行作业时,需要通过时间戳区分作业名称和作业的存储位置,可在作业参数配置中进行设置:

例如参数cur_time的值为如下表达式,返回参数20220811-180000,在节点中配置${cur_time}的地方,则自动替换为20220811-180000

#{DateUtil.format(DateUtil.addDays(Job.planTime,0),"yyyyMMdd-HHmmss")}

EL表达式使用说明:
https://support.huaweicloud.com/usermanual-dgc/dgc_01_0494.html

2. 创建DLI节点

训练作业需要从对象存储系统OBS中读取训练数据,因此需要在DLI作业中将数据写入OBS,参考DLI说明文档,例如:
https://support.huaweicloud.com/sqlreference-dli/dli_08_0076.html

3. 创建ModelArts作业节点

3.1 Rest Client节点使用

执行ModelArts作业或者查询ModelArts作业,通过Rest Client节点调用rest请求的方式实现。点击节点进行编辑,代理集群名称点加号选择,接口认证方式选择“华为IAM认证”:

URL地址与HTTP方法参考《ModelArts快速获取Rest接口json结构》:
https://bbs.huaweicloud.com/blogs/238421

3.1.1 获取URL地址与HTTP方法

在ModelArts创建训练作业时,点击F12,得到如下界面,以创建训练作业为例,点击training-jobs,点击Headers,得到region和project_id信息,HTTP方法对应图中Request Method显示的POST:

因此URL地址为如下格式,将region与project_id填入:

https://modelarts.${region}.myhuaweicloud.com/v2/${project_id}/training-jobs
3.1.2 获取请求消息体

在刚才的界面点击Payload,点击view source,复制请求体。

3.2 配置节点参数

3.2.1 创建训练作业

点击节点填写如下参数:

参数名 参数值
节点名称 创建训练作业
URL地址 https://modelarts.${region}.myhuaweicloud.com/v2/${project_id}/training-jobs
HTTP方法 POST
请求消息体 如下图所示
响应消息体解析为传递参数定义 job_id=metadata.id

如图所示为请求消息体填写示例,具体内容请参考3.1.2部分内容,获取创建训练作业的确切参数,再在基础上添加需要统一配置的作业参数,例如${cur_time}。

3.2.2 查询训练作业状态
参数名 参数值
节点名称 查询训练作业状态
URL地址 https://modelarts.${region}.myhuaweicloud.com/v2/${project_id}/training-jobs/${job_id}
HTTP方法 GET
是否需要判断返回值 YES
返回值字段路径 status.phase
请求成功标志位 Completed
请求失败标志位 Failed
请求间隔时间(秒) 30

如图所示,选择“是否需要判断返回值”为YES后,自动出现以下参数框:

3.2.3 导入AI应用
参数名 参数值
节点名称 导入AI应用
URL地址 https://modelarts.${region}.myhuaweicloud.com/v1/${project_id}/models
HTTP方法 POST
请求消息体 如下图所示
响应消息体解析为传递参数定义 model_id=model_id

请求消息体示例,具体配置根据F12获取并修改:

3.2.4 查询AI应用状态
参数名 参数值
节点名称 查询AI应用状态
URL地址 https://modelarts.${region}.myhuaweicloud.com/v2/${project_id}/models/${model_id}
HTTP方法 GET
是否需要判断返回值 YES
返回值字段路径 model_status
请求成功标志位 published
请求间隔时间(秒) 30
3.2.5 部署推理服务
  • 若服务不存在,需要部署新推理服务
参数名 参数值
节点名称 部署推理服务
URL地址 https://modelarts.${region}.myhuaweicloud.com/v1/${project_id}/services
HTTP方法 POST
请求消息体 如下图所示
响应消息体解析为传递参数定义 service_id=service_id

请求消息体示例,具体配置根据F12获取并修改:

  • 若服务已存在,需要更新推理服务

对已有推理服务进行修改时,点击F12,根据已有服务的service_id,获取rest请求体:

下列参数中的service_id需要填写固定值,而不是通过前面的节点获取。

参数名 参数值
节点名称 更新推理服务
URL地址 https://modelarts.${region}.myhuaweicloud.com/v1/${project_id}/services/${service_id}
HTTP方法 PUT
请求消息体 如下图所示

请求消息体示例,具体配置根据F12获取并修改:

3.2.6 查询服务状态
参数名 参数值
节点名称 查询服务状态
URL地址 https://modelarts.${region}.myhuaweicloud.com/v2/${project_id}/services/${service_id}
HTTP方法 GET
是否需要判断返回值 YES
返回值字段路径 status
请求成功标志位 running
请求间隔时间(秒) 30

4. 测试运行

节点和作业参数配置完毕后,点击测试运行:

测试运行立即开始,可查看运行日志:

5.周期性调度

设置调度配置后,在指定时间,会自动以最新提交版本的状态运行作业。

5.1 提交版本

如图提交新版本:

5.2 调度配置

如图选择调度配置,选择周期性调度,则从即日起每天20点执行一次作业:

5.3 执行调度

点击执行调度后出现弹窗,点击“前往运维中心”:

可查看各节点执行状态:

6. 拓展配置

6.1 IF语句控制节点运行

右键点击节点前的箭头,选择设置条件:

IF语句使用说明:
https://support.huaweicloud.com/usermanual-dgc/dgc_01_0583.html
例如根据推理服务是否存在,来选用不同的节点。以下表达式表示如果服务存在,则运行后续节点。

#{${service_exists} == "true" ? "true" : "false"}

6.2 其他节点

若需要查询ModelArts上训练作业状态,模型信息等可通过如下API,相应设置Rest Client节点进行查询。
ModelArts作业API使用说明:
https://support.huaweicloud.com/api-modelarts/modelarts_03_0002.html

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。