更新时间:2024-10-23 GMT+08:00
分享

新建Workflow工作流

功能介绍

创建Workflow工作流。可参考如何开发Workflow,创建工作流。

接口约束

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v2/{project_id}/workflows

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

用户项目ID。获取方法请参见获取项目ID和名称

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

name

String

Workflow工作流名称,1到64位只包含中英文、数字、空格、下划线(_)和中划线(-),并且以中英文开头。

description

String

Workflow工作流的描述信息。

steps

Array of WorkflowStep objects

Workflow工作流包含的步骤定义。

user_name

String

创建Workflow工作流的用户名。

workspace_id

String

工作空间ID。

data_requirements

Array of DataRequirement objects

Workflow需要的数据。

data

Array of Data objects

Workflow包含的数据。

parameters

Array of WorkflowParameter objects

Workflow包含的参数。

source_workflow_id

String

从指定Workflow工作流进行复制。通过复制来创建Workflow时必填。

gallery_subscription

WorkflowGallerySubscription object

来自市场订阅的Workflow。

latest_execution

ExecutionBrief object

最后一次执行工作流的概要信息。

run_count

Integer

工作流的已运行次数。

param_ready

Boolean

当前工作流的必选参数是否都已填完。

source

String

工作流来源,可选值为ai_gallery,表示工作流是从AI Gallery导入的。

storages

Array of WorkflowStorage objects

Workflow包含的统一存储定义。

labels

Array of strings

为Workflow工作流设置的标签。

assets

Array of WorkflowAsset objects

工作流绑定的资产。

sub_graphs

Array of WorkflowSubgraph objects

工作流包含的子图。

extend

Map<String,Object>

计费工作流使用的拓展字段。

policy

WorkflowPolicy object

工作流部分运行策略。

with_subscription

Boolean

工作流SMN消息订阅开关,默认为false,表示关闭消息订阅开关。

smn_switch

Boolean

SMN开关。

subscription_id

String

SMN消息订阅ID。

exeml_template_id

String

自动学习模板ID。

last_modified_at

String

最近一次修改的时间。

package

WorkflowServicePackege object

计费工作流订阅包信息。

表3 WorkflowStep

参数

是否必选

参数类型

描述

name

String

Workflow工作流节点的名称,在一个DAG中唯一,1到64位只包含中英文,数字,空格,下划线(_)和中划线(-),并且以中英文开头。

type

String

节点的类型,枚举值如下:

  • job 训练

  • labeling 标注

  • release_dataset 数据集发布

  • model 模型发布

  • service 服务部署

  • mrs_job MRS作业

  • dataset_import 数据集导入

  • create_dataset 创建数据集

inputs

Array of JobInput objects

节点的输入项。

outputs

Array of JobOutput objects

节点的输出项。

created_at

String

节点的创建时间。

title

String

工作流节点标题。

description

String

节点的描述信息。

properties

Map<String,Object>

节点属性。

depend_steps

Array of strings

运行依赖的前置节点。

conditions

Array of StepCondition objects

节点执行条件。

if_then_steps

Array of strings

条件节点分支。

else_then_steps

Array of strings

条件节点另一分支。

policy

WorkflowStepPolicy object

节点执行策略。

表4 JobInput

参数

是否必选

参数类型

描述

name

String

输入数据的名称,支持1到64位只包含英文、数字、下划线(_)和中划线(-)的字符。

type

String

输入项类型。枚举值如下:

  • dataset:数据集

  • obs:OBS

  • data_selector:数据选择

data

Object

输入项数据。

value

Object

输入项的值。

表5 JobOutput

参数

是否必选

参数类型

描述

name

String

输出数据的名称。

type

String

输出项类型。枚举值如下:

  • obs:OBS

  • model:AI应用元模型

config

Map<String,Object>

输出配置。

表6 StepCondition

参数

是否必选

参数类型

描述

type

String

判断类型,例如==(等于)、!=(不等于)、>(大于)、>=(大于等于)、<(小于)、<=(小于等于)、in(包含)、or(或)。

left

Object

节点执行条件为true时的分支。

right

Object

节点执行条件为false时的分支。

表7 WorkflowStepPolicy

参数

是否必选

