更新时间:2024-01-18 GMT+08:00

查询训练作业列表

示例代码

在ModelArts Notebook平台,Session鉴权无需输入鉴权参数。其它平台的Session鉴权请参见Session鉴权

from modelarts.session import Session
from modelarts.estimatorV2 import Estimator
session = Session()
job_list = Estimator.get_job_list(session=session, offset=10, limit=5, sort_by="create_time", order="asc", 
                                  filters=[{"key": "name", "operator": "like", "value": ["trainjob"]}])

print(job_list)

参数说明

表1 get_job_list请求参数说明

参数

是否必选

参数类型

描述

session

Object

会话对象,初始化方法请参考Session鉴权

offset

Integer

查询作业的偏移量,最小为0。例如设置为1,则表示从第二条开始查。

limit

Integer

查询作业的限制量。最小为1,最大为50。

sort_by

String

查询作业排列顺序的指标。默认使用create_time排序。

order

String

查询作业排列顺序,默认为“desc”,降序排序。也可以选择对应的“asc”,升序排序。

缺省值:desc

枚举值:

  • asc:升序
  • desc:降序

group_by

String

查询作业要搜索的分组条件。

filters

Array of 表2 filters objects

查询作业要过滤的一系列条件。

表2 filters

参数

是否必选

参数类型

描述

key

String

分组条件键值。

operator

String

分组条件键值键关系,支持between、like、in、not、rely_to。

缺省值:in

枚举值:

  • like:类似
  • in:包含
  • not:非
  • between:范围

value

Array of strings

分组条件键对应值。

表3 get_job_list返回参数说明

参数

参数类型

描述

total

Integer

查询到当前用户名下的所有作业总数。

count

Integer

查询到当前用户名下的所有符合查询条件的作业总数。

limit

Integer

查询作业的限制量。最小为1,最大为50。

offset

Integer

查询作业的偏移量,最小为0。例如设置为1,则表示从第二条开始查。

sort_by

String

查询作业排列顺序的指标。默认使用create_time排序。

order

String

查询作业排列顺序,默认为“desc”,降序排序。也可以选择对应的“asc”,升序排序。

group_by

String

查询作业要搜索的分组条件。

workspace_id

String

作业所处的工作空间,默认值为“0”。

ai_project

String

作业所属的AI项目,默认值为"default-ai-project"。

items

Array of JobResponse objects

查询到当前用户名下的所有符合查询条件的作业详情。

表4 JobResponse

参数

参数类型

描述

kind

String

训练作业类型。默认使用job。

枚举值:

  • job:训练作业
  • hetero_job:异构作业
  • autosearch_job:自动搜索作业
  • mrs_job:mrs作业
  • edge_job:边缘作业

metadata

JobMetadata object

训练作业元信息。

status

Status object

训练作业状态信息。创建作业无需填写。

algorithm

JobAlgorithmResponse object

训练作业算法。目前支持三种形式:

  • id只取算法的id;
  • subscription_id+item_version_id取算法的订阅id和版本id;
  • code_dir+boot_file取训练作业的代码目录和启动文件。

tasks

Array of TaskResponse objects

异构训练作业的任务列表。

spec

spec object

训练作业规格参数。

表5 JobMetadata

参数

参数类型

描述

id

String

训练作业ID,创建成功后由ModelArts生成返回,无需填写。

name

String

训练作业名称。限制为1-64位只含数字、字母、下划线和中划线的名称。

workspace_id

String

指定作业所处的工作空间,默认值为“0”。

description

String

对训练作业的描述,默认为“NULL”,字符串的长度限制为[0, 256]。

create_time

Long

训练作业创建时间戳,单位为毫秒,创建成功后由ModelArts生成返回,无需填写。

user_name

String

训练作业创建用户的用户名,创建成功后由ModelArts生成返回,无需填写。

annotations

Map<String,String>

训练作业申明模板,异构作业job_template字段默认为Template RL,其余默认为Template DL。

表6 Status

参数

参数类型

描述

phase

String

训练作业一级状态,状态值稳定不变,可选值如下: “Creating”、“Pending”、“Running”、“Failed”、“Completed”、“Terminating”、“Terminated”、“Abnormal”。

