pai/libs/alibabacloud_paiflow20210202/models.py (3,140 lines of code) (raw):
# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
from Tea.model import TeaModel
from typing import Dict, List, Any
class Pipeline(TeaModel):
def __init__(
self,
gmt_create_time: str = None,
gmt_modified_time: str = None,
identifier: str = None,
pipeline_id: str = None,
provider: str = None,
uuid: str = None,
version: str = None,
workspace_id: str = None,
):
# 创建UTC时间,日期格式iso8601。
self.gmt_create_time = gmt_create_time
# 修改UTC时间,日期格式iso8601。
self.gmt_modified_time = gmt_modified_time
# Pipeline标识。
self.identifier = identifier
# Pipeline ID。
self.pipeline_id = pipeline_id
# 用户自定义Pipeline时,为用户ID。 官方Pipeline为pai。
self.provider = provider
# Pipeline当前版本标识,用户每次更新,会生成该uuid。
self.uuid = uuid
# Pipeline版本。
self.version = version
# AI工作空间ID。
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.gmt_create_time is not None:
result['GmtCreateTime'] = self.gmt_create_time
if self.gmt_modified_time is not None:
result['GmtModifiedTime'] = self.gmt_modified_time
if self.identifier is not None:
result['Identifier'] = self.identifier
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.provider is not None:
result['Provider'] = self.provider
if self.uuid is not None:
result['Uuid'] = self.uuid
if self.version is not None:
result['Version'] = self.version
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('GmtCreateTime') is not None:
self.gmt_create_time = m.get('GmtCreateTime')
if m.get('GmtModifiedTime') is not None:
self.gmt_modified_time = m.get('GmtModifiedTime')
if m.get('Identifier') is not None:
self.identifier = m.get('Identifier')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('Provider') is not None:
self.provider = m.get('Provider')
if m.get('Uuid') is not None:
self.uuid = m.get('Uuid')
if m.get('Version') is not None:
self.version = m.get('Version')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class Run(TeaModel):
def __init__(
self,
accessibility: str = None,
duration: int = None,
experiment_id: str = None,
finished_at: int = None,
gmt_create_time: str = None,
gmt_modified_time: str = None,
message: str = None,
name: str = None,
node_id: str = None,
parent_user_id: str = None,
run_id: str = None,
source: str = None,
started_at: int = None,
status: str = None,
user_id: str = None,
workspace_id: str = None,
):
# 实验可见度,目前有PUBLIC(公开)、PRIVATE(私有)。
self.accessibility = accessibility
# 运行时长,单位为秒。
self.duration = duration
# 实验ID。
self.experiment_id = experiment_id
# Run运行完成时间。
self.finished_at = finished_at
# Run的创建UTC时间,格式iso8601。
self.gmt_create_time = gmt_create_time
# Run最近修改的UTC时间,格式iso8601。
self.gmt_modified_time = gmt_modified_time
# 错误信息。
self.message = message
# Run的名称。
self.name = name
# 节点ID。
self.node_id = node_id
# Owner ID。
self.parent_user_id = parent_user_id
# Run ID。
self.run_id = run_id
# 来源。
self.source = source
# Run运行开始时间。
self.started_at = started_at
# Run的状态,目前如下几种状态。 Initialized Running Succeeded Failed Suspended Terminated Unknown Skipped Terminating
self.status = status
# 创建人ID。
self.user_id = user_id
# 所属工作空间ID。
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.accessibility is not None:
result['Accessibility'] = self.accessibility
if self.duration is not None:
result['Duration'] = self.duration
if self.experiment_id is not None:
result['ExperimentId'] = self.experiment_id
if self.finished_at is not None:
result['FinishedAt'] = self.finished_at
if self.gmt_create_time is not None:
result['GmtCreateTime'] = self.gmt_create_time
if self.gmt_modified_time is not None:
result['GmtModifiedTime'] = self.gmt_modified_time
if self.message is not None:
result['Message'] = self.message
if self.name is not None:
result['Name'] = self.name
if self.node_id is not None:
result['NodeId'] = self.node_id
if self.parent_user_id is not None:
result['ParentUserId'] = self.parent_user_id
if self.run_id is not None:
result['RunId'] = self.run_id
if self.source is not None:
result['Source'] = self.source
if self.started_at is not None:
result['StartedAt'] = self.started_at
if self.status is not None:
result['Status'] = self.status
if self.user_id is not None:
result['UserId'] = self.user_id
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Accessibility') is not None:
self.accessibility = m.get('Accessibility')
if m.get('Duration') is not None:
self.duration = m.get('Duration')
if m.get('ExperimentId') is not None:
self.experiment_id = m.get('ExperimentId')
if m.get('FinishedAt') is not None:
self.finished_at = m.get('FinishedAt')
if m.get('GmtCreateTime') is not None:
self.gmt_create_time = m.get('GmtCreateTime')
if m.get('GmtModifiedTime') is not None:
self.gmt_modified_time = m.get('GmtModifiedTime')
if m.get('Message') is not None:
self.message = m.get('Message')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('NodeId') is not None:
self.node_id = m.get('NodeId')
if m.get('ParentUserId') is not None:
self.parent_user_id = m.get('ParentUserId')
if m.get('RunId') is not None:
self.run_id = m.get('RunId')
if m.get('Source') is not None:
self.source = m.get('Source')
if m.get('StartedAt') is not None:
self.started_at = m.get('StartedAt')
if m.get('Status') is not None:
self.status = m.get('Status')
if m.get('UserId') is not None:
self.user_id = m.get('UserId')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class CreatePipelineRequest(TeaModel):
def __init__(
self,
manifest: str = None,
workspace_id: str = None,
):
self.manifest = manifest
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.manifest is not None:
result['Manifest'] = self.manifest
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Manifest') is not None:
self.manifest = m.get('Manifest')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class CreatePipelineResponseBody(TeaModel):
def __init__(
self,
pipeline_id: str = None,
request_id: str = None,
):
self.pipeline_id = pipeline_id
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class CreatePipelineResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: CreatePipelineResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = CreatePipelineResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class CreatePipelineReleaseRequest(TeaModel):
def __init__(
self,
target_pipeline_provider: str = None,
):
self.target_pipeline_provider = target_pipeline_provider
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.target_pipeline_provider is not None:
result['TargetPipelineProvider'] = self.target_pipeline_provider
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('TargetPipelineProvider') is not None:
self.target_pipeline_provider = m.get('TargetPipelineProvider')
return self
class CreatePipelineReleaseResponseBody(TeaModel):
def __init__(
self,
pipeline_id: str = None,
request_id: str = None,
):
self.pipeline_id = pipeline_id
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class CreatePipelineReleaseResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: CreatePipelineReleaseResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = CreatePipelineReleaseResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class CreateRunRequest(TeaModel):
def __init__(
self,
accessibility: str = None,
arguments: str = None,
experiment_id: str = None,
name: str = None,
no_confirm_required: bool = None,
options: str = None,
pipeline_id: str = None,
pipeline_manifest: str = None,
source: str = None,
workspace_id: str = None,
):
# PUBLIC 公开;PRIVATE 私有
self.accessibility = accessibility
# 参数
self.arguments = arguments
# 实验id
self.experiment_id = experiment_id
# Run的名字,若为空,则自动生成名字
self.name = name
# true代表直接启动; false代表只创建run但先不启动
self.no_confirm_required = no_confirm_required
# 选项,json格式
self.options = options
# Pipeline的id; PipelineId和PipelineManifest 二选一
self.pipeline_id = pipeline_id
# Pipeline内容; PipelineId和PipelineManifest 二选一一
self.pipeline_manifest = pipeline_manifest
# 来源,支持如下值:SDK; PAI_STUDIO; M6; UNKNOWN;
self.source = source
# 项目空间id
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.accessibility is not None:
result['Accessibility'] = self.accessibility
if self.arguments is not None:
result['Arguments'] = self.arguments
if self.experiment_id is not None:
result['ExperimentId'] = self.experiment_id
if self.name is not None:
result['Name'] = self.name
if self.no_confirm_required is not None:
result['NoConfirmRequired'] = self.no_confirm_required
if self.options is not None:
result['Options'] = self.options
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.pipeline_manifest is not None:
result['PipelineManifest'] = self.pipeline_manifest
if self.source is not None:
result['Source'] = self.source
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Accessibility') is not None:
self.accessibility = m.get('Accessibility')
if m.get('Arguments') is not None:
self.arguments = m.get('Arguments')
if m.get('ExperimentId') is not None:
self.experiment_id = m.get('ExperimentId')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('NoConfirmRequired') is not None:
self.no_confirm_required = m.get('NoConfirmRequired')
if m.get('Options') is not None:
self.options = m.get('Options')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('PipelineManifest') is not None:
self.pipeline_manifest = m.get('PipelineManifest')
if m.get('Source') is not None:
self.source = m.get('Source')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class CreateRunResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
run_id: str = None,
):
# Id of the request
self.request_id = request_id
# run的id
self.run_id = run_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.run_id is not None:
result['RunId'] = self.run_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('RunId') is not None:
self.run_id = m.get('RunId')
return self
class CreateRunResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: CreateRunResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = CreateRunResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class DeletePipelineResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
):
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class DeletePipelineResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: DeletePipelineResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = DeletePipelineResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class DeleteRunResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
):
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class DeleteRunResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: DeleteRunResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = DeleteRunResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetCallerProviderResponseBody(TeaModel):
def __init__(
self,
provider: str = None,
request_id: str = None,
):
self.provider = provider
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.provider is not None:
result['Provider'] = self.provider
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Provider') is not None:
self.provider = m.get('Provider')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class GetCallerProviderResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetCallerProviderResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetCallerProviderResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetNodeRequest(TeaModel):
def __init__(
self,
depth: int = None,
):
# 查询深度
self.depth = depth
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.depth is not None:
result['Depth'] = self.depth
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Depth') is not None:
self.depth = m.get('Depth')
return self
class GetNodeResponseBodyMetadata(TeaModel):
def __init__(
self,
display_name: str = None,
identifier: str = None,
name: str = None,
namespace: str = None,
node_id: str = None,
node_type: str = None,
provider: str = None,
related_node_ids: List[str] = None,
version: str = None,
):
# 展示名称
self.display_name = display_name
# 标识符
self.identifier = identifier
# 名字
self.name = name
# 所在命名空间
self.namespace = namespace
# 节点 id
self.node_id = node_id
# 节点类型
self.node_type = node_type
# 提供方
self.provider = provider
# Alink逻辑节点所对应的物理节点ID / Alink物理节点所对应的逻辑节点ID
self.related_node_ids = related_node_ids
# 版本
self.version = version
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.display_name is not None:
result['DisplayName'] = self.display_name
if self.identifier is not None:
result['Identifier'] = self.identifier
if self.name is not None:
result['Name'] = self.name
if self.namespace is not None:
result['Namespace'] = self.namespace
if self.node_id is not None:
result['NodeId'] = self.node_id
if self.node_type is not None:
result['NodeType'] = self.node_type
if self.provider is not None:
result['Provider'] = self.provider
if self.related_node_ids is not None:
result['RelatedNodeIds'] = self.related_node_ids
if self.version is not None:
result['Version'] = self.version
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('DisplayName') is not None:
self.display_name = m.get('DisplayName')
if m.get('Identifier') is not None:
self.identifier = m.get('Identifier')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Namespace') is not None:
self.namespace = m.get('Namespace')
if m.get('NodeId') is not None:
self.node_id = m.get('NodeId')
if m.get('NodeType') is not None:
self.node_type = m.get('NodeType')
if m.get('Provider') is not None:
self.provider = m.get('Provider')
if m.get('RelatedNodeIds') is not None:
self.related_node_ids = m.get('RelatedNodeIds')
if m.get('Version') is not None:
self.version = m.get('Version')
return self
class GetNodeResponseBodySpecInputs(TeaModel):
def __init__(
self,
artifacts: List[Dict[str, Any]] = None,
parameters: List[Dict[str, Any]] = None,
):
# 产物
self.artifacts = artifacts
# 参数
self.parameters = parameters
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.artifacts is not None:
result['Artifacts'] = self.artifacts
if self.parameters is not None:
result['Parameters'] = self.parameters
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Artifacts') is not None:
self.artifacts = m.get('Artifacts')
if m.get('Parameters') is not None:
self.parameters = m.get('Parameters')
return self
class GetNodeResponseBodySpecOutputs(TeaModel):
def __init__(
self,
artifacts: List[Dict[str, Any]] = None,
parameters: List[Dict[str, Any]] = None,
):
# 产物
self.artifacts = artifacts
# 参数
self.parameters = parameters
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.artifacts is not None:
result['Artifacts'] = self.artifacts
if self.parameters is not None:
result['Parameters'] = self.parameters
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Artifacts') is not None:
self.artifacts = m.get('Artifacts')
if m.get('Parameters') is not None:
self.parameters = m.get('Parameters')
return self
class GetNodeResponseBodySpec(TeaModel):
def __init__(
self,
dependencies: List[str] = None,
has_pipelines: bool = None,
inputs: GetNodeResponseBodySpecInputs = None,
outputs: GetNodeResponseBodySpecOutputs = None,
pipelines: List[Dict[str, Any]] = None,
):
# 依赖
self.dependencies = dependencies
# 是否有子 pipeline
self.has_pipelines = has_pipelines
# 输入
self.inputs = inputs
# 输出
self.outputs = outputs
# 子 pipeline 列表
self.pipelines = pipelines
def validate(self):
if self.inputs:
self.inputs.validate()
if self.outputs:
self.outputs.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.dependencies is not None:
result['Dependencies'] = self.dependencies
if self.has_pipelines is not None:
result['HasPipelines'] = self.has_pipelines
if self.inputs is not None:
result['Inputs'] = self.inputs.to_map()
if self.outputs is not None:
result['Outputs'] = self.outputs.to_map()
if self.pipelines is not None:
result['Pipelines'] = self.pipelines
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Dependencies') is not None:
self.dependencies = m.get('Dependencies')
if m.get('HasPipelines') is not None:
self.has_pipelines = m.get('HasPipelines')
if m.get('Inputs') is not None:
temp_model = GetNodeResponseBodySpecInputs()
self.inputs = temp_model.from_map(m['Inputs'])
if m.get('Outputs') is not None:
temp_model = GetNodeResponseBodySpecOutputs()
self.outputs = temp_model.from_map(m['Outputs'])
if m.get('Pipelines') is not None:
self.pipelines = m.get('Pipelines')
return self
class GetNodeResponseBodyStatusInfo(TeaModel):
def __init__(
self,
finished_at: str = None,
started_at: str = None,
status: str = None,
):
# 结束时间
self.finished_at = finished_at
# 开始时间
self.started_at = started_at
# 状态
self.status = status
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.finished_at is not None:
result['FinishedAt'] = self.finished_at
if self.started_at is not None:
result['StartedAt'] = self.started_at
if self.status is not None:
result['Status'] = self.status
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('FinishedAt') is not None:
self.finished_at = m.get('FinishedAt')
if m.get('StartedAt') is not None:
self.started_at = m.get('StartedAt')
if m.get('Status') is not None:
self.status = m.get('Status')
return self
class GetNodeResponseBody(TeaModel):
def __init__(
self,
api_version: str = None,
metadata: GetNodeResponseBodyMetadata = None,
request_id: str = None,
spec: GetNodeResponseBodySpec = None,
status_info: GetNodeResponseBodyStatusInfo = None,
):
# api 版本
self.api_version = api_version
# node 的元信息
self.metadata = metadata
# 请求 id
self.request_id = request_id
# 算法体
self.spec = spec
# node 运行状态
self.status_info = status_info
def validate(self):
if self.metadata:
self.metadata.validate()
if self.spec:
self.spec.validate()
if self.status_info:
self.status_info.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.api_version is not None:
result['ApiVersion'] = self.api_version
if self.metadata is not None:
result['Metadata'] = self.metadata.to_map()
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.spec is not None:
result['Spec'] = self.spec.to_map()
if self.status_info is not None:
result['StatusInfo'] = self.status_info.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ApiVersion') is not None:
self.api_version = m.get('ApiVersion')
if m.get('Metadata') is not None:
temp_model = GetNodeResponseBodyMetadata()
self.metadata = temp_model.from_map(m['Metadata'])
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('Spec') is not None:
temp_model = GetNodeResponseBodySpec()
self.spec = temp_model.from_map(m['Spec'])
if m.get('StatusInfo') is not None:
temp_model = GetNodeResponseBodyStatusInfo()
self.status_info = temp_model.from_map(m['StatusInfo'])
return self
class GetNodeResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetNodeResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetNodeResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetPipelineResponseBody(TeaModel):
def __init__(
self,
gmt_create_time: str = None,
gmt_modified_time: str = None,
identifier: str = None,
manifest: str = None,
pipeline_id: str = None,
provider: str = None,
request_id: str = None,
uuid: str = None,
version: str = None,
workspace_id: str = None,
):
self.gmt_create_time = gmt_create_time
self.gmt_modified_time = gmt_modified_time
self.identifier = identifier
self.manifest = manifest
self.pipeline_id = pipeline_id
self.provider = provider
# Id of the request
self.request_id = request_id
self.uuid = uuid
self.version = version
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.gmt_create_time is not None:
result['GmtCreateTime'] = self.gmt_create_time
if self.gmt_modified_time is not None:
result['GmtModifiedTime'] = self.gmt_modified_time
if self.identifier is not None:
result['Identifier'] = self.identifier
if self.manifest is not None:
result['Manifest'] = self.manifest
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.provider is not None:
result['Provider'] = self.provider
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.uuid is not None:
result['Uuid'] = self.uuid
if self.version is not None:
result['Version'] = self.version
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('GmtCreateTime') is not None:
self.gmt_create_time = m.get('GmtCreateTime')
if m.get('GmtModifiedTime') is not None:
self.gmt_modified_time = m.get('GmtModifiedTime')
if m.get('Identifier') is not None:
self.identifier = m.get('Identifier')
if m.get('Manifest') is not None:
self.manifest = m.get('Manifest')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('Provider') is not None:
self.provider = m.get('Provider')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('Uuid') is not None:
self.uuid = m.get('Uuid')
if m.get('Version') is not None:
self.version = m.get('Version')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class GetPipelineResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetPipelineResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetPipelineResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetPipelineSchemaResponseBody(TeaModel):
def __init__(
self,
gmt_create_time: str = None,
gmt_modified_time: str = None,
identifier: str = None,
manifest: str = None,
pipeline_id: str = None,
provider: str = None,
request_id: str = None,
uuid: str = None,
version: str = None,
workspace_id: str = None,
):
self.gmt_create_time = gmt_create_time
self.gmt_modified_time = gmt_modified_time
self.identifier = identifier
self.manifest = manifest
self.pipeline_id = pipeline_id
self.provider = provider
# Id of the request
self.request_id = request_id
self.uuid = uuid
self.version = version
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.gmt_create_time is not None:
result['GmtCreateTime'] = self.gmt_create_time
if self.gmt_modified_time is not None:
result['GmtModifiedTime'] = self.gmt_modified_time
if self.identifier is not None:
result['Identifier'] = self.identifier
if self.manifest is not None:
result['Manifest'] = self.manifest
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.provider is not None:
result['Provider'] = self.provider
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.uuid is not None:
result['Uuid'] = self.uuid
if self.version is not None:
result['Version'] = self.version
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('GmtCreateTime') is not None:
self.gmt_create_time = m.get('GmtCreateTime')
if m.get('GmtModifiedTime') is not None:
self.gmt_modified_time = m.get('GmtModifiedTime')
if m.get('Identifier') is not None:
self.identifier = m.get('Identifier')
if m.get('Manifest') is not None:
self.manifest = m.get('Manifest')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('Provider') is not None:
self.provider = m.get('Provider')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('Uuid') is not None:
self.uuid = m.get('Uuid')
if m.get('Version') is not None:
self.version = m.get('Version')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class GetPipelineSchemaResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetPipelineSchemaResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetPipelineSchemaResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetRunRequest(TeaModel):
def __init__(
self,
manifest_type: str = None,
verbose: bool = None,
):
self.manifest_type = manifest_type
# 是否返回详细信息,目前详细信息包含: RuntimeManifest
self.verbose = verbose
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.manifest_type is not None:
result['ManifestType'] = self.manifest_type
if self.verbose is not None:
result['Verbose'] = self.verbose
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ManifestType') is not None:
self.manifest_type = m.get('ManifestType')
if m.get('Verbose') is not None:
self.verbose = m.get('Verbose')
return self
class GetRunResponseBody(TeaModel):
def __init__(
self,
arguments: str = None,
duration: int = None,
experiment_id: str = None,
finished_at: int = None,
gmt_create_time: str = None,
gmt_modified_time: str = None,
manifest: str = None,
message: str = None,
name: str = None,
node_id: str = None,
options: str = None,
parent_user_id: str = None,
pipeline_id: str = None,
request_id: str = None,
run_id: str = None,
source: str = None,
started_at: int = None,
status: str = None,
user_id: str = None,
workspace_id: str = None,
):
# run的参数
self.arguments = arguments
# run的运行时长,以s为单位
self.duration = duration
# run关联的实验id
self.experiment_id = experiment_id
# run的结束 UTC 时间,格式 iso8601
self.finished_at = finished_at
# 创建时间
self.gmt_create_time = gmt_create_time
# 修改时间
self.gmt_modified_time = gmt_modified_time
# run的manifest
self.manifest = manifest
# 错误消息
self.message = message
# run的名字
self.name = name
# run的根节点id
self.node_id = node_id
# 选项
self.options = options
# 用户主账户的uid
self.parent_user_id = parent_user_id
# pipeline的id
self.pipeline_id = pipeline_id
# Id of the request
self.request_id = request_id
# run的id
self.run_id = run_id
# run的来源
self.source = source
# run的开始 UTC 时间,格式 iso8601
self.started_at = started_at
# run的状态
self.status = status
# 用户uid
self.user_id = user_id
# 工作空间id
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.arguments is not None:
result['Arguments'] = self.arguments
if self.duration is not None:
result['Duration'] = self.duration
if self.experiment_id is not None:
result['ExperimentId'] = self.experiment_id
if self.finished_at is not None:
result['FinishedAt'] = self.finished_at
if self.gmt_create_time is not None:
result['GmtCreateTime'] = self.gmt_create_time
if self.gmt_modified_time is not None:
result['GmtModifiedTime'] = self.gmt_modified_time
if self.manifest is not None:
result['Manifest'] = self.manifest
if self.message is not None:
result['Message'] = self.message
if self.name is not None:
result['Name'] = self.name
if self.node_id is not None:
result['NodeId'] = self.node_id
if self.options is not None:
result['Options'] = self.options
if self.parent_user_id is not None:
result['ParentUserId'] = self.parent_user_id
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.run_id is not None:
result['RunId'] = self.run_id
if self.source is not None:
result['Source'] = self.source
if self.started_at is not None:
result['StartedAt'] = self.started_at
if self.status is not None:
result['Status'] = self.status
if self.user_id is not None:
result['UserId'] = self.user_id
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Arguments') is not None:
self.arguments = m.get('Arguments')
if m.get('Duration') is not None:
self.duration = m.get('Duration')
if m.get('ExperimentId') is not None:
self.experiment_id = m.get('ExperimentId')
if m.get('FinishedAt') is not None:
self.finished_at = m.get('FinishedAt')
if m.get('GmtCreateTime') is not None:
self.gmt_create_time = m.get('GmtCreateTime')
if m.get('GmtModifiedTime') is not None:
self.gmt_modified_time = m.get('GmtModifiedTime')
if m.get('Manifest') is not None:
self.manifest = m.get('Manifest')
if m.get('Message') is not None:
self.message = m.get('Message')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('NodeId') is not None:
self.node_id = m.get('NodeId')
if m.get('Options') is not None:
self.options = m.get('Options')
if m.get('ParentUserId') is not None:
self.parent_user_id = m.get('ParentUserId')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('RunId') is not None:
self.run_id = m.get('RunId')
if m.get('Source') is not None:
self.source = m.get('Source')
if m.get('StartedAt') is not None:
self.started_at = m.get('StartedAt')
if m.get('Status') is not None:
self.status = m.get('Status')
if m.get('UserId') is not None:
self.user_id = m.get('UserId')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class GetRunResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetRunResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetRunResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetRunStatisticsRequest(TeaModel):
def __init__(
self,
experiment_id: str = None,
is_show_all: bool = None,
name: str = None,
pipeline_id: str = None,
scope: str = None,
source: str = None,
status: List[str] = None,
workspace_id: str = None,
):
# 实验的id
self.experiment_id = experiment_id
# 是否统计主账户下所有子账户的数据
self.is_show_all = is_show_all
# run的名字
self.name = name
# pipeline的id
self.pipeline_id = pipeline_id
# run的范围
self.scope = scope
# run的来源
self.source = source
# run的状态
self.status = status
# 工作空间id 该字段仅对Scope为User有效,统计该用户在该工作空间下的数据
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.experiment_id is not None:
result['ExperimentId'] = self.experiment_id
if self.is_show_all is not None:
result['IsShowAll'] = self.is_show_all
if self.name is not None:
result['Name'] = self.name
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.scope is not None:
result['Scope'] = self.scope
if self.source is not None:
result['Source'] = self.source
if self.status is not None:
result['Status'] = self.status
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ExperimentId') is not None:
self.experiment_id = m.get('ExperimentId')
if m.get('IsShowAll') is not None:
self.is_show_all = m.get('IsShowAll')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('Scope') is not None:
self.scope = m.get('Scope')
if m.get('Source') is not None:
self.source = m.get('Source')
if m.get('Status') is not None:
self.status = m.get('Status')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class GetRunStatisticsShrinkRequest(TeaModel):
def __init__(
self,
experiment_id: str = None,
is_show_all: bool = None,
name: str = None,
pipeline_id: str = None,
scope: str = None,
source: str = None,
status_shrink: str = None,
workspace_id: str = None,
):
# 实验的id
self.experiment_id = experiment_id
# 是否统计主账户下所有子账户的数据
self.is_show_all = is_show_all
# run的名字
self.name = name
# pipeline的id
self.pipeline_id = pipeline_id
# run的范围
self.scope = scope
# run的来源
self.source = source
# run的状态
self.status_shrink = status_shrink
# 工作空间id 该字段仅对Scope为User有效,统计该用户在该工作空间下的数据
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.experiment_id is not None:
result['ExperimentId'] = self.experiment_id
if self.is_show_all is not None:
result['IsShowAll'] = self.is_show_all
if self.name is not None:
result['Name'] = self.name
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.scope is not None:
result['Scope'] = self.scope
if self.source is not None:
result['Source'] = self.source
if self.status_shrink is not None:
result['Status'] = self.status_shrink
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ExperimentId') is not None:
self.experiment_id = m.get('ExperimentId')
if m.get('IsShowAll') is not None:
self.is_show_all = m.get('IsShowAll')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('Scope') is not None:
self.scope = m.get('Scope')
if m.get('Source') is not None:
self.source = m.get('Source')
if m.get('Status') is not None:
self.status_shrink = m.get('Status')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class GetRunStatisticsResponseBody(TeaModel):
def __init__(
self,
failed: int = None,
running: int = None,
request_id: str = None,
):
# 失败run的个数
self.failed = failed
# 运行中run的个数
self.running = running
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.failed is not None:
result['Failed'] = self.failed
if self.running is not None:
result['Running'] = self.running
if self.request_id is not None:
result['requestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Failed') is not None:
self.failed = m.get('Failed')
if m.get('Running') is not None:
self.running = m.get('Running')
if m.get('requestId') is not None:
self.request_id = m.get('requestId')
return self
class GetRunStatisticsResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetRunStatisticsResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetRunStatisticsResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListNodeLogsRequest(TeaModel):
def __init__(
self,
from_time_in_seconds: int = None,
keyword: str = None,
offset: int = None,
page_size: int = None,
reverse: bool = None,
to_time_in_seconds: int = None,
):
# 开始时间
self.from_time_in_seconds = from_time_in_seconds
# 搜索词
self.keyword = keyword
# 当前偏移量
self.offset = offset
# 每页返回的log数目
self.page_size = page_size
# 是否倒排
self.reverse = reverse
# 结束时间
self.to_time_in_seconds = to_time_in_seconds
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.from_time_in_seconds is not None:
result['FromTimeInSeconds'] = self.from_time_in_seconds
if self.keyword is not None:
result['Keyword'] = self.keyword
if self.offset is not None:
result['Offset'] = self.offset
if self.page_size is not None:
result['PageSize'] = self.page_size
if self.reverse is not None:
result['Reverse'] = self.reverse
if self.to_time_in_seconds is not None:
result['ToTimeInSeconds'] = self.to_time_in_seconds
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('FromTimeInSeconds') is not None:
self.from_time_in_seconds = m.get('FromTimeInSeconds')
if m.get('Keyword') is not None:
self.keyword = m.get('Keyword')
if m.get('Offset') is not None:
self.offset = m.get('Offset')
if m.get('PageSize') is not None:
self.page_size = m.get('PageSize')
if m.get('Reverse') is not None:
self.reverse = m.get('Reverse')
if m.get('ToTimeInSeconds') is not None:
self.to_time_in_seconds = m.get('ToTimeInSeconds')
return self
class ListNodeLogsResponseBody(TeaModel):
def __init__(
self,
logs: List[str] = None,
request_id: str = None,
total_count: int = None,
):
# 日志列表
self.logs = logs
# 请求 ID
self.request_id = request_id
# 符合过滤条件的作业数量
self.total_count = total_count
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.logs is not None:
result['Logs'] = self.logs
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.total_count is not None:
result['TotalCount'] = self.total_count
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Logs') is not None:
self.logs = m.get('Logs')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('TotalCount') is not None:
self.total_count = m.get('TotalCount')
return self
class ListNodeLogsResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListNodeLogsResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListNodeLogsResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListNodeOutputsRequest(TeaModel):
def __init__(
self,
depth: int = None,
name: str = None,
order: str = None,
page_number: int = None,
page_size: int = None,
sort_by: str = None,
type: str = None,
):
# 节点往下拿多少层子节点
self.depth = depth
# 节点名字
self.name = name
# 排序顺序, 顺序:ASC,倒序:DESC
self.order = order
# 当前页,页码从1开始
self.page_number = page_number
# 每页返回的输出数目
self.page_size = page_size
# 排序字段
self.sort_by = sort_by
# artifact 类型
self.type = type
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.depth is not None:
result['Depth'] = self.depth
if self.name is not None:
result['Name'] = self.name
if self.order is not None:
result['Order'] = self.order
if self.page_number is not None:
result['PageNumber'] = self.page_number
if self.page_size is not None:
result['PageSize'] = self.page_size
if self.sort_by is not None:
result['SortBy'] = self.sort_by
if self.type is not None:
result['Type'] = self.type
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Depth') is not None:
self.depth = m.get('Depth')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Order') is not None:
self.order = m.get('Order')
if m.get('PageNumber') is not None:
self.page_number = m.get('PageNumber')
if m.get('PageSize') is not None:
self.page_size = m.get('PageSize')
if m.get('SortBy') is not None:
self.sort_by = m.get('SortBy')
if m.get('Type') is not None:
self.type = m.get('Type')
return self
class ListNodeOutputsResponseBodyOutputs(TeaModel):
def __init__(
self,
expandable_artifact_name: str = None,
expanded_artifact_index: int = None,
gmt_create_time: str = None,
id: str = None,
info: Dict[str, Any] = None,
name: str = None,
node_id: str = None,
producer: str = None,
type: str = None,
value: str = None,
):
# 可扩展artifact的名字
self.expandable_artifact_name = expandable_artifact_name
# 被扩展artifact的索引号,以0开始
self.expanded_artifact_index = expanded_artifact_index
# 创建时间
self.gmt_create_time = gmt_create_time
# id
self.id = id
# artifact内容
self.info = info
# 名字
self.name = name
# 输出所属节点 id
self.node_id = node_id
# rtifact生产者
self.producer = producer
# 类型
self.type = type
# 输出内容
self.value = value
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.expandable_artifact_name is not None:
result['ExpandableArtifactName'] = self.expandable_artifact_name
if self.expanded_artifact_index is not None:
result['ExpandedArtifactIndex'] = self.expanded_artifact_index
if self.gmt_create_time is not None:
result['GmtCreateTime'] = self.gmt_create_time
if self.id is not None:
result['Id'] = self.id
if self.info is not None:
result['Info'] = self.info
if self.name is not None:
result['Name'] = self.name
if self.node_id is not None:
result['NodeId'] = self.node_id
if self.producer is not None:
result['Producer'] = self.producer
if self.type is not None:
result['Type'] = self.type
if self.value is not None:
result['Value'] = self.value
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ExpandableArtifactName') is not None:
self.expandable_artifact_name = m.get('ExpandableArtifactName')
if m.get('ExpandedArtifactIndex') is not None:
self.expanded_artifact_index = m.get('ExpandedArtifactIndex')
if m.get('GmtCreateTime') is not None:
self.gmt_create_time = m.get('GmtCreateTime')
if m.get('Id') is not None:
self.id = m.get('Id')
if m.get('Info') is not None:
self.info = m.get('Info')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('NodeId') is not None:
self.node_id = m.get('NodeId')
if m.get('Producer') is not None:
self.producer = m.get('Producer')
if m.get('Type') is not None:
self.type = m.get('Type')
if m.get('Value') is not None:
self.value = m.get('Value')
return self
class ListNodeOutputsResponseBody(TeaModel):
def __init__(
self,
outputs: List[ListNodeOutputsResponseBodyOutputs] = None,
request_id: str = None,
total_count: int = None,
):
# 输出列表
self.outputs = outputs
# 请求ID
self.request_id = request_id
# 符合过滤条件的作业数量
self.total_count = total_count
def validate(self):
if self.outputs:
for k in self.outputs:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['Outputs'] = []
if self.outputs is not None:
for k in self.outputs:
result['Outputs'].append(k.to_map() if k else None)
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.total_count is not None:
result['TotalCount'] = self.total_count
return result
def from_map(self, m: dict = None):
m = m or dict()
self.outputs = []
if m.get('Outputs') is not None:
for k in m.get('Outputs'):
temp_model = ListNodeOutputsResponseBodyOutputs()
self.outputs.append(temp_model.from_map(k))
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('TotalCount') is not None:
self.total_count = m.get('TotalCount')
return self
class ListNodeOutputsResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListNodeOutputsResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListNodeOutputsResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListNodeStatusRequest(TeaModel):
def __init__(
self,
depth: int = None,
type: str = None,
):
# 深度
self.depth = depth
# 类型
self.type = type
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.depth is not None:
result['Depth'] = self.depth
if self.type is not None:
result['Type'] = self.type
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Depth') is not None:
self.depth = m.get('Depth')
if m.get('Type') is not None:
self.type = m.get('Type')
return self
class ListNodeStatusResponseBodyStatus(TeaModel):
def __init__(
self,
finished_at: str = None,
node_id: str = None,
node_name: str = None,
runtime_info: str = None,
started_at: str = None,
status: str = None,
):
# 节点结束运行时间
self.finished_at = finished_at
# 工作流中节点ID
self.node_id = node_id
# 工作流中节点名字
self.node_name = node_name
# 节点运行时信息
self.runtime_info = runtime_info
# 节点开始运行时间
self.started_at = started_at
# 节点运行状态
self.status = status
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.finished_at is not None:
result['FinishedAt'] = self.finished_at
if self.node_id is not None:
result['NodeId'] = self.node_id
if self.node_name is not None:
result['NodeName'] = self.node_name
if self.runtime_info is not None:
result['RuntimeInfo'] = self.runtime_info
if self.started_at is not None:
result['StartedAt'] = self.started_at
if self.status is not None:
result['Status'] = self.status
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('FinishedAt') is not None:
self.finished_at = m.get('FinishedAt')
if m.get('NodeId') is not None:
self.node_id = m.get('NodeId')
if m.get('NodeName') is not None:
self.node_name = m.get('NodeName')
if m.get('RuntimeInfo') is not None:
self.runtime_info = m.get('RuntimeInfo')
if m.get('StartedAt') is not None:
self.started_at = m.get('StartedAt')
if m.get('Status') is not None:
self.status = m.get('Status')
return self
class ListNodeStatusResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
status: List[ListNodeStatusResponseBodyStatus] = None,
):
# 请求ID
self.request_id = request_id
# 工作流任务的节点状态列表
self.status = status
def validate(self):
if self.status:
for k in self.status:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['RequestId'] = self.request_id
result['Status'] = []
if self.status is not None:
for k in self.status:
result['Status'].append(k.to_map() if k else None)
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
self.status = []
if m.get('Status') is not None:
for k in m.get('Status'):
temp_model = ListNodeStatusResponseBodyStatus()
self.status.append(temp_model.from_map(k))
return self
class ListNodeStatusResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListNodeStatusResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListNodeStatusResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListPipelinePrivilegesResponseBody(TeaModel):
def __init__(
self,
actions: List[str] = None,
pipeline_id: str = None,
request_id: str = None,
users: List[str] = None,
):
# [ "DescribeRun", "PutRun", "ListPipeline", "GetPipeline" ]
self.actions = actions
self.pipeline_id = pipeline_id
# Id of the request
self.request_id = request_id
# [ "*" ]
self.users = users
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.actions is not None:
result['Actions'] = self.actions
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.users is not None:
result['Users'] = self.users
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Actions') is not None:
self.actions = m.get('Actions')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('Users') is not None:
self.users = m.get('Users')
return self
class ListPipelinePrivilegesResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListPipelinePrivilegesResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListPipelinePrivilegesResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListPipelinesRequest(TeaModel):
def __init__(
self,
fuzzy_matching: bool = None,
page_number: int = None,
page_size: int = None,
pipeline_identifier: str = None,
pipeline_provider: str = None,
pipeline_version: str = None,
workspace_id: str = None,
):
# 模糊匹配
self.fuzzy_matching = fuzzy_matching
self.page_number = page_number
self.page_size = page_size
self.pipeline_identifier = pipeline_identifier
self.pipeline_provider = pipeline_provider
self.pipeline_version = pipeline_version
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.fuzzy_matching is not None:
result['FuzzyMatching'] = self.fuzzy_matching
if self.page_number is not None:
result['PageNumber'] = self.page_number
if self.page_size is not None:
result['PageSize'] = self.page_size
if self.pipeline_identifier is not None:
result['PipelineIdentifier'] = self.pipeline_identifier
if self.pipeline_provider is not None:
result['PipelineProvider'] = self.pipeline_provider
if self.pipeline_version is not None:
result['PipelineVersion'] = self.pipeline_version
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('FuzzyMatching') is not None:
self.fuzzy_matching = m.get('FuzzyMatching')
if m.get('PageNumber') is not None:
self.page_number = m.get('PageNumber')
if m.get('PageSize') is not None:
self.page_size = m.get('PageSize')
if m.get('PipelineIdentifier') is not None:
self.pipeline_identifier = m.get('PipelineIdentifier')
if m.get('PipelineProvider') is not None:
self.pipeline_provider = m.get('PipelineProvider')
if m.get('PipelineVersion') is not None:
self.pipeline_version = m.get('PipelineVersion')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class ListPipelinesResponseBodyPipelines(TeaModel):
def __init__(
self,
gmt_create_time: str = None,
gmt_modified_time: str = None,
identifier: str = None,
pipeline_id: str = None,
provider: str = None,
uuid: str = None,
version: str = None,
workspace_id: str = None,
):
self.gmt_create_time = gmt_create_time
self.gmt_modified_time = gmt_modified_time
self.identifier = identifier
self.pipeline_id = pipeline_id
self.provider = provider
self.uuid = uuid
self.version = version
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.gmt_create_time is not None:
result['GmtCreateTime'] = self.gmt_create_time
if self.gmt_modified_time is not None:
result['GmtModifiedTime'] = self.gmt_modified_time
if self.identifier is not None:
result['Identifier'] = self.identifier
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.provider is not None:
result['Provider'] = self.provider
if self.uuid is not None:
result['Uuid'] = self.uuid
if self.version is not None:
result['Version'] = self.version
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('GmtCreateTime') is not None:
self.gmt_create_time = m.get('GmtCreateTime')
if m.get('GmtModifiedTime') is not None:
self.gmt_modified_time = m.get('GmtModifiedTime')
if m.get('Identifier') is not None:
self.identifier = m.get('Identifier')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('Provider') is not None:
self.provider = m.get('Provider')
if m.get('Uuid') is not None:
self.uuid = m.get('Uuid')
if m.get('Version') is not None:
self.version = m.get('Version')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class ListPipelinesResponseBody(TeaModel):
def __init__(
self,
pipelines: List[ListPipelinesResponseBodyPipelines] = None,
request_id: str = None,
total_count: int = None,
):
self.pipelines = pipelines
# Id of the request
self.request_id = request_id
self.total_count = total_count
def validate(self):
if self.pipelines:
for k in self.pipelines:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['Pipelines'] = []
if self.pipelines is not None:
for k in self.pipelines:
result['Pipelines'].append(k.to_map() if k else None)
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.total_count is not None:
result['TotalCount'] = self.total_count
return result
def from_map(self, m: dict = None):
m = m or dict()
self.pipelines = []
if m.get('Pipelines') is not None:
for k in m.get('Pipelines'):
temp_model = ListPipelinesResponseBodyPipelines()
self.pipelines.append(temp_model.from_map(k))
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('TotalCount') is not None:
self.total_count = m.get('TotalCount')
return self
class ListPipelinesResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListPipelinesResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListPipelinesResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListRunsRequest(TeaModel):
def __init__(
self,
experiment_id: str = None,
name: str = None,
order: str = None,
page_number: int = None,
page_size: int = None,
pipeline_id: str = None,
pipeline_ids: str = None,
run_id: str = None,
sort_by: str = None,
source: str = None,
status: str = None,
user_id: str = None,
workspace_id: str = None,
):
self.experiment_id = experiment_id
self.name = name
self.order = order
self.page_number = page_number
self.page_size = page_size
self.pipeline_id = pipeline_id
# Pipeline的id集合,只有Source为M6可以使用该参数
self.pipeline_ids = pipeline_ids
self.run_id = run_id
self.sort_by = sort_by
self.source = source
self.status = status
# 用户id
self.user_id = user_id
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.experiment_id is not None:
result['ExperimentId'] = self.experiment_id
if self.name is not None:
result['Name'] = self.name
if self.order is not None:
result['Order'] = self.order
if self.page_number is not None:
result['PageNumber'] = self.page_number
if self.page_size is not None:
result['PageSize'] = self.page_size
if self.pipeline_id is not None:
result['PipelineId'] = self.pipeline_id
if self.pipeline_ids is not None:
result['PipelineIds'] = self.pipeline_ids
if self.run_id is not None:
result['RunId'] = self.run_id
if self.sort_by is not None:
result['SortBy'] = self.sort_by
if self.source is not None:
result['Source'] = self.source
if self.status is not None:
result['Status'] = self.status
if self.user_id is not None:
result['UserId'] = self.user_id
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ExperimentId') is not None:
self.experiment_id = m.get('ExperimentId')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Order') is not None:
self.order = m.get('Order')
if m.get('PageNumber') is not None:
self.page_number = m.get('PageNumber')
if m.get('PageSize') is not None:
self.page_size = m.get('PageSize')
if m.get('PipelineId') is not None:
self.pipeline_id = m.get('PipelineId')
if m.get('PipelineIds') is not None:
self.pipeline_ids = m.get('PipelineIds')
if m.get('RunId') is not None:
self.run_id = m.get('RunId')
if m.get('SortBy') is not None:
self.sort_by = m.get('SortBy')
if m.get('Source') is not None:
self.source = m.get('Source')
if m.get('Status') is not None:
self.status = m.get('Status')
if m.get('UserId') is not None:
self.user_id = m.get('UserId')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class ListRunsResponseBodyRuns(TeaModel):
def __init__(
self,
accessibility: str = None,
duration: int = None,
experiment_id: str = None,
finished_at: int = None,
gmt_create_time: str = None,
gmt_modified_time: str = None,
message: str = None,
name: str = None,
node_id: str = None,
parent_user_id: str = None,
run_id: str = None,
source: str = None,
started_at: int = None,
status: str = None,
user_id: str = None,
workspace_id: str = None,
):
# PUBLIC 公开;PRIVATE 私有
self.accessibility = accessibility
self.duration = duration
self.experiment_id = experiment_id
self.finished_at = finished_at
# 创建时间
self.gmt_create_time = gmt_create_time
# 修改时间
self.gmt_modified_time = gmt_modified_time
self.message = message
self.name = name
self.node_id = node_id
self.parent_user_id = parent_user_id
self.run_id = run_id
self.source = source
self.started_at = started_at
self.status = status
self.user_id = user_id
self.workspace_id = workspace_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.accessibility is not None:
result['Accessibility'] = self.accessibility
if self.duration is not None:
result['Duration'] = self.duration
if self.experiment_id is not None:
result['ExperimentId'] = self.experiment_id
if self.finished_at is not None:
result['FinishedAt'] = self.finished_at
if self.gmt_create_time is not None:
result['GmtCreateTime'] = self.gmt_create_time
if self.gmt_modified_time is not None:
result['GmtModifiedTime'] = self.gmt_modified_time
if self.message is not None:
result['Message'] = self.message
if self.name is not None:
result['Name'] = self.name
if self.node_id is not None:
result['NodeId'] = self.node_id
if self.parent_user_id is not None:
result['ParentUserId'] = self.parent_user_id
if self.run_id is not None:
result['RunId'] = self.run_id
if self.source is not None:
result['Source'] = self.source
if self.started_at is not None:
result['StartedAt'] = self.started_at
if self.status is not None:
result['Status'] = self.status
if self.user_id is not None:
result['UserId'] = self.user_id
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Accessibility') is not None:
self.accessibility = m.get('Accessibility')
if m.get('Duration') is not None:
self.duration = m.get('Duration')
if m.get('ExperimentId') is not None:
self.experiment_id = m.get('ExperimentId')
if m.get('FinishedAt') is not None:
self.finished_at = m.get('FinishedAt')
if m.get('GmtCreateTime') is not None:
self.gmt_create_time = m.get('GmtCreateTime')
if m.get('GmtModifiedTime') is not None:
self.gmt_modified_time = m.get('GmtModifiedTime')
if m.get('Message') is not None:
self.message = m.get('Message')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('NodeId') is not None:
self.node_id = m.get('NodeId')
if m.get('ParentUserId') is not None:
self.parent_user_id = m.get('ParentUserId')
if m.get('RunId') is not None:
self.run_id = m.get('RunId')
if m.get('Source') is not None:
self.source = m.get('Source')
if m.get('StartedAt') is not None:
self.started_at = m.get('StartedAt')
if m.get('Status') is not None:
self.status = m.get('Status')
if m.get('UserId') is not None:
self.user_id = m.get('UserId')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class ListRunsResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
runs: List[ListRunsResponseBodyRuns] = None,
total_count: int = None,
):
# Id of the request
self.request_id = request_id
self.runs = runs
self.total_count = total_count
def validate(self):
if self.runs:
for k in self.runs:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['RequestId'] = self.request_id
result['Runs'] = []
if self.runs is not None:
for k in self.runs:
result['Runs'].append(k.to_map() if k else None)
if self.total_count is not None:
result['TotalCount'] = self.total_count
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
self.runs = []
if m.get('Runs') is not None:
for k in m.get('Runs'):
temp_model = ListRunsResponseBodyRuns()
self.runs.append(temp_model.from_map(k))
if m.get('TotalCount') is not None:
self.total_count = m.get('TotalCount')
return self
class ListRunsResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListRunsResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListRunsResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListRunsStatusRequestNodes(TeaModel):
def __init__(
self,
node_id: str = None,
run_id: str = None,
):
self.node_id = node_id
self.run_id = run_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.node_id is not None:
result['NodeId'] = self.node_id
if self.run_id is not None:
result['RunId'] = self.run_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('NodeId') is not None:
self.node_id = m.get('NodeId')
if m.get('RunId') is not None:
self.run_id = m.get('RunId')
return self
class ListRunsStatusRequest(TeaModel):
def __init__(
self,
nodes: List[ListRunsStatusRequestNodes] = None,
runs: List[str] = None,
workspace_id: str = None,
):
self.nodes = nodes
self.runs = runs
self.workspace_id = workspace_id
def validate(self):
if self.nodes:
for k in self.nodes:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['Nodes'] = []
if self.nodes is not None:
for k in self.nodes:
result['Nodes'].append(k.to_map() if k else None)
if self.runs is not None:
result['Runs'] = self.runs
if self.workspace_id is not None:
result['WorkspaceId'] = self.workspace_id
return result
def from_map(self, m: dict = None):
m = m or dict()
self.nodes = []
if m.get('Nodes') is not None:
for k in m.get('Nodes'):
temp_model = ListRunsStatusRequestNodes()
self.nodes.append(temp_model.from_map(k))
if m.get('Runs') is not None:
self.runs = m.get('Runs')
if m.get('WorkspaceId') is not None:
self.workspace_id = m.get('WorkspaceId')
return self
class ListRunsStatusResponseBodyNodes(TeaModel):
def __init__(
self,
finished_at: str = None,
input_artifact_archived: bool = None,
node_id: str = None,
node_name: str = None,
output_artifact_archived: bool = None,
run_id: str = None,
started_at: str = None,
status: str = None,
):
# 修改 UTC 时间,日期格式 iso8601
self.finished_at = finished_at
# 输入artifact是否已保存
self.input_artifact_archived = input_artifact_archived
# 节点Id
self.node_id = node_id
# 节点名
self.node_name = node_name
# 输出artifact是否已保存
self.output_artifact_archived = output_artifact_archived
# 运行Id
self.run_id = run_id
# 修改 UTC 时间,日期格式 iso8601
self.started_at = started_at
# 状态
self.status = status
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.finished_at is not None:
result['FinishedAt'] = self.finished_at
if self.input_artifact_archived is not None:
result['InputArtifactArchived'] = self.input_artifact_archived
if self.node_id is not None:
result['NodeId'] = self.node_id
if self.node_name is not None:
result['NodeName'] = self.node_name
if self.output_artifact_archived is not None:
result['OutputArtifactArchived'] = self.output_artifact_archived
if self.run_id is not None:
result['RunId'] = self.run_id
if self.started_at is not None:
result['StartedAt'] = self.started_at
if self.status is not None:
result['Status'] = self.status
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('FinishedAt') is not None:
self.finished_at = m.get('FinishedAt')
if m.get('InputArtifactArchived') is not None:
self.input_artifact_archived = m.get('InputArtifactArchived')
if m.get('NodeId') is not None:
self.node_id = m.get('NodeId')
if m.get('NodeName') is not None:
self.node_name = m.get('NodeName')
if m.get('OutputArtifactArchived') is not None:
self.output_artifact_archived = m.get('OutputArtifactArchived')
if m.get('RunId') is not None:
self.run_id = m.get('RunId')
if m.get('StartedAt') is not None:
self.started_at = m.get('StartedAt')
if m.get('Status') is not None:
self.status = m.get('Status')
return self
class ListRunsStatusResponseBodyRuns(TeaModel):
def __init__(
self,
experiment_id: str = None,
is_deleted: bool = None,
name: str = None,
node_id: str = None,
parent_user_id: str = None,
run_id: str = None,
status: str = None,
user_id: str = None,
):
# 实验id
self.experiment_id = experiment_id
# 是否被删除
self.is_deleted = is_deleted
# run名字
self.name = name
# 节点id
self.node_id = node_id
# 父账户id
self.parent_user_id = parent_user_id
# run的id
self.run_id = run_id
# run状态
self.status = status
# 用户id
self.user_id = user_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.experiment_id is not None:
result['ExperimentId'] = self.experiment_id
if self.is_deleted is not None:
result['IsDeleted'] = self.is_deleted
if self.name is not None:
result['Name'] = self.name
if self.node_id is not None:
result['NodeId'] = self.node_id
if self.parent_user_id is not None:
result['ParentUserId'] = self.parent_user_id
if self.run_id is not None:
result['RunId'] = self.run_id
if self.status is not None:
result['Status'] = self.status
if self.user_id is not None:
result['UserId'] = self.user_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ExperimentId') is not None:
self.experiment_id = m.get('ExperimentId')
if m.get('IsDeleted') is not None:
self.is_deleted = m.get('IsDeleted')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('NodeId') is not None:
self.node_id = m.get('NodeId')
if m.get('ParentUserId') is not None:
self.parent_user_id = m.get('ParentUserId')
if m.get('RunId') is not None:
self.run_id = m.get('RunId')
if m.get('Status') is not None:
self.status = m.get('Status')
if m.get('UserId') is not None:
self.user_id = m.get('UserId')
return self
class ListRunsStatusResponseBody(TeaModel):
def __init__(
self,
nodes: List[ListRunsStatusResponseBodyNodes] = None,
request_id: str = None,
runs: List[ListRunsStatusResponseBodyRuns] = None,
):
self.nodes = nodes
# Id of the request
self.request_id = request_id
self.runs = runs
def validate(self):
if self.nodes:
for k in self.nodes:
if k:
k.validate()
if self.runs:
for k in self.runs:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['Nodes'] = []
if self.nodes is not None:
for k in self.nodes:
result['Nodes'].append(k.to_map() if k else None)
if self.request_id is not None:
result['RequestId'] = self.request_id
result['Runs'] = []
if self.runs is not None:
for k in self.runs:
result['Runs'].append(k.to_map() if k else None)
return result
def from_map(self, m: dict = None):
m = m or dict()
self.nodes = []
if m.get('Nodes') is not None:
for k in m.get('Nodes'):
temp_model = ListRunsStatusResponseBodyNodes()
self.nodes.append(temp_model.from_map(k))
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
self.runs = []
if m.get('Runs') is not None:
for k in m.get('Runs'):
temp_model = ListRunsStatusResponseBodyRuns()
self.runs.append(temp_model.from_map(k))
return self
class ListRunsStatusResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListRunsStatusResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListRunsStatusResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class StartRunResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
):
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class StartRunResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: StartRunResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = StartRunResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class TerminateRunResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
):
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class TerminateRunResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: TerminateRunResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = TerminateRunResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class UpdatePipelineRequest(TeaModel):
def __init__(
self,
manifest: str = None,
):
self.manifest = manifest
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.manifest is not None:
result['Manifest'] = self.manifest
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Manifest') is not None:
self.manifest = m.get('Manifest')
return self
class UpdatePipelineResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
):
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class UpdatePipelineResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: UpdatePipelineResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = UpdatePipelineResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class UpdatePipelinePrivilegesRequest(TeaModel):
def __init__(
self,
users: List[str] = None,
):
self.users = users
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.users is not None:
result['Users'] = self.users
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Users') is not None:
self.users = m.get('Users')
return self
class UpdatePipelinePrivilegesResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
):
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['requestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('requestId') is not None:
self.request_id = m.get('requestId')
return self
class UpdatePipelinePrivilegesResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: UpdatePipelinePrivilegesResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = UpdatePipelinePrivilegesResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class UpdateRunRequest(TeaModel):
def __init__(
self,
name: str = None,
):
self.name = name
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.name is not None:
result['Name'] = self.name
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Name') is not None:
self.name = m.get('Name')
return self
class UpdateRunResponseBody(TeaModel):
def __init__(
self,
request_id: str = None,
):
# Id of the request
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class UpdateRunResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: UpdateRunResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = UpdateRunResponseBody()
self.body = temp_model.from_map(m['body'])
return self