参数类型

描述

poll_interval_seconds

String

节点执行间隔。

max_execution_minutes

String

最大执行时间。

表8 DataRequirement

参数

是否必选

参数类型

描述

name

String

训练数据的名称。填写1-64位,仅包含英文、数字、下划线(_)和中划线(-),并且以英文开头的名称。

type

String

数据来源类型。枚举值如下:

  • dataset:数据集

  • obs:OBS

  • swr:SWR

  • model_list:AI应用列表

  • label_task:标注任务

  • service:在线服务

conditions

Array of Constraint objects

数据约束条件。

value

Map<String,Object>

数据的值。

used_steps

Array of strings

使用了这条数据的工作流节点。

delay

Boolean

延时参数标记。

表9 Constraint

参数

是否必选

参数类型

描述

attribute

String

条件属性,参数的某个字段值。

operator

String

操作,当前只支持equal操作。

value

Object

取值。

表10 Data

参数

是否必选

参数类型

描述

name

String

训练数据的名称。填写1-64位,仅包含英文、数字、下划线(_)和中划线(-),并且以英文开头的名称。

type

String

数据来源的类型,可选值为dataset、obs、swr、model、label_task、service、image。

value

Map<String,Object>

数据的值。

used_steps

Array of strings

使用数据的节点。

表11 WorkflowParameter

参数

是否必选

参数类型

描述

name

String

Workflow工作流配置参数的名称。填写1-64位,仅包含英文、数字、下划线(_)和中划线(-),并且以英文开头的名称。

type

String

参数的类型,枚举值如下:

  • str:字符串

  • int:整型

  • bool:布尔类型

  • float:浮点型

description

String

Workflow工作流配置参数的描述。

example

Object

Workflow工作流配置参数的样例。

delay

Boolean

是否为延迟输入的参数,默认为否。

default

Object

配置参数的默认值。

value

Object

参数值。

enum

Array of objects

Workflow工作流配置参数的枚举项。

used_steps

Array of strings

使用这个参数的工作流节点。

format

String

数据格式。

constraint

Map<String,Object>

限制条件。

表12 WorkflowGallerySubscription

参数

是否必选

参数类型

描述

content_id

String

资产ID。

version_id

String

版本ID。

expired_at

String

超期时间。

表13 ExecutionBrief

参数

是否必选

参数类型

描述

execution_id

String

工作流执行ID。

created_at

String

工作流执行的创建时间。

status

String

工作流状态。

running_steps

Array of strings

运行的节点。

current_steps

Array of strings

当前节点。

duration

Long

运行时长。

表14 WorkflowStorage

参数

是否必选

参数类型

描述

name

String

工作流存储的名称。填写1-64位,只包含英文、数字、下划线(_)和中划线(-),并且以英文开头的名称。

type

String

工作流存储的类型,当前只支持obs。

path

String

统一存储的根路径,当前只支持OBS路径。

表15 WorkflowAsset

参数

是否必选

参数类型

描述

name

String

资产名称。

type

String

资产类型,枚举如下:

  • algorithm:算法

  • algorithm2:新算法

  • model:模型算法

content_id

String

资产ID,可在AI Gallery中获取。

subscription_id

String

订阅ID,可在AI Gallery中获取。

expired_at

String

超期时间。

表16 WorkflowSubgraph

参数

是否必选

参数类型

描述

name

String

子图名称。

steps

Array of strings

子图step成员。

表17 WorkflowPolicy

参数

是否必选

参数类型

描述

use_scene

String

使用场景。

scene_id

String

场景ID。

scenes

Array of Scene objects

场景。

表18 Scene

参数

是否必选

参数类型

描述

id

String

场景ID。

name

String

场景名称。

steps

Array of strings

节点列表。

表19 WorkflowServicePackege

参数

是否必选

参数类型

描述

package_id

String

资源包的UUID。

status

String

资源包状态。

pool_id

String

资源池ID。

service_id

String

服务ID。

workflow_id

String

Workflow工作流ID。

order

WorkflowPoolOrder object

订阅信息。

consume_limit

Long

订阅限制。

current_consume

Long

当前订阅。

current_date

String

当前时间。

limit_enable