secondary_phase

String

训练作业二级状态,状态值不稳定,可选值如下: “Creating”、“Queuing”、“Running”、“Failed”、“Completed”、“Terminating”、“Terminated”、“CreateFailed”、“TerminatedFailed”、“Unknown”、“Lost”。

duration

Long

训练作业运行时长,单位为毫秒。

node_count_metrics

Array<Array<Integer>>

训练作业运行时节点数变化指标。

tasks

Array of strings

训练作业子任务名称。

start_time

String

训练作业开始时间,格式为时间戳。

task_statuses

Array of objects

训练在子任务状态信息。

表7 task_statuses

参数

参数类型

描述

task

String

训练作业子任务名称。

exit_code

Integer

训练作业子任务退出码。

message

String

训练作业子任务错误消息。

表8 JobAlgorithmResponse

参数

参数类型

描述

id

String

算法管理的算法id。

枚举值:

  • id只取算法的id;
  • subscription_id+item_version_id取算法的订阅id和版本id;
  • code_dir+boot_file取训练作业的代码目录和启动文件。

name

String

算法名称。

subscription_id

String

订阅算法的订阅ID。应与item_version_id一同出现。

item_version_id

String

订阅算法的版本。应与subscription_id一同出现。

code_dir

String

训练作业的代码目录。如:“/usr/app/”。应与boot_file一同出现,若填入id或subscription_id+item_version_id则无需填写。

boot_file

String

训练作业的代码启动文件,需要在代码目录下。如:“/usr/app/boot.py”。应与code_dir一同出现,若填入id或subscription_id+item_version_id则无需填写。

autosearch_config_path

String

自动化搜索作业的yaml配置路径,需要提供一个OBS路径。

autosearch_framework_path

String

自动化搜索作业的框架代码目录,需要提供一个OBS路径。

command

String

自定义镜像训练作业的自定义镜像的容器的启动命令。可填code_dir。

parameters

Array of Parameter objects

训练作业的运行参数。

policies

policies object

作业支持的策略。

inputs

Array of Input objects

训练作业的数据输入。

outputs

Array of Output objects

训练作业的结果输出。

engine

engine object

训练作业的引擎。使用算法管理的算法id或订阅算法subscription_id+item_version_id创建作业时,无需填写。

environments

Map<String,String>

训练作业的环境变量。格式:"key":"value",无需填写。

表9 Parameter

参数

参数类型

描述

name

String

参数名称。

value

String

参数值。

description

String

参数描述信息。

constraint

constraint object

参数属性。

i18n_description

i18n_description object

国际化描述。

表10 constraint

参数

参数类型

描述

type

String

参数种类。

editable

Boolean

是否可编辑。

required

Boolean

是否必须。

sensitive

Boolean

是否敏感。

valid_type

String

有效种类。

valid_range

Array of strings

有效范围。

表11 i18n_description

参数

参数类型

描述

language

String

国际语种。

description

String

对应描述。

表12 policies

参数

参数类型

描述

auto_search

auto_search object

超参搜索配置。

表14 reward_attrs

参数

参数类型

描述

name

String

指标名称。

mode

String

搜索方向。

  • max:指定时,表示指标值越大越好;
  • min:指定时,表示指标值越小越好。

regex

String

指标正则表达式。

表15 search_params

参数

参数类型

描述

name

String

超参名称。

param_type

String

参数类型。

  • continuous:指定时,表示参数类型为连续值;
  • discreate:指定时,表示参数类型为离散值。

lower_bound

String

超参下界。

upper_bound

String

超参上界。

discrete_points_num

String

连续型超参离散化取值个数。

discrete_values

Array of strings

离散型超参的取值列表。

表16 algo_configs

参数

参数类型

描述

name

String

搜索算法名称。

params

Array of AutoSearchAlgoConfigParameter objects

搜索算法参数。

表17 AutoSearchAlgoConfigParameter

参数

参数类型

描述

key

String

参数键。

value

String

参数值。

type

String

参数种类。

表18 Input

参数

参数类型

描述

name

String

数据输入通道名称。

description

String

数据输入通道描述信息。

local_dir

String

