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

管理Workflow Execution

功能介绍

本接口支持对Workflow Execution进行停止或重跑操作。

接口约束

调试

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

URI

POST /v2/{project_id}/workflows/{workflow_id}/executions/{execution_id}/actions

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

workflow_id

String

工作流的ID。

execution_id

String

工作流执行ID。

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

action_name

String

操作名称,枚举如下:

  • stop 停止

  • rerun 重跑

policies

ExecutionActionPolicy object

动作策略。

parameters

Array of WorkflowParameter objects

参数。

data_requirements

Array of DataRequirement objects

需要的数据。

表3 ExecutionActionPolicy

参数

是否必选

参数类型

描述

rerun_steps

Array of strings

重跑的节点。

表4 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>

限制条件。

表5 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

延时参数标记。

表6 Constraint

参数

是否必选

参数类型

描述

attribute

String

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

operator

String

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

value

Object

取值。

响应参数

状态码: 201

表7 响应Body参数

参数

参数类型

描述

created_at

String

创建时间。

name

String

执行记录名称。

execution_id

String

工作流执行ID。

description

String

执行记录描述。

status

String

执行记录状态。

workspace_id

String

工作空间ID。

workflow_id

String

Workflow工作流ID。

workflow_name

String

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

scene_id

String

自定义场景ID。

scene_name

String

自定义场景名称。

steps_execution

Array of StepExecution objects

执行记录的step。

sub_graphs

Array of WorkflowSubgraph objects

子图。

duration

String

执行的时长。

events

Array of strings

执行的事件。

labels

Array of strings

为执行记录设置的标签。

data_requirements

Array of DataRequirement objects

节点steps使用到的数据。

parameters

Array of WorkflowParameter objects

节点steps使用到的参数。

policies

WorkflowDagPolicies object

执行记录使用到的执行策略。

表8 StepExecution

参数

参数类型

描述

step_name

String

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

uuid

String

唯一标识uuid。创建节点执行时,后台自动生成。

created_at

String

Execution执行的创建时间。

duration

Integer

Execution执行的运行时长。

type

String

节点的类型。

instance_id

String

实例ID。

status

String

节点的状态。枚举值如下:

  • init:初始化

  • wait_inputs:等待输入

  • pending:等待

  • creating:创建中

  • created:创建成功

  • create_failed:创建失败

  • running:运行中

  • stopping:停止中

  • stopped:停止

  • timeout:超时

  • completed:完成

  • failed:失败

  • hold:持有

  • skipped:跳过

inputs

Array of JobInput objects

节点的输入项。

outputs

Array of JobOutput objects

节点的输出项。

step_uuid

String

节点的UUID,唯一性标识。

properties

Map<String,Object>

节点的属性。

events

Array of strings

节点发生的事件。

error_info

WorkflowErrorInfo object

Execution执行的错误信息。

policy

WorkflowStepExecutionPolicy object

节点的执行策略。

conditions_execution

WorkflowConditionExecution object

条件执行。

step_title

String

节点标题。

conditions

Array of StepCondition objects

条件节点执行条件。

表9 JobInput

参数

参数类型

描述

name

String

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

type

String

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

  • dataset:数据集

  • obs:OBS

  • data_selector:数据选择

data

Object

输入项数据。

value

Object

输入项的值。

表10 JobOutput

参数

参数类型

描述

name

String

输出数据的名称。

type

String

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

  • obs:OBS

  • model:AI应用元模型

config

Map<String,Object>

输出配置。

表11 WorkflowErrorInfo

参数

参数类型

描述

error_code

String

错误码。

error_message

String

错误信息。

表12 WorkflowStepExecutionPolicy

参数

参数类型

描述

execution_policy

String

执行策略,可选值如下:

  • retry:重试

  • stop:停止

  • continue:继续运行

use_cache

Boolean

是否使用的是缓存。

表13 WorkflowConditionExecution

参数

参数类型

描述

result

String

执行结果。

metric_list

Array of WorkflowMetricPair objects

工作流度量信息列表。

表14 WorkflowMetricPair

参数

参数类型

描述

key

String

度量信息metric的key。

value

Object

度量信息metric的值。

表15 StepCondition

参数

参数类型

描述

type

String

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

left

Object

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

right

Object

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

表16 WorkflowSubgraph

参数

参数类型

描述

name

String

子图名称。

steps

Array of strings

子图step成员。

表17 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

延时参数标记。

表18 Constraint

参数

参数类型

描述

attribute

String

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

operator

String

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

value

Object

取值。

表19 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>

限制条件。

表20 WorkflowDagPolicies

参数

参数类型

描述

use_cache

Boolean

是否使用缓存。

请求示例

停止工作流

POST https://{endpoint}/v2/{project_id}/workflows/{workflow_id}/executions/4dd2a2f5-bde2-45dd-af6b-5e5d570118d1/actions

{
  "action_name" : "stop"
}

响应示例

状态码: 201

OK

{
  "created_at" : "2022-08-25T17:01:52.490825+08:00",
  "name" : "execution-005",
  "execution_id" : "4dd2a2f5-bde2-45dd-af6b-5e5d570118d1",
  "description" : "",
  "status" : "running",
  "workspace_id" : "0",
  "workflow_id" : "bd0ac50e-69b1-4d20-ae38-abb221084fc6",
  "workflow_name" : "workflow-service-infer",
  "steps_execution" : [ {
    "created_at" : "2022-08-25T17:01:52.500034+08:00",
    "uuid" : "54979c30-cc48-4eaa-8b0f-b6eb6e000bb5",
    "step_name" : "service_step",
    "step_title" : "service_step",
    "status" : "wait_inputs",
    "duration" : 1,
    "events" : [ "2022-08-25 17:01:53 change status from init to wait_inputs" ],
    "policy" : { }
  } ],
  "duration" : 1,
  "events" : [ "2022-08-25 17:01:53 step service_step change status from init to wait_inputs" ],
  "data_requirements" : [ {
    "name" : "si_placeholder1",
    "type" : "model_list",
    "delay" : true,
    "conditions" : [ {
      "attribute" : "model_name",
      "operator" : "equal",
      "value" : "model_test444444222222"
    } ],
    "used_steps" : [ "service_step" ]
  }, {
    "name" : "si_placeholder2",
    "type" : "model_list",
    "delay" : true,
    "conditions" : [ {
      "attribute" : "model_name",
      "operator" : "equal",
      "value" : "model_test444444222222"
    }, {
      "attribute" : "envs",
      "operator" : "equal",
      "value" : {
        "infer_address" : "$ref/consumptions/service_step/service_output/access_address"
      }
    } ],
    "used_steps" : [ "service_step2" ]
  } ],
  "parameters" : [ {
    "name" : "schedule_KZ27",
    "type" : "int",
    "format" : "schedule",
    "description" : "Set how long the deployed service will stop in hours, where -1 means the service will always run",
    "delay" : true,
    "used_steps" : [ "service_step", "service_step2" ]
  }, {
    "name" : "placeholder_name",
    "type" : "str",
    "value" : "model_test4444",
    "used_steps" : [ "service_step", "service_step2" ]
  } ],
  "policies" : { }
}

状态码

状态码

描述

201

OK

错误码

请参见错误码

相关文档