Boolean

限制标记。

created_at

String

创建时间。

表20 WorkflowPoolOrder

参数

是否必选

参数类型

描述

id

String

订阅ID。

sku

SkuInfo object

订阅计费信息。

sku_count

String

订阅计数。

表21 SkuInfo

参数

是否必选

参数类型

描述

code

String

计费码。

period

String

计费时期。

queries_limit

Long

查询次数。

price

Float

价格。

响应参数

状态码: 201

表22 响应Body参数

参数

参数类型

描述

name

String

Workflow工作流名称,1到64位只包含中英文、数字、空格、下划线(_)和中划线(-),并且以中英文开头。

workflow_id

String

Workflow工作流ID。创建工作流时后台自动生成。

created_at

String

Workflow工作流的创建时间。

description

String

Workflow工作流的描述信息。

steps

Array of WorkflowStep objects

Workflow工作流包含的步骤定义。

user_name

String

创建Workflow工作流的用户名。

workspace_id

String

工作空间ID。

data_requirements

Array of DataRequirement objects

Workflow需要的数据。

data

Array of Data objects

Workflow包含的数据。

parameters

Array of WorkflowParameter objects

Workflow包含的参数。

source_workflow_id

String

从指定Workflow工作流进行复制。通过复制来创建Workflow时必填。

gallery_subscription

WorkflowGallerySubscription object

来自市场订阅的Workflow。

latest_execution

ExecutionBrief object

最后一次执行工作流的概要信息。

run_count

Integer

工作流的已运行次数。

param_ready

Boolean

当前工作流的必选参数是否都已填完。

source

String

工作流来源,可选值为ai_gallery,表示工作流是从AI Gallery导入的。

storages

Array of WorkflowStorage objects

Workflow包含的统一存储定义。

labels

Array of strings

为Workflow工作流设置的标签。

assets

Array of WorkflowAsset objects

工作流绑定的资产。

sub_graphs

Array of WorkflowSubgraph objects

工作流包含的子图。

extend

Map<String,Object>

计费工作流使用的拓展字段。

policy

WorkflowPolicy object

工作流部分运行策略。

with_subscription

Boolean

工作流SMN消息订阅开关,默认为false,表示关闭消息订阅开关。

smn_switch

Boolean

SMN开关。

subscription_id

String

SMN消息订阅ID。

exeml_template_id

String

自动学习模板ID。

last_modified_at

String

最近一次修改的时间。

package

WorkflowServicePackege object

计费工作流订阅包信息。

表23 WorkflowStep

参数

参数类型

描述

name

String

Workflow工作流节点的名称,在一个DAG中唯一,1到64位只包含中英文,数字,空格,下划线(_)和中划线(-),并且以中英文开头。

type

String

节点的类型,枚举值如下:

  • job 训练

  • labeling 标注

  • release_dataset 数据集发布

  • model 模型发布

  • service 服务部署

  • mrs_job MRS作业

  • dataset_import 数据集导入

  • create_dataset 创建数据集

inputs

Array of JobInput objects

节点的输入项。

outputs

Array of JobOutput objects

节点的输出项。

created_at

String

节点的创建时间。

title

String

工作流节点标题。

description

String

节点的描述信息。

properties

Map<String,Object>

节点属性。

depend_steps

Array of strings

运行依赖的前置节点。

conditions

Array of StepCondition objects

节点执行条件。

if_then_steps

Array of strings

条件节点分支。

else_then_steps

Array of strings

条件节点另一分支。

policy

WorkflowStepPolicy object

节点执行策略。

表24 JobInput

参数

参数类型

描述

name

String

输入数据的名称,支持1到64位只包含英文、数字、下划线(_)和中划线(-)的字符。

type

String

输入项类型。枚举值如下:

  • dataset:数据集

  • obs:OBS

  • data_selector:数据选择

data

Object

输入项数据。

value

Object

输入项的值。

表25 JobOutput

参数

参数类型

描述

name

String

输出数据的名称。

type

String

输出项类型。枚举值如下:

  • obs:OBS

  • model:AI应用元模型

config

Map<String,Object>

输出配置。

表26 StepCondition

参数

参数类型

描述

type

String