数据输入通道映射的容器本地路径。

remote

InputDataInfo object

数据实际输入信息。

remote_constraint

Array of objects

数据输入约束。

表19 InputDataInfo

参数

参数类型

描述

dataset

dataset object

数据输入信息为数据集。

obs

obs object

数据输入输出信息为OBS方式。

表20 dataset

参数

参数类型

描述

id

String

训练作业的数据集ID。

version_id

String

训练作业的数据集版本ID。

obs_url

String

训练作业需要的数据集OBS路径URL,ModelArts会通过数据集ID和数据集版本ID自动解析生成。如:“/usr/data/”。

表21 obs

参数

参数类型

描述

obs_url

String

训练作业需要的数据集OBS路径URL。如:“/usr/data/”。

表22 remote_constraint

参数

参数类型

描述

data_type

String

数据输入类型,包括数据存储位置、数据集两种方式。

attributes

String

数据输入为数据集时的相关属性。

枚举值:

  • data_format:数据格式。
  • data_segmentation:数据切分方式。
  • dataset_type:标注类型。
表23 Output

参数

参数类型

描述

name

String

数据输出通道名称。

description

String

数据输出通道描述信息。

local_dir

String

数据输出通道映射的容器本地路径。

remote

remote object

数据实际输出信息。

表24 remote

参数

参数类型

描述

obs

obs object

数据实际输出到OBS。

表25 obs

参数

参数类型

描述

obs_url

String

数据实际输出到OBS的路径。

表26 engine

参数

参数类型

描述

engine_id

String

训练作业选择的引擎规格ID。engine_id、engine_name + engine_version和image_url方式三选一。

engine_name

String

训练作业选择的引擎名称。若填入engine_id,则无需填写。

engine_version

String

训练作业选择的引擎版本名称。若填入engine_id,则无需填写。

image_url

String

训练作业选择的自定义镜像地址。

表27 TaskResponse

参数

参数类型

描述

role

String

异构训练作业的任务角色。

枚举值:

  • learner(支持GPU\CPU规格)
  • worker(支持CPU规格)

algorithm

algorithm object

算法配置。

task_resource

FlavorResponse object

训练作业、算法的规格信息。

表28 algorithm

参数

参数类型

描述

code_dir

String

算法启动文件所在目录绝对路径。

boot_file

String

算法启动文件绝对路径。

inputs

inputs object

算法输入通道信息。

outputs

outputs object

算法输出通道信息。

engine

engine object

异构作业所依赖的引擎。

表29 inputs

参数

参数类型

描述

name

String

数据输入通道名称。

local_dir

String

数据输入输出通道映射的容器本地路径。

remote

remote object

数据实际输入信息,异构作业只支持OBS。

表30 remote

参数

参数类型

描述

obs

obs object

数据输入输出信息为OBS方式。

表31 obs

参数

参数类型

描述

obs_url

String

训练作业需要的数据集OBS路径URL。如:“/usr/data/”。

表32 outputs

参数

参数类型

描述

name

String

数据输出通道名称。

local_dir

String

数据输出通道映射的容器本地路径。

remote

remote object

数据实际输出信息。

mode

String

数据传输模式,默认为“upload_periodically”。

period

String

数据传输周期,默认为30s。

表33 remote

参数

参数类型

描述

obs

obs object

数据实际输出到OBS。

表34 obs

参数

参数类型

描述

obs_url

String

数据实际输出到OBS的路径。

表35 engine

参数

参数类型

描述

engine_id

String

异构作业引擎规格的ID。如“caffe-1.0.0-python2.7”。

engine_name

String

异构作业引擎规格的名称。如“Caffe”。

engine_version

String

异构作业引擎规格的版本。

v1_compatible

Boolean

是否为v1兼容模式。

run_user

String

引擎默认启动用户uid。

表36 FlavorResponse

参数

参数类型

描述

flavor_id

String

资源规格的ID。

flavor_name

String

资源规格的名称。

max_num

Integer

资源规格的最大节点数。

flavor_type

String

资源规格的类型。可选值如下:

  • CPU;
  • GPU;
  • Ascend。

billing

billing object

资源规格计费信息。

flavor_info