判断类型,例如==(等于)、!=(不等于)、>(大于)、>=(大于等于)、<(小于)、<=(小于等于)、in(包含)、or(或)。

left

Object

节点执行条件为true时的分支。

right

Object

节点执行条件为false时的分支。

表27 WorkflowStepPolicy

参数

参数类型

描述

poll_interval_seconds

String

节点执行间隔。

max_execution_minutes

String

最大执行时间。

表28 DataRequirement

参数

参数类型

描述

name

String

训练数据的名称。填写1-64位,仅包含英文、数字、下划线(_)和中划线(-),并且以英文开头的名称。

type

String

数据来源类型。枚举值如下:

  • dataset:数据集

  • obs:OBS

  • swr:SWR

  • model_list:AI应用列表

  • label_task:标注任务

  • service:在线服务

conditions

Array of Constraint objects

数据约束条件。

value

Map<String,Object>

数据的值。

used_steps

Array of strings

使用了这条数据的工作流节点。

delay

Boolean

延时参数标记。

表29 Constraint

参数

参数类型

描述

attribute

String

条件属性,参数的某个字段值。

operator

String

操作,当前只支持equal操作。

value

Object

取值。

表30 Data

参数

参数类型

描述

name

String

训练数据的名称。填写1-64位,仅包含英文、数字、下划线(_)和中划线(-),并且以英文开头的名称。

type

String

数据来源的类型,可选值为dataset、obs、swr、model、label_task、service、image。

value

Map<String,Object>

数据的值。

used_steps

Array of strings

使用数据的节点。

表31 WorkflowParameter

参数

参数类型

描述

name

String

Workflow工作流配置参数的名称。填写1-64位,仅包含英文、数字、下划线(_)和中划线(-),并且以英文开头的名称。

type

String

参数的类型,枚举值如下:

  • str:字符串

  • int:整型

  • bool:布尔类型

  • float:浮点型

description

String

Workflow工作流配置参数的描述。

example

Object

Workflow工作流配置参数的样例。

delay

Boolean

是否为延迟输入的参数,默认为否。

default

Object

配置参数的默认值。

value

Object

参数值。

enum

Array of objects

Workflow工作流配置参数的枚举项。

used_steps

Array of strings

使用这个参数的工作流节点。

format

String

数据格式。

constraint

Map<String,Object>

限制条件。

表32 WorkflowGallerySubscription

参数

参数类型

描述

content_id

String

资产ID。

version_id

String

版本ID。

expired_at

String

超期时间。

表33 ExecutionBrief

参数

参数类型

描述

execution_id

String

工作流执行ID。

created_at

String

工作流执行的创建时间。

status

String

工作流状态。

running_steps

Array of strings

运行的节点。

current_steps

Array of strings

当前节点。

duration

Long

运行时长。

表34 WorkflowStorage

参数

参数类型

描述

name

String

工作流存储的名称。填写1-64位,只包含英文、数字、下划线(_)和中划线(-),并且以英文开头的名称。

type

String

工作流存储的类型,当前只支持obs。

path

String

统一存储的根路径,当前只支持OBS路径。

表35 WorkflowAsset

参数

参数类型

描述

name

String

资产名称。

type

String

资产类型,枚举如下:

  • algorithm:算法

  • algorithm2:新算法

  • model:模型算法

content_id

String

资产ID,可在AI Gallery中获取。

subscription_id

String

订阅ID,可在AI Gallery中获取。

expired_at

String

超期时间。

表36 WorkflowSubgraph

参数

参数类型

描述

name

String

子图名称。

steps

Array of strings

子图step成员。

表37 WorkflowPolicy

参数

参数类型

描述

use_scene

String

使用场景。

scene_id

String

场景ID。

scenes

Array of Scene objects

场景。

表38 Scene

参数

参数类型

描述

id

String

场景ID。

name

String

场景名称。

steps

Array of strings

节点列表。

表39 WorkflowServicePackege

参数

参数类型

描述

package_id

String

资源包的UUID。

status

String

资源包状态。

pool_id

String

资源池ID。

service_id

String

服务ID。

workflow_id

String

Workflow工作流ID。

order

WorkflowPoolOrder object

订阅信息。

consume_limit

Long

订阅限制。

current_consume

Long

当前订阅。

current_date

String

当前时间。

limit_enable

Boolean

限制标记。

created_at

String

创建时间。

表40 WorkflowPoolOrder

参数

参数类型

描述

id

String

订阅ID。

sku

SkuInfo object

订阅计费信息。

sku_count

String

订阅计数。

表41 SkuInfo

参数

参数类型

描述

code

String

计费码。

period

String

计费时期。

queries_limit

Long

查询次数。

price

Float

价格。

请求示例

创建Workflow工作流。设置工作流名称为“graph-test-has-condition-step”。

POST https://{endpoint}/v2/{project_id}/workflows

{
  "name" : "graph-test-has-condition-step",
  "description" : "",
  "workspace_id" : "0",
  "steps" : [ {
    "name" : "condition_step_test",
    "title" : "condition_step_test",
    "description" : "",
    "type" : "condition",
    "conditions" : [ {
      "type" : "==",
      "left" : "$ref/parameters/is_true",
      "right" : true
    } ],
    "if_then_steps" : [ "training_job1" ],
    "else_then_steps" : [ "training_job2" ],
    "policy" : { }
  }, {
    "name" : "training_job1",
    "title" : "labeling",
    "description" : "",
    "type" : "job",
    "inputs" : [ {
      "name" : "data_url",
      "type" : "obs",
      "data" : "$ref/data/a2ff296da618452daa8243399f06db8e"
    } ],
    "outputs" : [ {
      "name" : "train_url",
      "type" : "obs",
      "config" : {
        "obs_url" : "/test-lh/test-metrics/"
      }
    }, {
      "name" : "service-link",
      "type" : "service_content",
      "config" : {
        "config_file" : "$ref/parameters/service_config1"
      }
    } ],
    "properties" : {
      "algorithm" : {
        "id" : "21ef85a8-5e40-4618-95ee-aa48ec224b43",
        "parameters" : [ ]
      },
      "kind" : "job",
      "metadata" : {
        "name" : "workflow-b0b9fa4c06254b2ebb0e48ba1f7a916c"
      },
      "spec" : {
        "resource" : {
          "flavor_id" : "$ref/parameters/train_spec",
          "node_count" : 1,
          "policy" : "regular"
        }
      }
    },
    "depend_steps" : [ "condition_step_test" ],
    "policy" : { }
  }, {
    "name" : "training_job2",
    "title" : "labeling",
    "description" : "",
    "type" : "job",
    "inputs" : [ {
      "name" : "data_url",
      "type" : "obs",
      "data" : "$ref/data/f78e46676a454ccdacb9907f589f8d67"
    } ],
    "outputs" : [ {
      "name" : "train_url",
      "type" : "obs",
      "config" : {
        "obs_url" : "/test-lh/test-metrics/"
      }
    }, {
      "name" : "service-link",
      "type" : "service_content",
      "config" : {
        "config_file" : "$ref/parameters/service_config2"
      }
    } ],
    "properties" : {
      "algorithm" : {
        "id" : "21ef85a8-5e40-4618-95ee-aa48ec224b43",
        "parameters" : [ ]
      },
      "kind" : "job",
      "metadata" : {
        "name" : "workflow-4a4317eb49ad4370bd087e6b726d84cf"
      },
      "spec" : {
        "resource" : {
          "flavor_id" : "$ref/parameters/train_spec",
          "node_count" : 1,
          "policy" : "regular"
        }
      }
    },
    "depend_steps" : [ "condition_step_test" ],
    "policy" : { }
  }, {
    "name" : "training_job3",
    "title" : "labeling",
    "description" : "",
    "type" : "job",
    "inputs" : [ {
      "name" : "data_url",
      "type" : "obs",
      "data" : "$ref/data/dee65054c96b4bf3b7ac98c0709f9ae0"
    } ],
    "outputs" : [ {
      "name" : "train_url",
      "type" : "obs",
      "config" : {
        "obs_url" : "/test-lh/test-metrics/"
      }
    }, {
      "name" : "service-link",
      "type" : "service_content",
      "config" : {
        "config_file" : "$ref/parameters/service_config3"
      }
    } ],
    "properties" : {
      "algorithm" : {
        "id" : "21ef85a8-5e40-4618-95ee-aa48ec224b43",
        "parameters" : [ ]
      },
      "kind" : "job",
      "metadata" : {
        "name" : "workflow-3039303b3ae14f3e9eed416ba6361b1f"
      },
      "spec" : {
        "resource" : {
          "flavor_id" : "$ref/parameters/train_spec",
          "node_count" : 1,
          "policy" : "regular"
        }
      }
    },
    "depend_steps" : [ "training_job1", "training_job2" ],
    "policy" : { }
  } ],
  "labels" : [ "subgraph" ],
  "data" : [ {
    "name" : "a2ff296da618452daa8243399f06db8e",
    "type" : "obs",
    "value" : {
      "obs_url" : "/test-lh/test-metrics/"
    },
    "used_steps" : [ "training_job1" ]
  }, {
    "name" : "f78e46676a454ccdacb9907f589f8d67",
    "type" : "obs",
    "value" : {
      "obs_url" : "/test-lh/test-metrics/"
    },
    "used_steps" : [ "training_job2" ]
  }, {
    "name" : "dee65054c96b4bf3b7ac98c0709f9ae0",
    "type" : "obs",
    "value" : {
      "obs_url" : "/test-lh/test-metrics/"
    },
    "used_steps" : [ "training_job3" ]
  } ],
  "parameters" : [ {
    "name" : "is_true",
    "type" : "bool",
    "delay" : true,
    "value" : true,
    "used_steps" : [ "condition_step_test" ]
  }, {
    "name" : "train_spec",
    "type" : "str",
    "format" : "flavor",
    "description" : "training specification",
    "default" : "modelarts.vm.cpu.8u",
    "used_steps" : [ "training_job1", "training_job2", "training_job3" ]
  }, {
    "name" : "service_config1",
    "type" : "str",
    "default" : "/test-lh/test-metrics/metrics.json",
    "used_steps" : [ "training_job1" ]
  }, {
    "name" : "service_config2",
    "type" : "str",
    "default" : "/test-lh/test-metrics/metrics.json",
    "used_steps" : [ "training_job2" ]
  }, {
    "name" : "service_config3",
    "type" : "str",
    "default" : "/test-lh/test-metrics/metrics.json",
    "used_steps" : [ "training_job3" ]
  } ]
}