flavor_info object

资源规格详细信息。

attributes

Map<String,String>

其他规格属性。

表37 billing

参数

参数类型

描述

code

String

计费码。

unit_num

Integer

计费卡数。

表38 flavor_info

参数

参数类型

描述

max_num

Integer

可以选择的最大节点数量(max_num,为1代表不支持分布式)。

cpu

cpu object

cpu规格信息。

gpu

gpu object

gpu规格信息。

npu

npu object

Ascend规格信息。

memory

memory object

内存信息。

表39 cpu

参数

参数类型

描述

arch

String

cpu架构。

core_num

Integer

核数。

表40 gpu

参数

参数类型

描述

unit_num

Integer

gpu卡数。

product_name

String

产品名。

memory

String

内存。

表41 npu

参数

参数类型

描述

unit_num

String

npu卡数。

product_name

String

产品名。

memory

String

内存。

表42 memory

参数

参数类型

描述

size

Integer

内存大小。

unit

String

内存单元数。

表43 spec

参数

参数类型

描述

resource

Resource object

训练作业资源规格信息。flavor_id和pool_id+[flavor_id]方式二选一。

volumes

Array of objects

训练作业挂载卷信息。

log_export_path

log_export_path object

训练作业日志输出信息。

表44 Resource

参数

参数类型

描述

policy

String

训练作业资源规格模式,可选值如下:“regular”、“economic”、“turbo”。

flavor_id

String

训练作业选择的资源规格ID。

flavor_name

String

使用flavor_id时,由ModelArts返回的只读规格名称。

node_count

Integer

训练作业选择的资源副本数。

最小值:1

pool_id

String

训练作业选择的资源池ID。

flavor_detail

flavor_detail object

训练作业、算法的规格信息。

表45 flavor_detail

参数

参数类型

描述

flavor_type

String

资源规格的类型。可选值如下:

  • CPU;
  • GPU;
  • Ascend。

billing

billing object

资源规格计费信息。

flavor_info

flavor_info object

资源规格详细信息。

表46 billing

参数

参数类型

描述

code

String

计费码。

unit_num

Integer

计费卡数。

表47 flavor_info

参数

参数类型

描述

max_num

Integer

可以选择的最大节点数量(max_num,为1代表不支持分布式)。

cpu

cpu object

cpu规格信息。

gpu

gpu object

gpu规格信息。

npu

npu object

Ascend规格信息。

memory

memory object

内存信息。

disk

disk object

磁盘信息。

表48 cpu

参数

参数类型

描述

arch

String

cpu架构。

core_num

Integer

核数。

表49 gpu

参数

参数类型

描述

unit_num

Integer

gpu卡数。

product_name

String

产品名。

memory

String

内存。

表50 npu

参数

参数类型

描述

unit_num

String

npu卡数。

product_name

String

产品名。

memory

String

内存。

表51 memory

参数

参数类型

描述

size

Integer

内存大小。

unit

String

内存单元数。

表52 disk

参数

参数类型

描述

size

String

磁盘大小。

unit

String

磁盘大小单位,一般为GB。

表53 volumes

参数

参数类型

描述

nfs

nfs object

nfs方式的挂载卷。

表54 nfs

参数

参数类型

描述

nfs_server_path

String

nfs服务端路径。

local_path

String

挂载到训练容器中的路径。

read_only

Boolean

nfs挂载卷在容器中是否只读。

表55 log_export_path

参数

参数类型

描述

obs_url

String

训练作业日志保存的OBS地址。

host_path

String

训练作业日志保存的宿主机的路径。

表56 调用训练接口失败响应参数

参数

类型

描述

error_msg

String

调用失败时的错误信息,调用成功时无此字段。

error_code

String

调用失败时的错误码,具体请参见错误码,调用成功时无此字段。

error_solution

String

调用失败时的提示解决信息,调用成功时无此字段。

表57 调用训练接口失败响应参数

参数

类型

描述

error_msg

String

调用失败时的错误信息,调用成功时无此字段。

error_code

String

调用失败时的错误码,具体请参见错误码,调用成功时无此字段。

error_solution

String

调用失败时的提示解决信息,调用成功时无此字段。