响应示例

状态码: 201

OK

{
  "name" : "graph-test-has-condition-step",
  "description" : "",
  "workspace_id" : "0",
  "steps" : [ {
    "name" : "condition_step_test",
    "title" : "condition_step_test",
    "description" : "",
    "type" : "condition",
    "conditions" : [ {
      "type" : "==",
      "left" : "$ref/parameters/is_true",
      "right" : true
    } ],
    "if_then_steps" : [ "training_job1" ],
    "else_then_steps" : [ "training_job2" ],
    "policy" : { }
  }, {
    "name" : "training_job1",
    "title" : "labeling",
    "description" : "",
    "type" : "job",
    "inputs" : [ {
      "name" : "data_url",
      "type" : "obs",
      "data" : "$ref/data/a2ff296da618452daa8243399f06db8e"
    } ],
    "outputs" : [ {
      "name" : "train_url",
      "type" : "obs",
      "config" : {
        "obs_url" : "/test-lh/test-metrics/"
      }
    }, {
      "name" : "service-link",
      "type" : "service_content",
      "config" : {
        "config_file" : "$ref/parameters/service_config1"
      }
    } ],
    "properties" : {
      "algorithm" : {
        "id" : "21ef85a8-5e40-4618-95ee-aa48ec224b43",
        "parameters" : [ ]
      },
      "kind" : "job",
      "metadata" : {
        "name" : "workflow-b0b9fa4c06254b2ebb0e48ba1f7a916c"
      },
      "spec" : {
        "resource" : {
          "flavor_id" : "$ref/parameters/train_spec",
          "node_count" : 1,
          "policy" : "regular"
        }
      }
    },
    "depend_steps" : [ "condition_step_test" ],
    "policy" : { }
  }, {
    "name" : "training_job2",
    "title" : "labeling",
    "description" : "",
    "type" : "job",
    "inputs" : [ {
      "name" : "data_url",
      "type" : "obs",
      "data" : "$ref/data/f78e46676a454ccdacb9907f589f8d67"
    } ],
    "outputs" : [ {
      "name" : "train_url",
      "type" : "obs",
      "config" : {
        "obs_url" : "/test-lh/test-metrics/"
      }
    }, {
      "name" : "service-link",
      "type" : "service_content",
      "config" : {
        "config_file" : "$ref/parameters/service_config2"
      }
    } ],
    "properties" : {
      "algorithm" : {
        "id" : "21ef85a8-5e40-4618-95ee-aa48ec224b43",
        "parameters" : [ ]
      },
      "kind" : "job",
      "metadata" : {
        "name" : "workflow-4a4317eb49ad4370bd087e6b726d84cf"
      },
      "spec" : {
        "resource" : {
          "flavor_id" : "$ref/parameters/train_spec",
          "node_count" : 1,
          "policy" : "regular"
        }
      }
    },
    "depend_steps" : [ "condition_step_test" ],
    "policy" : { }
  }, {
    "name" : "training_job3",
    "title" : "labeling",
    "description" : "",
    "type" : "job",
    "inputs" : [ {
      "name" : "data_url",
      "type" : "obs",
      "data" : "$ref/data/dee65054c96b4bf3b7ac98c0709f9ae0"
    } ],
    "outputs" : [ {
      "name" : "train_url",
      "type" : "obs",
      "config" : {
        "obs_url" : "/test-lh/test-metrics/"
      }
    }, {
      "name" : "service-link",
      "type" : "service_content",
      "config" : {
        "config_file" : "$ref/parameters/service_config3"
      }
    } ],
    "properties" : {
      "algorithm" : {
        "id" : "21ef85a8-5e40-4618-95ee-aa48ec224b43",
        "parameters" : [ ]
      },
      "kind" : "job",
      "metadata" : {
        "name" : "workflow-3039303b3ae14f3e9eed416ba6361b1f"
      },
      "spec" : {
        "resource" : {
          "flavor_id" : "$ref/parameters/train_spec",
          "node_count" : 1,
          "policy" : "regular"
        }
      }
    },
    "depend_steps" : [ "training_job1", "training_job2" ],
    "policy" : { }
  } ],
  "labels" : [ "subgraph" ],
  "data" : [ {
    "name" : "a2ff296da618452daa8243399f06db8e",
    "type" : "obs",
    "value" : {
      "obs_url" : "/test-lh/test-metrics/"
    },
    "used_steps" : [ "training_job1" ]
  }, {
    "name" : "f78e46676a454ccdacb9907f589f8d67",
    "type" : "obs",
    "value" : {
      "obs_url" : "/test-lh/test-metrics/"
    },
    "used_steps" : [ "training_job2" ]
  }, {
    "name" : "dee65054c96b4bf3b7ac98c0709f9ae0",
    "type" : "obs",
    "value" : {
      "obs_url" : "/test-lh/test-metrics/"
    },
    "used_steps" : [ "training_job3" ]
  } ],
  "parameters" : [ {
    "name" : "is_true",
    "type" : "bool",
    "delay" : true,
    "value" : true,
    "used_steps" : [ "condition_step_test" ]
  }, {
    "name" : "train_spec",
    "type" : "str",
    "format" : "flavor",
    "description" : "training specificaiton",
    "default" : "modelarts.vm.cpu.8u",
    "used_steps" : [ "training_job1", "training_job2", "training_job3" ]
  }, {
    "name" : "service_config1",
    "type" : "str",
    "default" : "/test-lh/test-metrics/metrics.json",
    "used_steps" : [ "training_job1" ]
  }, {
    "name" : "service_config2",
    "type" : "str",
    "default" : "/test-lh/test-metrics/metrics.json",
    "used_steps" : [ "training_job2" ]
  }, {
    "name" : "service_config3",
    "type" : "str",
    "default" : "/test-lh/test-metrics/metrics.json",
    "used_steps" : [ "training_job3" ]
  } ]
}

状态码

状态码

描述

201

OK

错误码

请参见错误码

相关文档