'1.0',
'info' => ['style' => 'ROA', 'product' => 'pai-dlc', 'version' => '2020-12-03'],
'directories' => [
[
'children' => ['CreateJob', 'DeleteJob', 'UpdateJob', 'StopJob', 'ListJobs', 'GetJob', 'GetJobSanityCheckResult', 'ListJobSanityCheckResults', 'GetPodLogs', 'GetPodEvents', 'GetJobMetrics', 'GetJobEvents', 'ListEcsSpecs', 'GetWebTerminal', 'GetToken'],
'type' => 'directory',
'title' => '任务',
'id' => 350601,
],
[
'children' => ['CreateJobTemplate', 'GetJobTemplate', 'DeleteJobTemplate', 'UpdateJobTemplate', 'ListJobTemplates', 'SetJobTemplateDefaultVersion'],
'type' => 'directory',
'title' => '任务模板',
'id' => 448115,
],
[
'children' => ['CreateTensorboard', 'DeleteTensorboard', 'StartTensorboard', 'UpdateTensorboard', 'StopTensorboard', 'ListTensorboards', 'GetTensorboard', 'GetTensorboardSharedUrl'],
'type' => 'directory',
'title' => 'Tensorboard',
'id' => 350617,
],
[
'children' => ['CreateRayHistoryServer', 'GetRayHistoryServer', 'ListRayHistoryServers', 'StartRayHistoryServer', 'StopRayHistoryServer', 'DeleteRayHistoryServer'],
'type' => 'directory',
'title' => 'RayHistoryServer',
'id' => 452529,
],
[
'children' => ['GetDashboard', 'GetRayDashboard', 'GetMetrics'],
'type' => 'directory',
'title' => '其他',
'id' => 350626,
],
],
'components' => [
'schemas' => [
'AliyunAccounts' => [
'title' => 'A short description of struct',
'description' => 'aliyunaccounts',
'type' => 'object',
'properties' => [
'AliyunUid' => ['title' => 'Aliyun账号的UID', 'type' => 'string'],
'EmployeeId' => ['title' => '弹内用户的工号', 'type' => 'string'],
'GmtCreateTime' => ['title' => '这条记录的创建时间', 'type' => 'string'],
'GmtModifyTime' => ['title' => '这条记录的上次修改时间', 'type' => 'string'],
],
],
'AssignNodeSpec' => [
'title' => 'AssignNodeSpec',
'description' => '指定调度节点详情',
'type' => 'object',
'properties' => [
'EnableAssignNode' => ['title' => 'EnableAssignNode', 'type' => 'boolean', 'example' => 'true'],
'NodeNames' => ['title' => 'NodeNames', 'type' => 'string', 'example' => 'lingjxxxxxxxx'],
'AntiAffinityNodeNames' => ['title' => 'AntiAffinityNodeNames', 'type' => 'string', 'example' => 'lingjxxxxxxxx'],
'HyperNodes' => [
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/HyperNodeSpec'],
],
'AntiAffinityHyperNodes' => [
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/HyperNodeSpec'],
],
],
],
'AssumeUserInfo' => [
'title' => 'A short description of struct',
'description' => 'A short description of struct',
'type' => 'object',
'properties' => [
'SecurityToken' => ['title' => '扮演角色时使用的安全令牌', 'description' => '扮演角色时使用的安全令牌', 'type' => 'string'],
'AccessKeyId' => ['title' => '扮演角色时使用的AccessKey ID', 'description' => '扮演角色时使用的AccessKey ID', 'type' => 'string'],
'Type' => ['title' => '用户身份类型', 'description' => '用户身份类型', 'type' => 'string'],
'Id' => ['title' => '用户ID', 'description' => '用户ID', 'type' => 'string'],
],
],
'AutoscalingMetricSpec' => [
'type' => 'object',
'properties' => [
'MetricName' => ['type' => 'string'],
'TargetValue' => ['type' => 'integer', 'format' => 'int32'],
'StabilizationWindowSeconds' => ['type' => 'integer', 'format' => 'int32'],
'Tolerance' => ['type' => 'string'],
],
],
'AutoScalingSpec' => [
'type' => 'object',
'properties' => [
'ScalingStrategy' => ['title' => '自动伸缩策略,目前支持 Default, ScaleByAPI, RayAutoscaler, CloudMonitorMetric', 'description' => '自动伸缩策略,目前支持 Default, ScaleByAPI, RayAutoscaler, CloudMonitorMetric', 'type' => 'string'],
'MinReplicas' => ['title' => '最小副本数量', 'description' => '最小副本数量', 'type' => 'integer', 'format' => 'int32'],
'MaxReplicas' => ['title' => '最大副本数量', 'description' => '最大副本数量', 'type' => 'integer', 'format' => 'int32'],
'PodsToDelete' => [
'title' => '指定缩容节点。仅允许通过 UpdateJob修改,缩容数量必须与 PodCount 匹配',
'description' => '指定缩容节点。仅允许通过 UpdateJob修改,缩容数量必须与 PodCount 匹配',
'type' => 'array',
'items' => ['type' => 'string', 'description' => ''],
],
'AutoscalingMetricSpec' => ['title' => '自动伸缩的监控指标配置', 'description' => '自动伸缩的监控指标配置', '$ref' => '#/components/schemas/AutoscalingMetricSpec'],
],
'description' => '',
],
'CodeSourceItem' => [
'title' => '代码源配置的内容',
'description' => '一个CodeSource的描述,用于ListCodeSources',
'type' => 'object',
'properties' => [
'CodeRepo' => ['title' => '代码仓库地址', 'description' => '代码仓库地址', 'type' => 'string', 'example' => 'https://code.aliyun.com/pai-dlc/examples.git'],
'Description' => ['title' => '代码源详细描述', 'description' => '代码源详细文字描述', 'type' => 'string', 'example' => 'code source of dlc examples'],
'CodeRepoAccessToken' => ['title' => '访问代码仓库所用的AccessToken', 'description' => '访问代码仓库的AccessToken。', 'type' => 'string', 'example' => 'xxxx'],
'GmtModifyTime' => ['title' => '修改时间', 'description' => '修改时间(UTC)', 'type' => 'string', 'example' => '2021-01-18T12:52:15Z'],
'UserId' => ['title' => '代码源配置的用户ID', 'description' => '代码源创建者的阿里云用户UID。', 'type' => 'string', 'example' => '115729017166****'],
'CodeCommit' => ['title' => '代码Commit ID', 'description' => '代码CommitID,调用CreateJob时可以覆盖。', 'type' => 'string', 'example' => '44da109b59f8596152987eaa8f3b2487bb72ea63'],
'DisplayName' => ['title' => '代码源配置的名字', 'description' => '代码源名称', 'type' => 'string', 'example' => 'MyCodeSourceName1'],
'CodeSourceId' => ['title' => '代码源ID', 'description' => '代码源ID', 'type' => 'string', 'example' => 'code-20210111103721-********'],
'CodeBranch' => ['title' => '代码分支', 'description' => '代码仓库分支;在CreateJob时可以被覆盖。', 'type' => 'string', 'example' => 'master'],
'CodeRepoUserName' => ['title' => '访问代码仓库的用户名', 'description' => '代码仓库访问的用户名,用于访问私有仓库。', 'type' => 'string', 'example' => 'user'],
'GmtCreateTime' => ['title' => '创建时间', 'description' => '创建时间(UTC)', 'type' => 'string', 'example' => '2021-01-18T12:52:15Z'],
],
],
'ContainerSpec' => [
'title' => 'ContainerSpec',
'description' => '容器参数。',
'type' => 'object',
'properties' => [
'Name' => ['title' => '容器名称', 'description' => '容器名称。', 'type' => 'string', 'example' => 'data-init'],
'Image' => ['title' => '容器镜像地址', 'description' => '容器镜像地址。', 'type' => 'string', 'example' => 'registry.cn-hangzhou.aliyuncs.com/pai-dlc/curl:v1.0.0'],
'Command' => [
'title' => '用户命令',
'description' => '用户命令。',
'type' => 'array',
'items' => ['description' => '命令行。', 'type' => 'string', 'example' => 'curl www.aliyun.com'],
],
'Args' => [
'title' => '命令参数',
'description' => '命令参数。',
'type' => 'array',
'items' => ['description' => '参数。', 'type' => 'string', 'example' => '-v'],
],
'WorkingDir' => ['title' => '容器内工作目录', 'description' => '容器内工作目录。', 'type' => 'string', 'example' => '/root'],
'Env' => [
'title' => '环境变量',
'description' => '环境变量。',
'type' => 'array',
'items' => ['description' => '环境变量列表。', '$ref' => '#/components/schemas/EnvVar'],
],
'Resources' => ['title' => '容器资源', 'description' => '容器资源。', '$ref' => '#/components/schemas/ResourceRequirements'],
],
],
'CredentialConfig' => [
'title' => 'A short description of struct',
'description' => 'A short description of struct',
'type' => 'object',
'properties' => [
'EnableCredentialInject' => ['title' => '是否开启凭证注入', 'description' => '是否开启凭证注入', 'type' => 'boolean'],
'AliyunEnvRoleKey' => ['title' => '注入到环境变量中的角色标识Key', 'description' => '注入到环境变量中的角色标识Key', 'type' => 'string'],
'CredentialConfigItems' => [
'title' => '凭证配置项列表',
'description' => '凭证配置项列表',
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/CredentialConfigItem', 'description' => ''],
],
],
],
'CredentialConfigItem' => [
'title' => '凭证配置项',
'description' => '凭证配置项',
'type' => 'object',
'properties' => [
'Key' => ['title' => '凭证配置项的标识Key', 'description' => '凭证配置项的标识Key', 'type' => 'string'],
'Type' => ['title' => '凭证类型', 'description' => '凭证类型', 'type' => 'string'],
'Roles' => [
'title' => '关联的角色列表',
'description' => '关联的角色列表',
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/CredentialRole', 'description' => ''],
],
],
],
'CredentialRole' => [
'title' => '凭证角色配置',
'description' => '凭证角色配置',
'type' => 'object',
'properties' => [
'RoleArn' => ['title' => 'RAM角色的ARN', 'description' => 'RAM角色的ARN', 'type' => 'string'],
'RoleType' => ['title' => '角色类型,取值为service或user', 'description' => '角色类型,取值为service或user', 'type' => 'string'],
'AssumeRoleFor' => ['title' => '代表哪个账号扮演该角色', 'description' => '代表哪个账号扮演该角色', 'type' => 'string'],
'Policy' => ['title' => '角色扮演时附加的权限策略', 'description' => '角色扮演时附加的权限策略', 'type' => 'string'],
'AssumeUserInfo' => ['$ref' => '#/components/schemas/AssumeUserInfo', 'description' => ''],
],
],
'DataJuicerConfig' => [
'description' => 'DataJuicer任务的配置。',
'type' => 'object',
'properties' => [
'ExecutionMode' => [
'title' => '执行方式',
'description' => '运行模式:'."\n"
."\n"
.'- standalone:单节点。'."\n"
.'- distributed:分布式。',
'type' => 'string',
'required' => false,
'example' => 'standalone',
'enum' => ['standalone', 'distributed'],
],
'CommandType' => [
'title' => '命令类型',
'description' => '命令类型:'."\n"
."\n"
.'- shell:填写shell命令。'."\n"
.'- config:填写DataJuicer的yaml配置。',
'type' => 'string',
'example' => 'config',
'enum' => ['shell', 'config'],
],
'EnableResourceEstimation' => ['title' => '是否开启资源预估', 'description' => '是否开启资源预估', 'type' => 'boolean'],
'ResourceLimit' => ['$ref' => '#/components/schemas/ResourceLimit', 'description' => ''],
],
],
'DataSourceItem' => [
'title' => '数据源详情',
'description' => '数据源详情。',
'type' => 'object',
'properties' => [
'DataSourceType' => ['title' => '数据源类型', 'description' => '数据源类型,目前仅支持NAS。', 'type' => 'string', 'example' => 'NAS'],
'DataSourceId' => ['title' => '数据源Id', 'description' => '数据源的唯一标识符。', 'type' => 'string', 'example' => 'data-20210114104214-xxxxxxx'],
'DisplayName' => ['title' => '数据源显示名称', 'description' => '数据源显示名称。', 'type' => 'string', 'example' => 'nas-data'],
'Description' => ['title' => '数据源描述', 'description' => '数据源详细描述。', 'type' => 'string', 'example' => 'data source of dlc examples'],
'FileSystemId' => ['title' => '阿里云NAS文件系统Id', 'description' => '阿里云NAS文件系统ID,请参考[阿里云文档](~~185212~~)。', 'type' => 'string', 'example' => '1ca404****'],
'Path' => ['title' => '阿里云OSS文件系统路径', 'description' => '阿里云OSS文件系统路径。', 'type' => 'string', 'example' => 'oss://mybucket/path/to/dir'],
'Endpoint' => ['title' => '阿里云OSS文件系统服务端点', 'description' => '阿里云OSS文件系统服务端点。', 'type' => 'string', 'example' => 'oss-cn-beijing-internal.aliyuncs.com'],
'Options' => ['title' => '阿里云OSS文件系统配置选项', 'description' => '阿里云OSS文件系统配置选项。', 'type' => 'string', 'example' => '{"key": "value"}'],
'MountPath' => ['title' => '本地挂载目录', 'description' => '挂载到任务运行时的容器的本地路径。', 'type' => 'string', 'example' => '/root/data/'],
'UserId' => ['title' => '创建人Id', 'description' => '数据源创建者的阿里云账号ID。', 'type' => 'string', 'example' => '123456789'],
'GmtCreateTime' => ['title' => '创建时间(UTC)', 'description' => '创建时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:35:00Z'],
'GmtModifyTime' => ['title' => '修改时间(UTC)', 'description' => '最后修改时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:00Z'],
],
],
'DebuggerConfig' => [
'title' => 'debugger参数配置项',
'description' => 'debug配置参数项',
'type' => 'object',
'properties' => [
'DebuggerConfigId' => ['title' => '系统生成的debug config唯一ID', 'type' => 'string', 'example' => 'dc-vf9lowjt3pso'],
'DisplayName' => ['title' => '模板配置项名称', 'type' => 'string', 'example' => 'Pytorch Experiment Config'],
'Description' => ['title' => '配置项描述', 'type' => 'string', 'example' => '这是一个Pytorch的基础配置模板'],
'GmtCreateTime' => ['title' => '创建时间(UTC)', 'type' => 'string', 'example' => '2021-01-12T14:35:00Z'],
'GmtModifyTime' => ['title' => '修改时间(UTC)', 'type' => 'string', 'example' => '2021-01-12T14:36:00Z'],
'Content' => ['title' => '配置项细节,json结构', 'type' => 'string', 'example' => '{\\"description\\":\\"这是一个新的pytorchjob模板\\"}'],
],
],
'DownloadJobResult' => [
'type' => 'object',
'properties' => [
'DownloadJobId' => ['type' => 'string'],
'UserId' => ['type' => 'string'],
'TenantId' => ['type' => 'string'],
'WorkspaceId' => ['type' => 'string'],
'Type' => ['type' => 'string'],
'SourceJobId' => ['type' => 'string'],
'StartTime' => ['type' => 'string'],
'EndTime' => ['type' => 'string'],
'LogCount' => ['type' => 'integer', 'format' => 'int32'],
'Status' => ['type' => 'string'],
'DownloadUrl' => ['type' => 'string'],
'UrlExpireTime' => ['type' => 'string'],
'GmtCreated' => ['type' => 'string'],
'GmtModified' => ['type' => 'string'],
'DisplayName' => ['type' => 'string'],
'PodIds' => [
'type' => 'array',
'items' => ['type' => 'string'],
],
'PodUids' => [
'type' => 'array',
'items' => ['type' => 'string'],
],
'FileType' => ['type' => 'string'],
],
],
'EcsSpec' => [
'title' => 'A short description of struct',
'description' => 'ECS规格。',
'type' => 'object',
'properties' => [
'InstanceType' => ['title' => '规格类型', 'description' => '规格类型。', 'type' => 'string', 'example' => 'ecs.gn6e-c12g1.3xlarge'],
'AcceleratorType' => ['title' => '加速器类型', 'description' => '加速器类型。可能值为:'."\n"
.'- CPU'."\n"
.'- GPU', 'type' => 'string', 'example' => 'GPU'],
'Cpu' => ['title' => 'cpu数量', 'description' => 'CPU数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '12'],
'Gpu' => ['title' => 'gpu数量', 'description' => 'GPU数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
'GpuType' => ['title' => 'gpu类型', 'description' => 'GPU类型。', 'type' => 'string', 'example' => 'NVIDIA v100'],
'Memory' => ['title' => 'Memory数量', 'description' => '内存大小(Mi或Gi)。', 'type' => 'integer', 'format' => 'int32', 'example' => '92'],
'GpuMemory' => ['title' => '显存大小', 'description' => '显存大小。', 'type' => 'integer', 'format' => 'int32', 'example' => '80'],
'IsAvailable' => ['title' => '是否有库存', 'description' => '是否有库存。可能值为:'."\n"
.'- true:有库存。'."\n"
.'- false:无库存。', 'type' => 'boolean', 'example' => 'true'],
'ResourceType' => ['title' => '资源类型,可选值:ECS, Lingjun', 'description' => '资源类型,可能值为:'."\n"
.'- ECS'."\n"
.'- Lingjun', 'type' => 'string', 'example' => 'ECS'],
'DefaultGPUDriver' => ['title' => '默认GPU驱动版本', 'description' => '默认GPU驱动版本。', 'type' => 'string', 'example' => '470.199.02'],
'SupportedGPUDrivers' => [
'title' => '支持的GPU驱动版本列表',
'description' => '支持的GPU驱动版本列表。',
'type' => 'array',
'items' => ['description' => '支持的GPU驱动版本列表。', 'type' => 'string', 'example' => '470.199.02, 535.54.03'],
],
'SpotStockStatus' => ['title' => '抢占式实例库存状态', 'description' => '抢占式实例库存状态。', 'type' => 'string', 'example' => 'WithStock'],
'NonProtectSpotDiscount' => ['title' => '抢占式实例当前价格折扣', 'description' => '抢占式实例当前价格折扣。', 'type' => 'number', 'format' => 'float', 'example' => '0.1'],
'PaymentTypes' => [
'title' => '支持的付费类型列表',
'description' => '支持的付费类型列表。',
'type' => 'array',
'items' => ['description' => '付费类型:'."\n"
.'- Spot'."\n"
.'- PostPaid', 'type' => 'string', 'example' => 'Spot,PostPaid'],
],
],
],
'ElasticSpotSpec' => [
'type' => 'object',
'properties' => [
'InstanceType' => ['title' => '机型', 'type' => 'string'],
'SpotPriceLimit' => ['title' => '最高出价', 'type' => 'number', 'format' => 'double'],
'SpotDiscountLimit' => ['title' => '最高折扣', 'type' => 'number', 'format' => 'double'],
'SpotStrategy' => ['title' => '竞价策略', 'type' => 'string'],
],
],
'EnvVar' => [
'title' => 'EnvVar',
'description' => '环境变量。',
'type' => 'object',
'properties' => [
'Name' => ['title' => '环境变量名称', 'description' => '环境变量名称。', 'type' => 'string', 'example' => 'ENABLE_DEBUG'],
'Value' => ['title' => '环境变量值', 'description' => '环境变量值。', 'type' => 'string', 'example' => 'true'],
],
],
'EventInfo' => [
'title' => 'A short description of struct',
'description' => 'DLC任务的事件信息',
'type' => 'object',
'properties' => [
'PodId' => ['title' => '事件所属的Pod的Id', 'type' => 'string'],
'PodUid' => ['title' => '事件所属的Pod的Uid', 'type' => 'string'],
'Id' => ['title' => '事件的ID信息,用于获取相关上下文', 'type' => 'string'],
'Time' => ['title' => '事件的时间戳信息,该时间为UTC时间', 'type' => 'string'],
'Content' => ['title' => '事件的文本内容', 'type' => 'string'],
],
],
'ExtraPodSpec' => [
'title' => 'ExtraPodSpec',
'description' => '额外Pod配置。',
'type' => 'object',
'properties' => [
'SideCarContainers' => [
'title' => '伴随容器',
'description' => '伴随容器。',
'type' => 'array',
'items' => ['description' => '容器配置。', '$ref' => '#/components/schemas/ContainerSpec'],
],
'InitContainers' => [
'title' => '初始化容器',
'description' => '初始化容器。',
'type' => 'array',
'items' => ['description' => '容器配置。', '$ref' => '#/components/schemas/ContainerSpec'],
],
'PodLabels' => [
'title' => 'Pod标签',
'description' => 'Pod标签。',
'type' => 'object',
'deprecated' => true,
'additionalProperties' => ['description' => '标签。格式:Key=Value。', 'type' => 'string', 'example' => 'example-lable'],
],
'PodAnnotations' => [
'title' => 'Pod注解',
'description' => 'Pod注解。',
'type' => 'object',
'deprecated' => true,
'additionalProperties' => ['description' => '注解。格式:Key=Value。', 'type' => 'string', 'example' => 'example-annotation'],
],
'SharedVolumeMountPaths' => [
'title' => '容器间共享的本地目录',
'description' => '容器间共享的本地目录。',
'type' => 'array',
'items' => ['description' => '共享的本地目录。', 'type' => 'string', 'example' => '/root/share/'],
],
'Lifecycle' => ['description' => 'Lifecycle对象。', '$ref' => '#/components/schemas/Lifecycle'],
'MainContainerSecurityContext' => ['title' => '主容器安全上下文', 'description' => '主容器安全上下文', '$ref' => '#/components/schemas/SecurityContext'],
],
],
'FreeResourceItem' => [
'title' => '空闲资源信息',
'type' => 'object',
'properties' => [
'FreeResourceId' => ['title' => '空闲资源Id', 'type' => 'string', 'example' => 'freeres-whateversth'],
'RegionID' => ['title' => '域Id', 'type' => 'string', 'example' => 'inner'],
'ClusterID' => ['title' => '集群Id', 'type' => 'string'],
'ClusterName' => ['title' => '集群名', 'type' => 'string'],
'ResourceType' => ['title' => '资源类型', 'type' => 'string', 'example' => 'cpu'],
'AvailableNumber' => ['title' => '资源数量', 'type' => 'integer', 'format' => 'int64', 'example' => '2'],
'GmtCreateTime' => ['title' => '创建时间', 'type' => 'string', 'example' => '2021-01-18T12:52:15Z'],
'GmtModifyTime' => ['title' => '修改时间', 'type' => 'string', 'example' => '2021-01-18T12:52:15Z'],
],
],
'GPUDetail' => [
'title' => 'A short description of struct',
'description' => 'GPU详情',
'type' => 'object',
'properties' => [
'GPU' => ['title' => 'GPU卡数', 'type' => 'string'],
'GPUType' => ['title' => 'GPU卡型', 'type' => 'string', 'example' => 'Tesla-V100-32G'],
'GPUTypeFullName' => ['title' => 'GPU卡型全名', 'type' => 'string', 'example' => 'nvidia.com/gpu-tesla-v100-sxm2-16gb'],
],
],
'HyperNodeSpec' => [
'type' => 'object',
'properties' => [
'HyperNodeName' => ['type' => 'string'],
'NodeNames' => ['type' => 'string'],
],
],
'ImageConfig' => [
'title' => 'A short description of struct',
'description' => '私有镜像信息配置',
'type' => 'object',
'properties' => [
'DockerRegistry' => ['title' => '镜像仓库地址', 'description' => '镜像仓库地址', 'type' => 'string', 'example' => 'docker****registry.com'],
'Username' => ['title' => '镜像仓库用户名', 'description' => '镜像仓库用户名', 'type' => 'string', 'example' => ' username'],
'Password' => ['title' => '镜像仓库密码', 'description' => '镜像仓库密码', 'type' => 'string', 'example' => 'password'],
'Auth' => ['title' => '镜像仓库认证信息', 'description' => '镜像仓库认证信息', 'type' => 'string'],
],
],
'ImageItem' => [
'title' => 'Docker image详情',
'description' => 'Docker Image详情',
'type' => 'object',
'properties' => [
'ImageTag' => ['title' => '镜像Tag', 'description' => 'Docker镜像的Tag', 'type' => 'string', 'example' => 'tensorflow-training:2.3-cpu-py36-ubuntu18.04'],
'ImageUrl' => ['title' => '镜像地址', 'description' => '镜像URL地址', 'type' => 'string', 'example' => 'registry.cn-beijing.aliyuncs.com/pai-dlc/tensorflow-training:2.3-cpu-py36-ubuntu18.04'],
'ImageUrlVpc' => ['title' => '镜像vpc地址', 'description' => '镜像URL的阿里云VPC地址,访问速度更快。', 'type' => 'string', 'example' => 'registry-vpc.cn-beijing.aliyuncs.com/pai-dlc/tensorflow-training:2.3-cpu-py36-ubuntu18.04'],
'ImageProviderType' => ['title' => '镜像类型', 'description' => '镜像类型,枚举值:'."\n"
."\n"
.'- Community: 社区'."\n"
.'- PAI: PAI平台优化', 'type' => 'string', 'example' => 'Community'],
'AcceleratorType' => ['title' => '加速器类型', 'description' => '镜像加速器类型,枚举型:'."\n"
."\n"
.'- cpu'."\n"
.'- gpu', 'type' => 'string', 'example' => 'gpu'],
'Framework' => ['title' => '镜像包含的框架类型', 'description' => '镜像封装的计算框架,枚举型:'."\n"
."\n"
.'- TFJob'."\n"
.'- PyTorchJob', 'type' => 'string', 'example' => 'PyTorchJob'],
'AuthorId' => ['title' => '镜像作者', 'description' => '镜像作者', 'type' => 'string', 'example' => 'ken'],
],
],
'JobElasticSpec' => [
'title' => '弹性任务参数',
'description' => '弹性任务参数',
'type' => 'object',
'properties' => [
'EnableElasticTraining' => ['title' => '是否开启弹性训练', 'description' => '是否开启弹性训练', 'type' => 'boolean', 'example' => 'true'],
'MinParallelism' => ['title' => '最小并行度', 'description' => '最小并行度', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
'MaxParallelism' => ['title' => '最大并行度', 'description' => '最大并行度', 'type' => 'integer', 'format' => 'int32', 'example' => '8'],
'AIMasterType' => ['title' => 'aimaster角色使用的资源规格', 'description' => 'aimaster角色使用的资源规格', 'type' => 'string'],
'AIMasterDockerImage' => ['title' => 'aimaster docker镜像', 'description' => 'aimaster docker镜像', 'type' => 'string'],
'EnablePsJobElasticWorker' => ['title' => '是否开启弹性Worker对于PS作业', 'description' => '是否开启弹性Worker对于PS作业', 'type' => 'boolean'],
'EnableAIMaster' => ['title' => '是否打开AIMaster', 'description' => '是否打开AIMaster', 'type' => 'boolean'],
'EnablePsResourceEstimate' => ['title' => '是否打开PS资源预估', 'description' => '是否打开PS资源预估', 'type' => 'boolean', 'example' => 'true'],
'EnablePsJobElasticPS' => ['title' => '是否打开弹性PS功能', 'description' => '是否打开弹性PS功能', 'type' => 'boolean', 'example' => 'true'],
'PSMinParallelism' => ['title' => 'PS最小并行度', 'description' => 'PS最小并行度', 'type' => 'integer', 'format' => 'int32', 'example' => '4'],
'PSMaxParallelism' => ['title' => 'PS最大并行度', 'description' => 'PS最大并行度', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
'ElasticStrategy' => ['title' => '弹性训练策略', 'description' => '弹性训练策略', 'type' => 'string'],
'EnableEDP' => ['title' => '是否打开EDP', 'description' => '是否打开EDP', 'type' => 'boolean', 'example' => 'true'],
'EDPMaxParallelism' => ['title' => 'EDP最大并行度', 'description' => 'EDP最大并行度', 'type' => 'integer', 'format' => 'int32', 'example' => '16'],
'EDPMinParallelism' => ['title' => 'EDP最小并行度', 'description' => 'EDP最小并行度', 'type' => 'integer', 'format' => 'int32', 'example' => '8'],
],
],
'JobItem' => [
'title' => '作业详情信息',
'description' => '作业详情信息。',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业Id', 'description' => '作业ID。', 'type' => 'string', 'example' => 'dlc-20210126170216-********'],
'CredentialConfig' => ['description' => '作业关联的访问凭证配置。', '$ref' => '#/components/schemas/CredentialConfig'],
'JobType' => ['title' => '作业类型', 'description' => '作业类型,可能值:'."\n"
.'- TFJob'."\n"
.'- PyTorchJob'."\n"
.'- MPIJob'."\n"
.'- XGBoostJob'."\n"
.'- OneFlowJob'."\n"
.'- ElasticBatchJob'."\n"
.'- RayJob'."\n"
.'- SlurmJob', 'type' => 'string', 'example' => 'TFJob'],
'DisplayName' => ['title' => '作业显示名称', 'description' => '作业名称。', 'type' => 'string', 'example' => 'tf-mnist-test'],
'UserVpc' => [
'title' => '用户vpc',
'description' => '用户VPC。',
'type' => 'object',
'properties' => [
'VpcId' => ['title' => 'VPC ID', 'description' => 'VPC ID', 'type' => 'string', 'example' => 'vpc-2zed***'],
'SwitchId' => ['title' => '交换机ID', 'description' => '交换机ID', 'type' => 'string', 'example' => 'vsw-2ze6***'],
'SecurityGroupId' => ['title' => '安全组ID', 'description' => '安全组ID', 'type' => 'string', 'example' => 'sg-2zeef***'],
'ExtendedCidrs' => [
'title' => '需要打通的扩展网段',
'description' => '需要打通的扩展网段',
'type' => 'array',
'items' => ['description' => '网络段的CIDR,如:10.2.0.0/16', 'type' => 'string', 'example' => '10.2.0.0/16'],
],
'DefaultRoute' => ['title' => '默认路由', 'description' => '默认路由。取值如下:'."\n"
.'- eth0:表示使用默认网卡,通过公共网关访问外部网络。'."\n"
.'- eth1:表示使用用户弹性网卡,通过私有网关访问外部网络。', 'type' => 'string', 'example' => 'eth0'],
],
'example' => 'vpc-1',
],
'UserId' => ['title' => '作业提交人Id', 'description' => '作业所属用户的UID。', 'type' => 'string', 'example' => '123456789'],
'Username' => ['title' => '作业提交用户名', 'description' => '作业提交用户名。', 'type' => 'string', 'example' => 'pai-dlc-role'],
'Status' => ['title' => '作业状态', 'description' => '作业状态,可能值:'."\n"
.'- Succeeded'."\n"
.'- Failed', 'type' => 'string', 'example' => 'Stopped'],
'WorkspaceId' => ['title' => '作业所属工作空间ID', 'description' => '作业所属工作空间ID。', 'type' => 'string', 'example' => '268'],
'WorkspaceName' => ['title' => '作业所属工作空间名称', 'description' => '作业所属工作空间名称。', 'type' => 'string', 'example' => 'dlc-workspace'],
'ResourceId' => ['title' => '作业运行所在的资源组ID', 'description' => '作业运行所在的资源组ID。', 'type' => 'string', 'example' => 'dlc-quota'],
'ResourceLevel' => ['title' => '作业运行时的资源级别', 'description' => '作业运行时的资源级别。', 'type' => 'string', 'example' => 'L0'],
'ReasonCode' => ['title' => '状态详情码', 'description' => '作业进入当前状态的缘由Code。可能值:'."\n"
.'- InvalidParameter'."\n"
.'- JobSucceeded'."\n"
.'- JobStoppedByUser', 'type' => 'string', 'example' => 'JobStoppedByUser'],
'ReasonMessage' => ['title' => '状态详情', 'description' => '作业进入当前状态的缘由详细描述。', 'type' => 'string', 'example' => 'Job is stopped by user.'],
'JobSpecs' => [
'title' => '作业规格配置',
'description' => '作业运行时的节点配置。',
'type' => 'array',
'items' => ['description' => '节点配置。', '$ref' => '#/components/schemas/JobSpec'],
],
'UserCommand' => ['title' => '用户命令', 'description' => '作业每个节点运行的启动命令。', 'type' => 'string', 'example' => 'python /root/code/mnist.py'],
'DataSources' => [
'title' => '数据源配置列表',
'description' => '本作业使用的所有数据源配置列表。',
'type' => 'array',
'items' => [
'description' => '数据源列表。',
'type' => 'object',
'properties' => [
'DataSourceId' => ['title' => '数据源Id', 'description' => '数据源配置ID。', 'type' => 'string', 'example' => 'data-20210114104214-********'],
'MountPath' => ['title' => '本地挂载路径', 'description' => '数据源在本地的挂载路径。', 'type' => 'string', 'example' => '/mnt/data'],
],
],
],
'CodeSource' => [
'title' => '代码源配置',
'description' => '次作业使用的代码源配置。',
'type' => 'object',
'properties' => [
'CodeSourceId' => ['title' => '代码源Id', 'description' => '代码源配置ID。', 'type' => 'string', 'example' => 'code-20210111103721-********'],
'Branch' => ['title' => '代码分支', 'description' => '代码仓库分支。', 'type' => 'string', 'example' => 'master'],
'Commit' => ['title' => '代码Commit', 'description' => '此次作业使用的代码仓库的CommitID。', 'type' => 'string', 'example' => '44da109b59f8596152987eaa8f3b2487bb******'],
'MountPath' => ['title' => '本地挂载路径', 'description' => '代码在本地的挂载路径。', 'type' => 'string', 'example' => '/mnt/data'],
],
],
'ThirdpartyLibs' => [
'title' => '三方库配置列表',
'description' => '作业运行之前安装的第三方Python库列表。',
'type' => 'array',
'items' => ['description' => '一个Python三方库。', 'type' => 'string', 'example' => 'numpy==1.16.1'],
],
'NodeNames' => [
'title' => '节点名称',
'description' => '节点名称。',
'type' => 'array',
'items' => ['description' => '节点名称。', 'type' => 'string', 'example' => 'i-a'],
],
'ThirdpartyLibDir' => ['title' => '三方库(requirements.txt)文件路径', 'description' => '三方库文件Requirements.txt所在目录。', 'type' => 'string', 'example' => '/root/code/'],
'Envs' => [
'title' => '环境变量配置',
'description' => '作业运行时被注入的环境变量。',
'type' => 'object',
'additionalProperties' => ['description' => '环境变量的Key和Value。', 'type' => 'string', 'example' => 'ENABLE_DEBUG_MODE'],
],
'SystemEnvs' => [
'title' => '系统环境变量配置',
'description' => '系统环境变量配置。',
'type' => 'object',
'additionalProperties' => ['description' => '系统环境变量配置。', 'type' => 'string', 'example' => 'ENABLE_DEBUG_MODE'],
],
'GmtCreateTime' => ['title' => '作业创建时间(UTC)', 'description' => '作业创建时间, UTC格式。', 'type' => 'string', 'example' => '2025-04-16T07:25:34Z'],
'GmtSubmittedTime' => ['title' => '作业提交时间(UTC)', 'description' => '作业提交时间(UTC)。', 'type' => 'string', 'example' => '2025-04-16T07:26:14Z'],
'GmtRunningTime' => ['title' => '作业开始运行时间(UTC)', 'description' => '作业开始运行时间(UTC)。', 'type' => 'string', 'example' => '2025-04-16T07:26:41Z'],
'GmtSuccessedTime' => ['title' => '作业成功完成时间(UTC)', 'description' => '作业成功完成时间(UTC)。', 'type' => 'string', 'example' => '2025-04-16T07:28:20Z'],
'GmtStoppedTime' => ['title' => '作业停止时间(UTC)', 'description' => '作业停止时间(UTC)。', 'type' => 'string', 'example' => 'null'],
'GmtFailedTime' => ['title' => '作业失败时间(UTC)', 'description' => '作业失败时间(UTC)。', 'type' => 'string', 'example' => 'null'],
'GmtFinishTime' => ['title' => '作业结束时间(UTC)', 'description' => '作业结束时间(UTC)。', 'type' => 'string', 'example' => '2025-04-16T07:28:20Z'],
'GmtModifiedTime' => ['title' => '作业修改时间时间(UTC)', 'description' => '作业修改时间(UTC)。', 'type' => 'string', 'example' => '2025-04-16T07:28:22Z'],
'Duration' => ['title' => '作业运行时长,单位:秒', 'description' => '作业运行时长,单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '243'],
'JobMaxRunningTimeMinutes' => ['title' => '作业最长运行时长', 'description' => '作业最长运行时长。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'],
'Settings' => ['title' => '作业额外参数', 'description' => '作业额外参数。', '$ref' => '#/components/schemas/JobSettings'],
'EnabledDebugger' => ['title' => '是否开启了debugger分析', 'description' => '是否开启了DeBugger分析。', 'type' => 'boolean', 'example' => 'false'],
'IsDeleted' => ['title' => '是否被删除', 'description' => '是否被删除。', 'type' => 'boolean', 'example' => 'false'],
'EnablePreemptibleJob' => ['title' => '是否开启了PreemptibleJob', 'description' => '是否开启了PreemptibleJob。', 'type' => 'boolean', 'example' => 'false'],
'ResourceName' => ['title' => '作业运行的资源名称', 'description' => '作业运行的资源名称。', 'type' => 'string', 'example' => 'my_resource_group'],
'WorkingDir' => ['title' => '工作路径', 'description' => '工作路径。', 'type' => 'string', 'example' => '/mnt/data'],
'UserScript' => ['title' => '用户脚本', 'description' => '用户脚本。', 'type' => 'string', 'example' => 'ls '],
'RestartTimes' => ['title' => '作业重启的次数', 'description' => '作业重启的次数。', 'type' => 'string', 'example' => '1'],
'RequestCPU' => ['title' => '申请的CPU资源', 'description' => '申请的CPU资源。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'],
'RequestMemory' => ['title' => '申请的内存资源', 'description' => '申请的内存资源。', 'type' => 'string', 'example' => '1Gi'],
'ResourceQuotaName' => ['title' => '资源名称', 'description' => '资源名称。', 'type' => 'string', 'example' => 'test'],
'RequestGPU' => ['title' => '申请的GPU资源', 'description' => '申请的GPU资源。', 'type' => 'string', 'example' => '1'],
'NodeCount' => ['title' => '节点个数', 'description' => '节点个数。', 'type' => 'string', 'example' => '1'],
'Priority' => ['title' => '任务优先级', 'description' => '任务优先级。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
'SubStatus' => ['title' => '作业子状态,如抢占重试状态', 'description' => '作业子状态,如抢占重试状态。', 'type' => 'string', 'example' => 'Restarting'],
'UseOversoldResource' => ['title' => '作业是否使用闲时资源', 'description' => '作业是否使用闲时资源。', 'type' => 'boolean', 'example' => 'false'],
'ResourceType' => ['title' => '资源类型,可选值:ECS、Lingjun、ACS等', 'description' => '资源类型,可选值:ECS、Lingjun、ACS等。', 'type' => 'string', 'example' => 'ECS'],
'Accessibility' => ['title' => '可见性', 'description' => '可见性。', 'type' => 'string', 'example' => 'PUBLIC'],
'ClusterId' => ['title' => '集群id', 'description' => '集群ID。', 'type' => 'string', 'example' => '****1316721349****'],
'TenantId' => ['title' => '租户id', 'description' => '租户ID。', 'type' => 'string', 'example' => '****93955616****'],
'StatusHistory' => [
'title' => 'StatusHistory',
'description' => '作业流转状态信息。',
'type' => 'array',
'items' => ['description' => '作业流转状态信息条目。', '$ref' => '#/components/schemas/StatusTransitionItem'],
],
'ElasticSpec' => ['description' => '弹性任务参数。', '$ref' => '#/components/schemas/JobElasticSpec'],
'Pods' => [
'title' => 'Pods',
'description' => 'Pods。',
'type' => 'array',
'items' => ['description' => 'Pod的详细信息。', '$ref' => '#/components/schemas/PodItem'],
],
'TemplateId' => ['type' => 'string'],
'TemplateName' => ['type' => 'string'],
'JobReplicaStatuses' => [
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/JobReplicaStatus', 'description' => ''],
'description' => '',
],
'SchedulingStrategy' => ['type' => 'string'],
'RetryCount' => ['type' => 'integer', 'format' => 'int32'],
],
],
'JobReplicaStatus' => [
'type' => 'object',
'properties' => [
'Type' => ['type' => 'string'],
'Active' => ['type' => 'integer', 'format' => 'int32'],
'EstimatedPodCount' => ['type' => 'integer', 'format' => 'int64'],
'EstimatedAutoScalingSpec' => ['$ref' => '#/components/schemas/AutoScalingSpec'],
'EstimatedResourceConfig' => ['$ref' => '#/components/schemas/ResourceConfig'],
'Queuing' => ['type' => 'integer', 'format' => 'int32'],
'Dequeued' => ['type' => 'integer', 'format' => 'int32'],
'CurrentSpotInstanceType' => ['title' => '当前选中的 Spot 规格(仅对弹性Spot任务生效)', 'type' => 'string'],
],
],
'JobSettings' => [
'title' => '作业额外参数配置',
'description' => '额外参数配置。',
'type' => 'object',
'properties' => [
'BusinessUserId' => ['title' => '作业关联用户ID', 'description' => '作业关联用户ID。', 'type' => 'string', 'example' => '16****'],
'Caller' => ['title' => '调用方', 'description' => '调用方。', 'type' => 'string', 'example' => 'SilkFlow'],
'Tags' => [
'title' => '自定义标签',
'description' => '自定义标签。',
'type' => 'object',
'additionalProperties' => ['description' => '标签。', 'type' => 'string', 'example' => 'key:value'],
],
'PipelineId' => ['title' => '工作流ID', 'description' => '工作流ID。', 'type' => 'string', 'example' => 'pid-12****'],
'EnableTideResource' => ['title' => '允许作业使用潮汐资源', 'description' => '允许任务使用潮汐资源。取值如下:'."\n"
.'- true'."\n"
.'- false', 'type' => 'boolean', 'example' => 'true'],
'EnableErrorMonitoringInAIMaster' => ['title' => '允许打开作业容错监控', 'description' => '允许作业开启容错监控。取值如下:'."\n"
.'- true'."\n"
.'- false', 'type' => 'boolean', 'example' => 'false'],
'ErrorMonitoringArgs' => ['title' => '用户指定容错监控的配置参数,比如指定是否启动基于log hang的检测', 'description' => '启用容错监控后,用于指定容错监控的配置参数,比如指定是否启动基于log hang的检测。', 'type' => 'string', 'example' => '--enable-log-hang-detection true'],
'EnableRDMA' => ['title' => '允许作业使用RDMA', 'description' => '允许作业使用RDMA。取值如下:'."\n"
.'- true'."\n"
.'- false', 'type' => 'boolean', 'example' => 'true'],
'EnableOssAppend' => ['title' => '运行oss追加写', 'description' => '是否允许OSS追加写。取值如下:'."\n"
.'- true'."\n"
.'- false', 'type' => 'boolean', 'example' => 'true'],
'OversoldType' => ['title' => '作业的超卖资源使用方式(不接受/可接受/只接受)', 'description' => '作业的超卖资源使用方式(不接受/可接受/只接受)。', 'type' => 'string', 'example' => 'AcceptQuotaOverSold'],
'AdvancedSettings' => ['title' => '额外高级参数配置', 'description' => '额外高级参数配置。', 'type' => 'object'],
'Driver' => ['title' => 'NVIDAI驱动配置', 'description' => 'NVIDIA驱动配置。', 'type' => 'string', 'example' => '535.54.03'],
'EnableSanityCheck' => ['title' => '允许作业开启算力健康检测', 'description' => '允许作业开启算力健康检测。取值如下:'."\n"
.'- true'."\n"
.'- false', 'type' => 'boolean', 'example' => 'true'],
'SanityCheckArgs' => ['title' => '算力健康检测的配置参数', 'description' => '算力健康检测的配置参数。', 'type' => 'string', 'example' => '--sanity-check-timing=AfterJobFaultTolerant --sanity-check-timeout-ops=MarkJobFail'],
'JobReservedMinutes' => ['title' => '作业结束后保留的时长,单位分钟', 'description' => '作业结束后保留的时长(分钟)。', 'type' => 'integer', 'format' => 'int32', 'example' => '30'],
'JobReservedPolicy' => [
'title' => '作业结束后保留的策略',
'description' => '作业结束后保留的策略。',
'type' => 'string',
'example' => 'Always',
'enum' => ['Always', 'OnFailure', 'OnSucceed'],
],
'EnableCPUAffinity' => ['title' => 'CPU亲和性设置,仅在使用通用计算预付费资源时该设置有效', 'description' => 'CPU亲和性设置,仅在使用通用计算预付费资源时该设置有效', 'type' => 'boolean', 'example' => 'true'],
'DisableEcsStockCheck' => ['title' => '是否跳过库存校验', 'description' => '是否跳过库存校验。取值如下:'."\n"
.'- true'."\n"
.'- false', 'type' => 'boolean', 'example' => 'false'],
'AllocateAllRDMADevices' => ['title' => '是否需要挂载全部RDMA网卡', 'description' => '是否需要挂载全部RDMA网卡', 'type' => 'boolean'],
'EnableDSWDev' => ['type' => 'boolean', 'description' => ''],
'DataJuicerConfig' => ['description' => 'DataJuicer任务配置。', '$ref' => '#/components/schemas/DataJuicerConfig'],
'ModelConfig' => ['$ref' => '#/components/schemas/ModelConfig', 'title' => '产出模型配置,该参数目前只在联合训练场景中生效', 'description' => '产出模型配置,该参数目前只在联合训练场景中生效'],
'AllowUnschedulableNodes' => ['type' => 'boolean'],
'Shell' => [
'type' => 'string',
'example' => '/bin/bash',
'enum' => ['/bin/sh', '/bin/bash'],
],
],
],
'JobSpec' => [
'title' => 'JobSpec',
'description' => '描述一种类型的Worker的详细配置,包括硬件规格,运行镜像,副本数量等。',
'type' => 'object',
'properties' => [
'Type' => ['title' => '类型', 'description' => 'Type与Job Type紧密相关,不同Job Type支持不同的Worker Type。'."\n"
."\n"
.'- **TFJob**:支持Chief, PS, Worker, Evaluator, GraphLearn。'."\n"
."\n"
.'- **PyTorchJob**: 支持Worker, Master。'."\n"
."\n"
.'- **XGBoostJob**: 支持Worker, Master。'."\n"
.'- **OneFlowJob**:支持Worker, Master。'."\n"
.'- **ElasticBatch**:支持Worker, Master。'."\n"
.'- **RayJob**:支持Head, Worker, Worker[-xxx]。'."\n"
."\n"
.'PyTorchJob、XGBoostJob、OneFlowJob和ElasticBatch中的Master是可选的,若未指定,系统会自动将第一个Worker节点作为Master。', 'type' => 'string', 'example' => 'Worker'],
'Image' => ['title' => '镜像', 'description' => '此类Worker的运行镜像地址,可以调用 [ListImages](~~449118~~) 获取PAI平台提供的镜像。也可以指定第三方公开的镜像。', 'type' => 'string', 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com/cloud-dsw/tensorflow:1.12PAI-gpu-py36-cu101-ubuntu18.04'],
'ImageConfig' => ['title' => '私有镜像配置', 'description' => '私有镜像配置。', '$ref' => '#/components/schemas/ImageConfig'],
'PodCount' => ['title' => '实例数量', 'description' => '副本数量。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'],
'ExtraPodSpec' => ['title' => '额外的Pod配置', 'description' => '额外的Pod配置。', '$ref' => '#/components/schemas/ExtraPodSpec'],
'ResourceConfig' => ['title' => '资源配置', 'description' => '资源配置。', '$ref' => '#/components/schemas/ResourceConfig'],
'UseSpotInstance' => ['title' => '是否使用竞价实例', 'description' => '是否使用竞价实例。', 'type' => 'boolean', 'deprecated' => true, 'example' => 'false'],
'SpotSpec' => ['title' => '抢占式实例配置', 'description' => '抢占式实例配置。', '$ref' => '#/components/schemas/SpotSpec'],
'AssignNodeSpec' => ['title' => '指点调度节点配置', 'description' => '指点调度节点配置。', '$ref' => '#/components/schemas/AssignNodeSpec'],
'LocalMountSpecs' => [
'title' => '本地挂载配置列表',
'description' => '本地挂载配置列表。',
'type' => 'array',
'items' => ['title' => '本地挂载配置', 'description' => '本地挂载配置', '$ref' => '#/components/schemas/LocalMountSpec'],
],
'AutoScalingSpec' => ['title' => '自动伸缩配置', 'description' => '自动伸缩配置', '$ref' => '#/components/schemas/AutoScalingSpec'],
'ServiceSpec' => ['description' => '服务配置', '$ref' => '#/components/schemas/ServiceSpec'],
'IsCheif' => ['title' => '单词拼写错误,已废弃', 'description' => '单词拼写错误,已废弃', 'type' => 'boolean', 'deprecated' => true],
'IsChief' => ['title' => '标记该角色是否是Chief角色,Chief角色只能有一个', 'description' => '标记该角色是否是Chief角色,Chief角色只能有一个', 'type' => 'boolean'],
'RestartPolicy' => ['title' => '重启策略,支持Always,Never,OnFailure,ExitCode四种策略', 'description' => '重启策略,支持Always,Never,OnFailure,ExitCode四种策略', 'type' => 'string', 'example' => 'ExitCode'],
'SystemDisk' => ['$ref' => '#/components/schemas/SystemDisk', 'description' => ''],
'EcsSpec' => ['description' => 'Worker的硬件规格,请访问[PAI-DLC计费说明](~~171758~~)获取详细规格列表。>不同规格的价格会有区别。>', 'type' => 'string', 'example' => 'ecs.c6.large'],
'QuotaId' => ['type' => 'string', 'description' => ''],
'ConsiderInSuccessPolicy' => ['title' => '判断任务成功时是否考虑该角色,成功策略为Partial时生效', 'description' => '判断任务成功时是否考虑该角色,成功策略为Partial时生效', 'type' => 'boolean'],
'StartupDependencies' => [
'title' => '该角色启动前需要的依赖',
'description' => '该角色启动前需要的依赖',
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/StartupDependency', 'description' => ''],
],
'ElasticSpotSpecs' => [
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/ElasticSpotSpec'],
],
],
],
'JobTemplateVersionDetail' => [
'type' => 'object',
'properties' => [
'Version' => ['title' => '版本号', 'description' => '模板版本号', 'type' => 'integer', 'format' => 'int32'],
'Content' => ['title' => '模板内容', 'description' => '任务模板的配置内容,支持 CreateJob 接口的所有参数字段,以 JSON 对象存储', 'type' => 'string'],
'CreatedBy' => ['title' => '版本创建者', 'description' => '创建该版本的用户ID', 'type' => 'string'],
'GmtCreated' => ['title' => '版本创建时间', 'description' => '该版本的创建时间', 'type' => 'string', 'format' => 'iso8601_normal'],
'Constraints' => [
'type' => 'object',
'additionalProperties' => ['type' => 'string'],
],
],
],
'Lifecycle' => [
'title' => 'Lifecycle对象',
'description' => 'Lifecycle对象',
'type' => 'object',
'properties' => [
'PreStop' => [
'title' => '容器停止之前',
'description' => '容器停止之前',
'type' => 'object',
'properties' => [
'Exec' => [
'title' => '执行对象',
'description' => '执行对象',
'type' => 'object',
'properties' => [
'Command' => [
'title' => '命令Command',
'description' => '命令Command',
'type' => 'array',
'items' => ['title' => '', 'description' => '', 'type' => 'string'],
],
],
],
],
],
'PostStart' => [
'title' => '容器启动之后',
'description' => '容器启动之后',
'type' => 'object',
'properties' => [
'Exec' => [
'title' => '执行对象',
'description' => '执行对象',
'type' => 'object',
'properties' => [
'Command' => [
'title' => '命令',
'description' => '命令',
'type' => 'array',
'items' => ['type' => 'string', 'description' => ''],
],
],
],
],
],
],
],
'LocalMountSpec' => [
'title' => '本地挂载配置',
'description' => '本地挂载配置',
'type' => 'object',
'properties' => [
'MountMode' => ['title' => '挂载模式,支持Block,Filesystem两种模式', 'description' => '挂载模式,支持Block,Filesystem两种模式', 'type' => 'string'],
'LocalPath' => ['title' => '宿主机本地路径,当MountMode为Block时该字段无效', 'description' => '宿主机本地路径,当MountMode为Block时该字段无效', 'type' => 'string'],
'MountPath' => ['title' => '容器内挂载绝对路径,必须以/开头,当MountMode为Block时,必须以/dev/开头', 'description' => '容器内挂载绝对路径,必须以/开头,当MountMode为Block时,必须以/dev/开头', 'type' => 'string'],
],
],
'LogInfo' => [
'title' => 'A short description of struct',
'type' => 'object',
'properties' => [
'PodUid' => ['title' => '日志所属的Pod的Uid', 'type' => 'string'],
'Content' => ['title' => '日志的文本内容', 'type' => 'string'],
'Time' => ['title' => '日志的时间戳信息,该时间为UTC时间', 'type' => 'string'],
'IsTruncated' => ['title' => '标志日志是否被截断的属性。若为true,则代表该日志被截断。若为false,则代表日志未被截断。', 'type' => 'boolean'],
'PodId' => ['title' => '日志所属的Pod的Id', 'type' => 'string'],
'Id' => ['title' => '日志的ID信息,用于获取相关上下文', 'type' => 'string'],
'Source' => ['title' => '日志的来源', 'type' => 'string', 'example' => 'stderr, stdout'],
],
],
'Member' => [
'title' => 'A short description of struct',
'description' => '工作空间成员',
'type' => 'object',
'properties' => [
'MemberId' => ['title' => '成员id', 'type' => 'string', 'example' => 'ken_12345'],
'MemberType' => ['title' => '成员角色', 'type' => 'string', 'example' => 'WorkspaceAdmin'],
],
],
'Metric' => [
'title' => '监控指标样本',
'description' => '监控指标。',
'type' => 'object',
'properties' => [
'Time' => ['title' => '时间戳(毫秒)', 'description' => '时间戳(Unix Timestamp),单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1616987726587'],
'Value' => ['title' => '样本值', 'description' => '监控数据的值。', 'type' => 'number', 'format' => 'float', 'example' => '23.45'],
],
],
'ModelConfig' => [
'type' => 'object',
'properties' => [
'ModelName' => ['title' => '产出模型名称,联合训练的作业的产出模型会以这个模型名称注册到AI资产管理-模型当中', 'type' => 'string'],
'ModelTemplate' => ['title' => '模型模版配置,产出模型如果要一键部署到EAS时需要填写', '$ref' => '#/components/schemas/ModelTemplate'],
],
],
'ModelTemplate' => [
'type' => 'object',
'properties' => [
'ModelName' => ['title' => '模型模版名称', 'type' => 'string'],
'Provider' => ['title' => '模型模版提供方,默认值: \'pai\',表示PAI官方提供的模型模版', 'type' => 'string'],
'Collections' => ['title' => '模型模板所在的Collection,默认值:\'QuickStartTemplate\'', 'type' => 'string'],
],
],
'PodItem' => [
'title' => 'A short description of struct',
'description' => 'Pod的详细信息',
'type' => 'object',
'properties' => [
'Type' => ['title' => 'Pod类型', 'type' => 'string', 'example' => 'Worker'],
'PodId' => ['title' => 'Pod Id', 'type' => 'string', 'example' => 'dlc-20210126170216-mtl37ge7gkvdz-worker-0'],
'PodUid' => ['title' => 'Pod Uid', 'type' => 'string', 'example' => 'fe846462-af2c-4521-bd6f-96787a57591d'],
'Status' => ['title' => 'Pod状态', 'type' => 'string', 'example' => 'Stopped'],
'Ip' => ['title' => 'Pod Ip', 'type' => 'string', 'example' => '10.0.1.2'],
'GmtCreateTime' => ['title' => 'Pod创建时间(UTC)', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
'GmtStartTime' => ['title' => 'Pod启动时间(UTC)', 'type' => 'string', 'example' => '2021-01-12T14:36:05Z'],
'GmtFinishTime' => ['title' => 'Pod结束时间(UTC)', 'type' => 'string', 'example' => '2021-01-12T15:36:05Z'],
'HistoryPods' => [
'title' => '历史Pods',
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/PodItem'],
],
'SubStatus' => ['type' => 'string'],
'NodeName' => ['type' => 'string'],
'PodIp' => ['type' => 'string'],
'PodIps' => [
'title' => '灵骏智算:用户VPC net0;管控VPC net;Pod间通信ethx'."\n"
.'通用计算:用户VPC eth1 专有网关默认路由;管控VPC eth0 公有网关默认路由;Pod间通信 net eRDMA',
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/PodNetworkInterface'],
],
],
],
'PodMetric' => [
'title' => 'Pod监控指标',
'description' => '任务监控数据。',
'type' => 'object',
'properties' => [
'PodId' => ['title' => 'Pod编号', 'description' => '节点ID。', 'type' => 'string', 'example' => 'dlc-20210329110128-******-worker-0'],
'Metrics' => [
'title' => '监控指标样本序列',
'description' => '监控数据列表。',
'type' => 'array',
'items' => ['description' => '监控数据。', '$ref' => '#/components/schemas/Metric'],
],
],
],
'PodNetworkInterface' => [
'type' => 'object',
'properties' => [
'InterfaceName' => ['title' => '网卡接口名称', 'description' => '网卡接口名称', 'type' => 'string'],
'Ip' => ['title' => '网卡对应的IP地址', 'description' => '网卡对应的IP地址', 'type' => 'string'],
],
'description' => '',
],
'Quota' => [
'title' => '资源配额',
'description' => '资源配额详情',
'type' => 'object',
'properties' => [
'QuotaId' => ['title' => '资源配额id', 'type' => 'string', 'example' => 'quotamtl37ge7gkvdz'],
'QuotaName' => ['title' => '资源配额名称', 'type' => 'string', 'example' => 'dlc-quota'],
'QuotaType' => ['title' => '资源配额类型', 'type' => 'string', 'example' => 'asiquota'],
'UsedQuota' => ['title' => '资源用量', '$ref' => '#/components/schemas/QuotaDetail'],
'TotalQuota' => ['title' => '资源总量', '$ref' => '#/components/schemas/QuotaDetail'],
'ClusterId' => ['title' => '集群id', 'type' => 'string'],
'ClusterName' => ['title' => '集群名称', 'type' => 'string'],
'TotalTideQuota' => ['title' => '潮汐资源总量', '$ref' => '#/components/schemas/QuotaDetail'],
'UsedTideQuota' => ['title' => '潮汐资源用量', '$ref' => '#/components/schemas/QuotaDetail'],
'QuotaConfig' => ['title' => '资源配额设置', '$ref' => '#/components/schemas/QuotaConfig'],
],
],
'QuotaConfig' => [
'title' => '资源配额度设置',
'description' => '资源组配置',
'type' => 'object',
'properties' => [
'EnableTideResource' => ['title' => '是否使用潮汐资源', 'type' => 'boolean'],
'ResourceLevel' => ['title' => '资源级别(L0, L1)', 'type' => 'string'],
'AllowedMaxPriority' => ['title' => '允许的最大优先级', 'type' => 'integer', 'format' => 'int32'],
'EnableDLC' => ['title' => '是否开启DLC', 'type' => 'boolean'],
'EnableDSW' => ['title' => '是否开启DSW', 'type' => 'boolean'],
],
],
'QuotaDetail' => [
'title' => 'A short description of struct',
'description' => '资源配额详情',
'type' => 'object',
'properties' => [
'CPU' => ['title' => 'CPU核数', 'type' => 'string', 'example' => '2'],
'Memory' => ['title' => '内存容量', 'type' => 'string', 'example' => '10Gi'],
'GPU' => ['title' => 'GPU卡数', 'type' => 'string', 'example' => '5'],
'GPUType' => ['title' => 'GPU卡型', 'type' => 'string', 'example' => 'Tesla-V100'],
'GPUTypeFullName' => ['title' => 'GPU卡型全名', 'type' => 'string', 'example' => 'nvidia.com/gpu'],
'GPUDetails' => [
'title' => 'GPU详情',
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/GPUDetail'],
],
],
],
'ResourceConfig' => [
'title' => '资源配置',
'description' => '资源配置',
'type' => 'object',
'properties' => [
'CPU' => ['title' => 'CPU核心数', 'description' => 'CPU核心数', 'type' => 'string', 'example' => '10'],
'GPU' => ['title' => 'GPU核心数', 'description' => 'GPU核心数', 'type' => 'string', 'example' => '3'],
'Memory' => ['title' => '内存容量', 'description' => '内存容量', 'type' => 'string', 'example' => '10Gi'],
'SharedMemory' => ['title' => '共享内存容量', 'description' => '共享内存容量', 'type' => 'string', 'example' => '5Gi'],
'GPUType' => ['title' => '显卡类型', 'description' => 'GPU类型', 'type' => 'string', 'example' => 'Tesla-V100-16G'],
],
],
'ResourceLimit' => [
'description' => '资源预估的限制。',
'type' => 'object',
'properties' => [
'CPU' => ['title' => 'GPU核心数', 'description' => 'GPU核心数。', 'type' => 'string', 'example' => '2'],
'Memory' => ['title' => '内存容量', 'description' => '内存容量限制,单位为Gi。', 'type' => 'string', 'example' => '10Gi'],
'GPU' => ['title' => 'GPU核心数', 'description' => 'GPU核心数。', 'type' => 'string', 'example' => '20'],
],
],
'ResourceRequirements' => [
'title' => 'ResourceRequirements',
'description' => '容器资源',
'type' => 'object',
'properties' => [
'Limits' => [
'title' => '资源限制',
'description' => '资源限制',
'type' => 'object',
'additionalProperties' => ['type' => 'string', 'example' => '{\'cpu\': \'1\', \'memory\': \'1000Mi\'}', 'description' => ''],
],
'Requests' => [
'title' => '资源需求',
'description' => '资源需求',
'type' => 'object',
'additionalProperties' => ['type' => 'string', 'example' => '{\'cpu\': \'1\', \'memory\': \'1000Mi\'}', 'description' => ''],
],
],
],
'Resources' => [
'title' => 'A short description of struct',
'description' => '资源量',
'type' => 'object',
'properties' => [
'CPU' => ['title' => 'CPU核心数', 'type' => 'string', 'example' => '10'],
'GPU' => ['title' => 'GPU卡数', 'type' => 'string', 'example' => '8'],
'Memory' => ['title' => '内存大小', 'type' => 'string', 'example' => '1024(单位GB)'],
],
],
'SanityCheckResultItem' => [
'title' => 'SanityCheck检测结果条目',
'description' => 'SanityCheck检测结果。',
'type' => 'object',
'properties' => [
'Phase' => ['title' => '所在的检测阶段', 'description' => '所在的检测阶段。', 'type' => 'string', 'example' => 'CheckInit'],
'Message' => ['title' => '检测结果具体信息', 'description' => '检测结果具体信息。', 'type' => 'string'],
'Status' => ['title' => '检测状态', 'description' => '检测状态。', 'type' => 'string', 'example' => 'Succeeded'],
'StartedAt' => ['title' => '检测开始时间', 'description' => '检测开始时间。', 'type' => 'string', 'example' => '2023-11-30T16:47:30.343005+08:00'],
'FinishedAt' => ['title' => '检测结束时间', 'description' => '检测结束时间。', 'type' => 'string', 'example' => '2023-11-30T16:47:30.378817+08:00'],
'CheckNumber' => ['title' => '第几次检测', 'description' => '第几次检测。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
],
],
'SeccompProfile' => [
'title' => 'Seccomp安全配置',
'description' => '过滤进程的系统调用的SecurityContext配置',
'type' => 'object',
'properties' => [
'Type' => ['title' => 'Seccomp配置类型,取值:Localhost,RuntimeDefault,Unconfined', 'description' => 'Seccomp配置类型,取值:Localhost,RuntimeDefault,Unconfined', 'type' => 'string', 'example' => 'Unconfined'],
'LocalhostProfile' => ['title' => '节点上的seccomp配置文件路径,仅Type为Localhost生效', 'description' => '节点上的seccomp配置文件路径,仅Type为Localhost生效', 'type' => 'string', 'example' => 'my-profiles/profile-allow.json'],
],
],
'SecurityContext' => [
'title' => '容器安全上下文',
'description' => '容器安全上下文配置',
'type' => 'object',
'properties' => [
'RunAsUser' => ['title' => '运行容器的用户UID', 'description' => '运行容器的用户UID', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
'RunAsGroup' => ['title' => '运行容器的用户GID', 'description' => '运行容器的用户GID', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
'SeccompProfile' => ['title' => 'Seccomp配置', 'description' => 'Seccomp配置', '$ref' => '#/components/schemas/SeccompProfile'],
'Privileged' => ['title' => '特权模式,仅对部分灵骏预付费用户场景开放', 'description' => '特权模式,仅对部分灵骏预付费用户场景开放', 'type' => 'boolean'],
'Capabilities' => ['title' => '容器的Linux Capabilities配置', 'description' => '容器的Linux Capabilities配置', '$ref' => '#/components/schemas/SecurityContextCapabilities'],
],
],
'SecurityContextCapabilities' => [
'title' => 'Linux Capabilities配置',
'description' => 'Linux Capabilities配置',
'type' => 'object',
'properties' => [
'Add' => [
'title' => '需要添加的Linux Capability列表',
'description' => '需要添加的Linux Capability列表',
'type' => 'array',
'items' => ['type' => 'string', 'description' => ''],
],
'Drop' => [
'title' => '需要移除的Linux Capability列表',
'description' => '需要移除的Linux Capability列表',
'type' => 'array',
'items' => ['type' => 'string', 'description' => ''],
],
],
],
'ServiceExposure' => [
'type' => 'object',
'properties' => [
'ServiceId' => ['type' => 'string'],
'DisplayName' => ['type' => 'string'],
'JobId' => ['type' => 'string'],
'PodId' => ['type' => 'string'],
'Type' => ['type' => 'string'],
'Port' => ['type' => 'integer', 'format' => 'int32'],
'Status' => ['type' => 'string'],
'Message' => ['type' => 'string'],
],
],
'ServiceSpec' => [
'description' => '服务配置详情',
'type' => 'object',
'properties' => [
'DefaultPort' => ['title' => '服务默认端口', 'description' => '服务默认端口', 'type' => 'integer', 'format' => 'int32', 'example' => '8080'],
'ServiceMode' => [
'title' => '服务模式,支持PerRole和PerPod',
'description' => '服务模式,支持PerRole和PerPod,默认为空,空表示PerPod',
'type' => 'string',
'enumValueTitles' => ['PerPod' => 'PerPod', 'PerRole' => 'PerRole'],
'example' => 'PerRole',
],
'ExtraPorts' => [
'title' => '服务额外端口列表',
'description' => '服务额外端口列表',
'type' => 'array',
'items' => ['description' => '服务额外端口', 'type' => 'integer', 'format' => 'int32', 'example' => '8081'],
],
],
],
'SmartCache' => [
'title' => 'A short description of struct',
'type' => 'object',
'properties' => [
'Path' => ['title' => 'OSS数据源路径', 'type' => 'string', 'example' => 'oss://buc/path/to/dir'],
'Status' => ['title' => '运行状态', 'type' => 'string', 'example' => 'Running'],
'Options' => ['title' => '可选的超参数', 'type' => 'string', 'example' => '{"num_threads": 32}'],
'Description' => ['title' => 'SmartCache 描述', 'type' => 'string', 'example' => 'test'],
'Duration' => ['title' => '已运行时长', 'type' => 'string', 'example' => '123456'],
'SmartCacheId' => ['title' => 'SmartCacheId', 'type' => 'string', 'example' => 'smartcache-20210114104214-vf9lowjt3pso'],
'CacheWorkerNum' => ['title' => 'cache worker的数量单位是个', 'type' => 'integer', 'format' => 'int64', 'example' => '10'],
'MountPath' => ['title' => '数据源本地挂载目录', 'type' => 'string', 'example' => '/root/data/'],
'CacheWorkerSize' => ['title' => '每个cache worker的cache大小单位是GB', 'type' => 'integer', 'format' => 'int64', 'example' => '100'],
'Type' => ['title' => '挂载的数据类型', 'type' => 'string', 'example' => 'oss'],
'Endpoint' => ['title' => 'OSS Endpoint', 'type' => 'string', 'example' => 'oss-cn-beijing-internal.aliyuncs.com'],
'GmtModifyTime' => ['title' => '修改时间(UTC)', 'type' => 'string', 'example' => '2021-01-12T23:36:01Z'],
'UserId' => ['title' => '创建者Id', 'type' => 'string', 'example' => '189xxx'],
'DisplayName' => ['title' => 'SmartCache 名称', 'type' => 'string', 'example' => 'test'],
'FileSystemId' => ['title' => '阿里云的NAS文件系统ID', 'type' => 'string', 'example' => '1ca404****'],
'GmtCreateTime' => ['title' => '创建时间(UTC)', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
],
],
'SpotSpec' => [
'title' => '抢占式实例规格',
'description' => '抢占式实例配置',
'type' => 'object',
'properties' => [
'SpotStrategy' => [
'title' => '抢占式实例抢占策略',
'description' => '抢占式实例抢占策略,可选值:'."\n"
.'- SpotWithPriceLimit',
'type' => 'string',
'enumValueTitles' => ['SpotWithPriceLimit' => 'SpotWithPriceLimit'],
'example' => 'SpotWithPriceLimit',
],
'SpotDiscountLimit' => ['title' => '抢占式实例最高价格折扣上限', 'description' => '抢占式实例最高价格折扣上限。参数SpotDiscountLimit和SpotPriceLimit二选一', 'type' => 'number', 'format' => 'float', 'example' => '0.8'],
'SpotPriceLimit' => ['title' => '抢占式实例最高价格上限', 'description' => '抢占式实例最高价格上限,单位是元/分钟。参数SpotDiscountLimit和SpotPriceLimit二选一', 'type' => 'number', 'format' => 'float', 'example' => '0.4744'],
],
],
'StartupDependency' => [
'type' => 'object',
'properties' => [
'Type' => ['title' => '依赖的角色类型', 'type' => 'string', 'required' => false],
'OnPhase' => ['title' => '依赖的角色到何种阶段视作满足', 'type' => 'string', 'required' => false],
'MinReplicas' => ['title' => '依赖的角色最少多少个达到预期Phase视作满足', 'type' => 'string', 'required' => false],
],
],
'StatusTransitionItem' => [
'title' => '作业状态信息流转条目',
'description' => '作业流转状态信息条目',
'type' => 'object',
'properties' => [
'Status' => ['title' => '作业状态', 'description' => '作业状态', 'type' => 'string'],
'StartTime' => ['title' => '此状态开始时间(UTC)', 'description' => '此状态开始时间(UTC)', 'type' => 'string'],
'EndTime' => ['title' => '此状态结束时间(UTC)', 'description' => '此状态结束时间(UTC)', 'type' => 'string'],
'ReasonCode' => ['title' => '出现此状态的原因码', 'description' => '出现此状态的原因码', 'type' => 'string'],
'ReasonMessage' => ['title' => '出现此状态的具体信息', 'description' => '出现此状态的具体信息', 'type' => 'string'],
],
],
'SystemDisk' => [
'title' => '系统盘配置',
'description' => '系统盘配置',
'type' => 'object',
'properties' => [
'Size' => ['title' => '系统盘大小,单位为GiB', 'description' => '系统盘大小,单位为GiB', 'type' => 'integer', 'format' => 'int64', 'required' => false],
'Category' => ['title' => '系统盘类型,如cloud_essd', 'description' => '系统盘类型,如cloud_essd', 'type' => 'string', 'required' => false],
'PerformanceLevel' => ['title' => 'ESSD云盘的性能等级,如PL0、PL1', 'description' => 'ESSD云盘的性能等级,如PL0、PL1', 'type' => 'string', 'required' => false],
],
],
'Tensorboard' => [
'title' => 'A short description of struct',
'description' => 'Tensorboard详情说明。',
'type' => 'object',
'properties' => [
'TensorboardId' => ['title' => 'Tensorboard Id', 'description' => 'Tensorboard ID。', 'type' => 'string', 'example' => 'tensorboard-xxx'],
'TensorboardUrl' => ['title' => 'Tensorboard URL', 'description' => 'Tensorboard URL。', 'type' => 'string', 'example' => 'http://xxxxxx'],
'Status' => ['title' => '状态', 'description' => '状态。', 'type' => 'string', 'example' => 'running'],
'Duration' => ['title' => '运行时长', 'description' => '运行时长(秒)。', 'type' => 'string', 'example' => '60'],
'GmtCreateTime' => ['title' => '创建时间(UTC)', 'description' => '创建时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:35:00Z'],
'GmtModifyTime' => ['title' => '修改时间(UTC)', 'description' => '修改时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:00Z'],
'GmtFinishTime' => ['title' => '结束时间(UTC)', 'description' => '结束时间(UTC)', 'type' => 'string', 'example' => 'null'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
'DisplayName' => ['title' => '展示名称', 'description' => '展示名称。', 'type' => 'string', 'example' => 'test'],
'DataSourceId' => ['title' => '数据源Id', 'description' => '数据源ID。', 'type' => 'string', 'example' => 'datasource-test'],
'SummaryPath' => ['title' => '文件路径', 'description' => '文件路径。', 'type' => 'string', 'example' => '/root/data'],
'UserId' => ['title' => '创建者', 'description' => '创建者的ID。', 'type' => 'string', 'example' => 'lycxxxxx'],
'Username' => ['title' => '创建者的用户名', 'description' => '创建者的用户名。', 'type' => 'string', 'example' => 'tensorboard.pai'],
'ReasonCode' => ['title' => '状态详情码', 'description' => '状态详情码。', 'type' => 'string', 'example' => '""'],
'ReasonMessage' => ['title' => '状态详情', 'description' => '状态详情。', 'type' => 'string', 'example' => '""'],
'JobId' => ['title' => '任务Id', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc-20210114104214-vf9lowjt3pso'],
'TensorboardDataSources' => [
'title' => 'Tensorboard任务挂载的数据集',
'description' => 'Tensorboard任务挂载的数据集。',
'type' => 'array',
'items' => ['description' => 'Tensorboard的数据集配置描述。', 'required' => false, '$ref' => '#/components/schemas/TensorboardDataSourceSpec'],
],
'TensorboardSpec' => ['title' => 'Tensorboard任务的后付费配置', 'description' => 'Tensorboard任务的后付费配置。', '$ref' => '#/components/schemas/TensorboardSpec'],
'QuotaId' => ['title' => 'Tensorboard使用的资源组Id', 'description' => 'Tensorboard使用的资源组ID。', 'type' => 'string', 'example' => 'quota12***'],
'Priority' => ['title' => 'Tensorboard任务的优先级', 'description' => 'Tensorboard任务的优先级。', 'type' => 'string', 'example' => '1'],
'QuotaName' => ['title' => 'Tensorboard使用的资源配额的名称', 'description' => 'Tensorboard使用的资源配额的名称。', 'type' => 'string', 'example' => 'dlc-quota'],
'Accessibility' => ['title' => '可见性', 'description' => '可见性。', 'type' => 'string', 'example' => 'PRIVATE'],
],
],
'TensorboardDataSourceSpec' => [
'title' => 'Tensorboard的DataSource配置',
'description' => 'Tensorboard的数据集配置描述。',
'type' => 'object',
'properties' => [
'DirectoryName' => ['title' => 'DataSource在Tensorboard内的目录前缀', 'description' => '数据集在Tensorboard任务内的目录前缀。', 'type' => 'string', 'example' => 'dlcJobName'],
'Name' => ['title' => 'DataSource名称', 'description' => '数据集配置的名称。通常为数据集名称或者任务名称。', 'type' => 'string', 'example' => 'dlcJobName'],
'Id' => ['title' => 'DataSource Id', 'description' => '数据集配置的ID。通常为数据集ID,或者任务ID。', 'type' => 'string', 'example' => 'd-vf2fdhxxxxxx'],
'DataSourceType' => ['title' => 'DataSource数据集类型', 'description' => '数据集配置的Uri对应文件类型。', 'type' => 'string', 'example' => 'OSS'],
'Uri' => ['title' => 'DataSourceType对应的文件系统Uri', 'description' => '数据集配置中的文件系统Uri。', 'type' => 'string', 'example' => 'oss://examplebucket.oss-cn-shanghai-internal.aliyuncs.com/'],
'SourceType' => ['title' => 'DataSource的类型', 'description' => '数据集的类型。'."\n"
.'- datasource代表按数据集类型配置。'."\n"
.'- dlcjob代表按任务类型配置。', 'type' => 'string', 'example' => 'datasource'],
'SummaryPath' => ['title' => 'Tensorboard Summary文件路径', 'description' => 'Summary目录路径。', 'type' => 'string', 'example' => '/tensorboard/run1'],
'FullSummaryPath' => ['title' => 'Tensorboard Summary文件的最终路径', 'description' => 'Summary目录的最终路径。', 'type' => 'string', 'example' => 'oss://xxxxx/tensorboard/run1'],
],
],
'TensorboardSpec' => [
'title' => 'Tensorboard任务后付费配置',
'description' => '后付费的Tensorboard任务相关配置。',
'type' => 'object',
'properties' => [
'VpcId' => ['title' => 'VPC的Id信息', 'description' => '后付费Tensorboard任务配置的VPC的ID。', 'type' => 'string', 'example' => 'vpc-xxxx'],
'EcsType' => ['title' => 'ECS规格', 'description' => '后付费Tensorboard任务配置的ECS的规格。', 'type' => 'string', 'example' => 'ecs.g6.large'],
'SecurityGroupId' => ['title' => '安全组的Id信息', 'description' => '后付费Tensorboard任务配置的安全组的ID。', 'type' => 'string', 'example' => 'sg-xxxxx'],
'SwitchId' => ['title' => 'VSwitch的Id信息', 'description' => '后付费Tensorboard任务配置的vSwitch的ID。', 'type' => 'string', 'example' => 'vsw-xxxx'],
],
],
'Workspace' => [
'title' => 'A short description of struct',
'description' => '工作空间',
'type' => 'object',
'properties' => [
'WorkspaceId' => ['title' => '工作空间id', 'type' => 'string', 'example' => 'ws-20210126170216-mtl37ge7gkvdz'],
'WorkspaceName' => ['title' => '工作空间名称', 'type' => 'string', 'example' => 'dlc-workspace'],
'Creator' => ['title' => '创建者', 'type' => 'string', 'example' => 'ken'],
'GmtCreateTime' => ['title' => '创建时间', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
'GmtModifyTime' => ['title' => '最近修改时间', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
'Quotas' => [
'title' => '资源配额列表',
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/Quota'],
],
'TotalResources' => ['title' => '资源总量', '$ref' => '#/components/schemas/Resources'],
'Members' => [
'title' => '成员列表',
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/Member'],
],
'WorkspaceAdmins' => [
'title' => '管理员列表',
'type' => 'array',
'items' => ['$ref' => '#/components/schemas/Member'],
],
],
],
],
],
'apis' => [
'CreateJob' => [
'path' => '/api/v1/jobs',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeCode' => '13110',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求Body参数。',
'type' => 'object',
'properties' => [
'DisplayName' => ['title' => '作业显示名称', 'description' => '任务的名称,命名格式如下:'."\n"
.'- 名称长度不超过256个字符。'."\n"
.'- 允许数字、字母、下划线(_)、英文句号(.)和短横线(-)。', 'type' => 'string', 'required' => true, 'example' => 'tf-mnist-test', 'maxLength' => 1024, 'minLength' => 1],
'JobType' => [
'title' => '作业类型',
'description' => '任务类型,大小写敏感。当前支持的任务类型:'."\n"
.'- TFJob'."\n"
.'- PyTorchJob'."\n"
.'- MPIJob'."\n"
.'- XGBoostJob'."\n"
.'- OneFlowJob'."\n"
.'- ElasticBatchJob'."\n"
.'- SlurmJob'."\n"
.'- RayJob'."\n"
.'- DataJuicerJob',
'type' => 'string',
'required' => true,
'enumValueTitles' => ['OneFlowJob' => 'OneFlow', 'PyTorchJob' => 'PyTorch', 'SlurmJob' => 'Slurm', 'XGBoostJob' => 'XGBoost', 'ElasticBatchJob' => 'ElasticBatch', 'DataJuicerJob' => 'DataJuicer', 'MPIJob' => 'MPIJob', 'TFJob' => 'Tensorflow', 'RayJob' => 'Ray'],
'example' => 'TFJob',
'maxLength' => 32,
'minLength' => 1,
],
'JobSpecs' => [
'title' => '作业规格配置',
'description' => '**JobSpecs**描述任务运行时的各种配置,诸如镜像地址、启动命令、节点资源申明、副本数量等。'."\n"
."\n"
.'DLC任务由不同类型的节点组成,同一类型的节点拥有完全相同的配置,这种配置被称为一个JobSpec。**JobSpecs**描述所有类型节点的配置,是JobSpec的数组。',
'type' => 'array',
'items' => ['description' => '任务的运行时配置。', 'required' => false, '$ref' => '#/components/schemas/JobSpec'],
'required' => true,
'minItems' => 1,
],
'UserCommand' => ['title' => '作业命令', 'description' => '任务所有节点的启动命令。', 'type' => 'string', 'required' => true, 'example' => 'python /root/code/mnist.py'],
'DataSources' => [
'title' => '数据源配置列表',
'description' => '任务运行所使用的数据源列表。',
'type' => 'array',
'items' => [
'description' => '本任务使用的所有数据源列表。按照数据源中的配置mount到每一个节点所在的容器本地目录上(本地目录由数据源中的配置MountPath指定)。'."\n"
."\n"
.'任务的启动命令中的进程以MountPath为路径直接访问每一个数据源代表的分布式文件系统。',
'type' => 'object',
'properties' => [
'DataSourceId' => ['title' => '数据源Id', 'description' => '数据源的ID。如何查看数据源ID,请参见[ListDatasets](~~457222~~)。', 'type' => 'string', 'required' => false, 'example' => 'd-cn9dl*******'],
'MountPath' => ['title' => '本地挂载路径', 'description' => '本任务需要挂载的路径,可选参数,默认使用数据源中的挂载路径。', 'type' => 'string', 'required' => false, 'example' => '/root/data'],
'Uri' => ['title' => '数据源路径', 'description' => '数据源路径。', 'type' => 'string', 'required' => false, 'example' => 'oss://bucket.oss-cn-hangzhou-internal.aliyuncs.com/path/'],
'Options' => ['description' => '自定义数据集挂载属性,目前仅支持 OSS。', 'type' => 'string', 'required' => false, 'example' => '{'."\n"
.' "fs.oss.download.thread.concurrency": "10",'."\n"
.' "fs.oss.upload.thread.concurrency": "10",'."\n"
.' "fs.jindo.args": "-oattr_timeout=3 -oentry_timeout=0 -onegative_timeout=0 -oauto_cache -ono_symlink"'."\n"
.'}'],
'DataSourceVersion' => ['type' => 'string', 'required' => false, 'description' => ''],
'MountAccess' => ['type' => 'string', 'required' => false, 'description' => ''],
'EnableCache' => ['type' => 'boolean', 'required' => false, 'description' => ''],
'AccessPointId' => ['type' => 'string'],
'RoleChain' => ['type' => 'string'],
],
'required' => false,
],
'required' => false,
],
'CodeSource' => [
'title' => '代码源配置',
'description' => '本任务使用的代码源。任务的节点启动之前,DLC会自动下载代码源中配置好的代码,并Mount到容器的本地目录。',
'type' => 'object',
'properties' => [
'CodeSourceId' => ['title' => '代码源Id', 'description' => '代码源ID。如何获取代码源ID,请参见[ListCodeSources ](~~459922~~)。', 'type' => 'string', 'required' => false, 'example' => 'code-20210111103721-xxxxxxx'],
'Branch' => ['title' => '代码分支', 'description' => '本任务运行时,引用的代码仓库的分支,可选参数,默认使用代码源中的配置分支字段。', 'type' => 'string', 'required' => false, 'example' => 'master'],
'Commit' => ['title' => '代码Commit', 'description' => '本任务需要下载的代码Commit ID,可选参数,默认使用代码源中的CommitID配置。', 'type' => 'string', 'required' => false, 'example' => '44da109b5******'],
'MountPath' => ['title' => '本地挂载路径', 'description' => '本次任务需要挂载的路径,可选参数,默认使用代码源中配置挂载路径。', 'type' => 'string', 'required' => false, 'example' => '/root/data'],
],
'required' => false,
],
'UserVpc' => [
'title' => '用户VPC',
'description' => '用户VPC配置。',
'type' => 'object',
'properties' => [
'VpcId' => ['title' => '用户VPC的id', 'description' => '用户VPC的ID。', 'type' => 'string', 'required' => false, 'example' => 'vpc-abcdef****'],
'SwitchId' => ['title' => '用户交换机的id', 'description' => '用户交换机的ID,可选参数'."\n"
.'- 参数值为空时系统会根据库存情况自动选择合适的交换机;'."\n"
.'- 也可以自己指定交换机ID。', 'type' => 'string', 'required' => false, 'example' => 'vs-abcdef****'],
'SecurityGroupId' => ['title' => '用户安全组的id', 'description' => '用户安全组的ID。', 'type' => 'string', 'required' => false, 'example' => 'sg-abcdef****'],
'ExtendedCIDRs' => [
'title' => '扩展网段',
'description' => '扩展网段'."\n"
.'- 当交换机ID为空时,此参数可以不提供,系统会自动获取VPC下的所有网段;'."\n"
.'- 当交换机ID不为空时,此参数必须提供,建议填写VPC下的所有网段。',
'type' => 'array',
'items' => ['description' => '扩展网段。', 'type' => 'string', 'required' => false, 'example' => '192.168.0.1/24'],
'required' => false,
],
'DefaultRoute' => ['description' => '默认路由。取值如下:'."\n"
.'- eth0:表示使用默认网卡,通过公共网关访问外部网络。'."\n"
.'- eth1:表示使用用户弹性网卡,通过私有网关访问外部网络。具体配置方法,请参考[配置DSW实例通过专有公网网关访问公网](~~2525343~~)。', 'type' => 'string', 'required' => false, 'example' => 'eth0'],
],
'required' => false,
],
'ThirdpartyLibs' => [
'title' => '三方库配置列表',
'description' => '待安装的Python三方库列表。',
'type' => 'array',
'items' => ['description' => '指定一个第三方Python库和对应版本要求,例如:`numpy==1.16.1`。', 'type' => 'string', 'required' => false, 'example' => 'numpy==1.16.1'],
'required' => false,
],
'ThirdpartyLibDir' => ['title' => '三方库(requirements.txt)文件路径', 'description' => 'Python三方库(requirements.txt)文件所在文件夹名称;每个节点在运行指定的UserCommand之前,PAI-DLC会从指定文件夹取出requirements.txt文件,并调用`pip install -r`安装。', 'type' => 'string', 'required' => false, 'example' => '/root/code/'],
'Envs' => [
'title' => '环境变量配置',
'description' => '环境变量配置。',
'type' => 'object',
'required' => false,
'additionalProperties' => ['type' => 'string', 'example' => 'ENABLE_DEBUG_MODE', 'description' => '一个环境变量,格式:`Key=Value`。'."\n"
.'>环境变量需遵循POSIX标准>'],
],
'JobMaxRunningTimeMinutes' => ['title' => '作业最大运行时间', 'description' => '作业最长运行时长,单位为分钟。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'minimum' => '1', 'example' => '1024'],
'WorkspaceId' => ['title' => '工作空间编号', 'description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'required' => false, 'example' => 'ws-20210126170216-xxxxxxx'],
'ResourceId' => ['title' => '资源组编号', 'description' => '资源组ID,可选参数。'."\n"
.'- 参数值为空表示提交到公共资源组。'."\n"
.'- 如果当前工作空间已经绑定的资源配额,此处可以指定对应的资源配额ID;如何查询资源配额ID,详情请参见[管理资源配额](~~2651299~~)。', 'type' => 'string', 'required' => false, 'example' => 'rs-xxx'],
'Priority' => ['title' => '作业优先级', 'description' => '任务的优先级,可选参数,默认值1,参数值的范围是1~9。其中:'."\n"
."\n"
.'- 1为最低优先级。'."\n"
.'- 9为最高优先级。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8'],
'Settings' => ['description' => '作业额外参数配置。', 'required' => false, '$ref' => '#/components/schemas/JobSettings'],
'ElasticSpec' => ['description' => '该参数暂未支持,无需关注。', 'required' => false, '$ref' => '#/components/schemas/JobElasticSpec'],
'DebuggerConfigContent' => ['title' => 'debugger参数', 'description' => '该参数暂未支持,无需关注。', 'type' => 'string', 'required' => false, 'example' => '“”'],
'Options' => ['description' => '本任务的额外配置,通过此参数可以调整挂载的数据源的一些行为。如任务有挂载OSS类型的数据源时,可以通过将此参数配置为 `fs.oss.download.thread.concurrency=4,fs.oss.download.queue.size=16` ,覆盖JindoFS的默认参数。', 'type' => 'string', 'required' => false, 'example' => 'key1=value1,key2=value2'],
'SuccessPolicy' => ['title' => '作业成功策略,支持ChiefWorker,AllWorkers,Never', 'description' => '分布式多机任务的成功策略,目前只有Tensorflow的多机任务支持。'."\n"
.'- ChiefWorker:当指定为这个值的时候,只要Chief的pod成功结束,那么就认为整个任务成功结束。'."\n"
.'- AllWorkers(默认值):必须是所有的Worker全部成功,才会认为整个任务成功。', 'type' => 'string', 'required' => false, 'example' => 'AllWorkers'],
'CredentialConfig' => ['description' => '访问凭证配置。', 'required' => false, '$ref' => '#/components/schemas/CredentialConfig'],
'Accessibility' => ['description' => '作业的可见性,取值如下:'."\n"
.'- PUBLIC:在此工作空间中,对所有人可见。'."\n"
.'- PRIVATE:在此工作空间中,仅对您和管理员可见。', 'type' => 'string', 'required' => false, 'example' => 'PRIVATE'],
'TemplateId' => ['title' => '模板 ID', 'description' => '任务模版ID', 'type' => 'string', 'required' => false, 'example' => 'tplabc1234567'],
'TemplateVersion' => ['title' => '模板版本号', 'description' => '任务模版版本', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'],
'Description' => ['type' => 'string'],
'SchedulingStrategy' => [
'type' => 'string',
'example' => 'Auto',
'default' => 'Auto',
'enum' => ['Auto', 'Binpack', 'Spread'],
],
'CustomEnvs' => [
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Key' => ['type' => 'string', 'required' => false, 'description' => ''],
'Value' => ['type' => 'string', 'required' => false, 'description' => ''],
'Visible' => ['type' => 'string', 'required' => false, 'description' => ''],
],
'required' => false,
'description' => '',
],
'required' => false,
'description' => '',
],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '返回JSON格式字符串。',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业Id', 'description' => '此次调用创建的任务ID。', 'type' => 'string', 'example' => 'dlc7*******'],
'RequestId' => ['title' => '请求Id', 'description' => '本次请求的ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-xxxxxxx'],
],
],
],
],
'title' => '创建任务',
'summary' => '创建一个任务到集群中运行。您可以指定数据源配置、代码源配置、启动命令以及任务运行的每个节点的计算资源配置等信息',
'description' => '请确保在使用该接口前,已充分了解PAI-DLC产品的收费方式和[价格](~~171758~~)。'."\n"
.'>CreateJob接口参数总长度(包含系统生成的参数)不能超过65536个字节,>',
'changeSet' => [
['createdAt' => '2025-07-30T08:02:39.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2025-05-20T12:11:56.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2025-04-02T12:02:35.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-12-18T06:03:20.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-08-09T08:19:35.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-07-05T02:28:26.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2023-12-08T08:06:18.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2023-09-11T11:52:02.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-12-13T02:00:39.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '150', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateJob'],
],
],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'paidlc:CreateJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc7*******\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-xxxxxxx\\"\\n}","errorExample":""},{"type":"xml","example":"<不支持/>","errorExample":""}]',
],
'CreateJobTemplate' => [
'path' => '/api/v1/jobtemplates',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求Body参数。',
'type' => 'object',
'properties' => [
'TemplateName' => ['title' => '模板名称', 'description' => '任务模板的名称', 'type' => 'string', 'required' => true, 'example' => 'job-template-example-1778047**** ', 'maxLength' => 1024, 'minLength' => 1],
'Description' => ['title' => '模板描述', 'description' => '任务模板的描述信息', 'type' => 'string', 'required' => false, 'example' => 'Template description '],
'WorkspaceId' => ['title' => '工作空间 ID', 'description' => '模板所属的工作空间ID', 'type' => 'string', 'required' => true, 'example' => '15****05', 'maxLength' => 128],
'Metadata' => ['title' => '自定义元数据', 'description' => '自定义的键值对元数据', 'type' => 'object', 'required' => false, 'example' => '{}'],
'Content' => ['title' => '模板内容', 'description' => '任务模板的配置内容,包含作业配置参数,以 JSON String格式传入。', 'type' => 'string', 'required' => true, 'example' => '{\\"WorkspaceId\\":\\"15****05\\",\\"JobType\\":\\"PyTorchJob\\",\\"UserCommand\\":\\"echo hello\\",\\"JobSpecs\\":[{\\"Type\\":\\"Worker\\",\\"PodCount\\":1,\\"Image\\":\\"dsw-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai/pytorch:2.8.0-gpu-py313-cu129-ubuntu22.04-3995b779-1764361782\\",\\"EcsSpec\\":\\"ecs.gn7i-c8g1.2xlarge\\"}],\\"ResourceType\\":\\"ECS\\",\\"_ResourcePaymentType\\":\\"PostPaid\\",\\"CredentialConfig\\":{\\"EnableCredentialInject\\":false},\\"Accessibility\\":\\"PRIVATE\\",\\"Settings\\":{\\"JobReservedMinutes\\":0,\\"Tags\\":{}}} '],
'Constraints' => ['title' => '约束规则', 'description' => '字段约束规则。Key 为 JSONPath 表达式,Value 为约束类型:locked(锁定不可覆盖)、overridable(可覆盖)、required(必填)。', 'type' => 'object', 'required' => false, 'example' => '{\\"JobSpecs[0].Image\\":\\"locked\\",\\"UserCommand\\":\\"locked\\",\\"JobType\\":\\"locked\\"}'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'TemplateId' => ['title' => '模板 ID', 'description' => '任务模板的唯一标识', 'type' => 'string', 'example' => 'tplmceolmf2****'],
'TemplateName' => ['title' => '模板名称', 'description' => '任务模板的名称', 'type' => 'string', 'example' => 'job-template-example-1778047**** '],
'Description' => ['title' => '模板描述', 'description' => '任务模板的描述信息', 'type' => 'string', 'example' => 'Template description'."\n"],
'Metadata' => ['title' => '自定义元数据', 'description' => '用户自定义的键值对元数据', 'type' => 'object', 'example' => '{}'],
'WorkspaceId' => ['title' => '工作空间 ID', 'description' => '模板所属的工作空间ID', 'type' => 'string', 'example' => '15****05'],
'UserId' => ['title' => '创建者 ID', 'description' => '创建模板的用户ID', 'type' => 'string', 'example' => '20**************02'],
'TenantId' => ['title' => '租户 ID', 'description' => '模板所属的租户ID', 'type' => 'string', 'example' => '10**************14'],
'DefaultVersion' => ['title' => '默认版本号', 'description' => '当前使用的默认版本号', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
'Version' => ['title' => '版本号', 'description' => '当前返回的版本的号', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
'GmtCreateTime' => ['title' => '创建时间', 'description' => '模板的创建时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2025-12-31T02:18:09Z'],
'GmtModifyTime' => ['title' => '修改时间', 'description' => '模板的最后修改时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2026-01-12T14:36:00Z'],
'RequestId' => ['title' => '请求 ID', 'description' => '本次请求的 ID,用于诊断和答疑。', 'type' => 'string', 'example' => '8762921A-911C-515F-A3A4-*********'],
],
'description' => '',
],
],
],
'title' => '创建任务模板',
'summary' => '创建任务模板。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'paidlc:CreateJobTemplate',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TemplateId\\": \\"tplmceolmf2****\\",\\n \\"TemplateName\\": \\"job-template-example-1778047****\\\\t\\",\\n \\"Description\\": \\"Template description\\\\n\\",\\n \\"Metadata\\": {},\\n \\"WorkspaceId\\": \\"15****05\\",\\n \\"UserId\\": \\"20**************02\\",\\n \\"TenantId\\": \\"10**************14\\",\\n \\"DefaultVersion\\": 1,\\n \\"Version\\": 1,\\n \\"GmtCreateTime\\": \\"2025-12-31T02:18:09Z\\",\\n \\"GmtModifyTime\\": \\"2026-01-12T14:36:00Z\\",\\n \\"RequestId\\": \\"8762921A-911C-515F-A3A4-*********\\"\\n}","type":"json"}]',
],
'CreateRayHistoryServer' => [
'path' => '/api/v1/rayhistoryservers',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求Body参数。',
'type' => 'object',
'properties' => [
'DisplayName' => ['description' => '任务的显示名称。', 'type' => 'string', 'required' => true, 'example' => 'my-ray-history-server'],
'StoragePath' => ['description' => 'Ray 日志存储路径', 'type' => 'string', 'required' => true, 'example' => 'oss://bucket-test-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/tmp'],
'WorkspaceId' => ['description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'required' => true, 'example' => '12345'],
'ResourceId' => ['description' => '资源组ID,可选参数。'."\n"
.'- 参数值为空表示提交到公共资源组。'."\n"
.'- 如果当前工作空间已经绑定的资源配额,此处可以指定对应的资源配额ID;如何查询资源配额ID,详情请参见[管理资源配额](~~2651299~~)。', 'type' => 'string', 'required' => false, 'example' => 'quotaxxx'],
'EcsSpec' => ['description' => '公共资源组的硬件规格,请访问[PAI-DLC计费说明](~~171758~~)获取详细规格列表。>不同规格的价格会有区别。>', 'type' => 'string', 'required' => false, 'example' => 'ecs.c6.large'],
'MaxRuntimeMinutes' => ['description' => '最大运行分钟数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1000'],
'Accessibility' => ['description' => '作业的可见性,取值如下:'."\n"
.'- PUBLIC:在此工作空间中,对所有人可见。'."\n"
.'- PRIVATE:在此工作空间中,仅对您和管理员可见。', 'type' => 'string', 'required' => false, 'example' => 'PRIVATE'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '根节点',
'description' => '根节点',
'type' => 'object',
'properties' => [
'RequestId' => ['description' => '本次调用的请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-xxxxxxx'],
'RayHistoryServerId' => ['description' => '创建的 Ray History Server ID。', 'type' => 'string', 'example' => 'rhsxxxx'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '创建 RayHistoryServer',
'summary' => '创建 RayHistoryServer',
'description' => '请确保在使用该接口前,已充分了解PAI-DLC产品的收费方式和[价格](~~171758~~)。'."\n"
.'>CreateJob接口参数总长度(包含系统生成的参数)不能超过65536个字节,>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-xxxxxxx\\",\\n \\"RayHistoryServerId\\": \\"rhsxxxx\\"\\n}","type":"json"}]',
],
'CreateTensorboard' => [
'path' => '/api/v1/tensorboards',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'abilityTreeCode' => '18654',
'abilityTreeNodes' => ['FEATURElearnVD2RKE'],
],
'parameters' => [
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求参数。',
'type' => 'object',
'properties' => [
'WorkspaceId' => ['description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'required' => false, 'example' => '123***'],
'JobId' => ['title' => '任务Id', 'description' => '任务ID。如何获取任务ID,请参见[ListJobs](~~459676~~)。', 'type' => 'string', 'required' => false, 'example' => 'dlc-20210126170216-mtl37ge7gkvdz'],
'DataSourceId' => ['title' => 'DataSource Id', 'description' => '数据集ID。如何获取数据集ID,请参见[ListDatasets](~~457222~~)。', 'type' => 'string', 'required' => false, 'example' => 'd-xxxxxxxx'],
'DataSourceType' => [
'description' => '数据集类型,取值如下:'."\n"
.'- OSS'."\n"
.'- NAS',
'type' => 'string',
'required' => false,
'enumValueTitles' => [],
'example' => 'OSS',
],
'Uri' => ['description' => '数据集的URI:'."\n"
.'- 当DataSourceType为OSS时,格式为:`oss://[oss-bucket].[endpoint]/[path]`。'."\n"
.'- 当DataSourceType为NAS时,格式为:`nas://[nas-filesystem-id].[region]/[path]`。', 'type' => 'string', 'required' => false, 'example' => 'oss://.oss-cn-shanghai-finance-1.aliyuncs.com/'],
'Options' => ['description' => '数据集的扩展字段为JSON格式,当前支持MountPath:自定义数据集挂载的路径。', 'type' => 'string', 'required' => false, 'example' => '{"mountpath":"/root/data/"}'],
'SummaryPath' => ['title' => 'Summary 目录', 'description' => 'Summary目录。', 'type' => 'string', 'required' => false, 'example' => '/root/data/'],
'SummaryRelativePath' => ['description' => 'Summary相对目录。', 'type' => 'string', 'required' => false, 'example' => '/summary/'],
'DisplayName' => ['title' => 'Tensorboard名称', 'description' => 'Tensorboard名称。', 'type' => 'string', 'required' => false, 'example' => 'tensorboard'],
'SourceType' => ['description' => '来源类型。', 'type' => 'string', 'required' => false, 'example' => 'job'],
'SourceId' => ['description' => '来源ID。', 'type' => 'string', 'required' => false, 'example' => 'dlc-xxxxxx'],
'MaxRunningTimeMinutes' => ['title' => '最长运行时长', 'description' => '最长运行时长,单位为:分钟。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '240'],
'DataSources' => [
'description' => '数据源配置。',
'type' => 'array',
'items' => ['description' => '数据源信息。', 'required' => false, '$ref' => '#/components/schemas/DataSourceItem'],
'required' => false,
],
'Cpu' => ['description' => 'CPU核数。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'],
'Memory' => ['description' => '内存大小,单位为:GB。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000'],
'TensorboardDataSources' => [
'description' => 'Tensorboard任务挂载的数据集配置列表。',
'type' => 'array',
'items' => ['description' => 'Tensorboard数据源配置信息,用于Tensorboard挂载多数据集功能。目前支持按数据集配置(datasource)和按任务配置(dlc)。当Tensorboard数据源配置信息不为空时,DataSourceId配置,Uri, DataSourceType等参数不生效', 'required' => false, '$ref' => '#/components/schemas/TensorboardDataSourceSpec'],
'required' => false,
],
'TensorboardSpec' => ['description' => 'Tensorboard后付费配置信息,用于创建使用后付费资源的Tensorboard任务。', 'required' => false, '$ref' => '#/components/schemas/TensorboardSpec'],
'QuotaId' => ['description' => '资源配额ID。使用资源配额的资源创建Tensorboard任务时的必填参数。如何获取资源配额ID,请参见[ListQuotas](~~2628071~~)。'."\n"
.'只发布国内站'."\n"
.'当前仅白名单用户可以使用资源配额资源创建Tensorboard任务,若需要使用该功能,请和我们联系', 'type' => 'string', 'required' => false, 'example' => 'quota12345'],
'Priority' => ['description' => '任务的优先级,可选参数,默认值 1,参数值的范围是 1~9。其中:'."\n"
.'- 1为最低优先级。'."\n"
.'- 9为最高优先级。', 'type' => 'string', 'required' => false, 'example' => '1'],
'Accessibility' => ['description' => '任务的可见性,取值如下:'."\n"
.'- PUBLIC:在此工作空间中,对所有人可见。'."\n"
.'- PRIVATE:在此工作空间中,仅对您和管理员可见。', 'type' => 'string', 'required' => false, 'example' => 'PRIVATE'],
],
'required' => false,
'example' => '380',
],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'JobId' => ['title' => '任务Id', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc-20210126170216-xxxxxxxx'],
'DataSourceId' => ['title' => 'DataSourceId', 'description' => '数据集ID。', 'type' => 'string', 'example' => 'ds-20210126170216-xxxxxxxx'],
'TensorboardId' => ['title' => 'Tensorboard id', 'description' => 'Tensorboard ID。', 'type' => 'string', 'example' => 'tbxxxxxxxx'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
'description' => '',
],
],
],
'title' => '创建Tensorboard',
'summary' => '创建一个Tensorboard,可以通过一个任务或者指定数据源配置来创建。',
'changeSet' => [
['createdAt' => '2024-07-11T11:23:57.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-03-28T07:37:36.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateTensorboard'],
],
],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'paidlc:CreateTensorboard',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc-20210126170216-xxxxxxxx\\",\\n \\"DataSourceId\\": \\"ds-20210126170216-xxxxxxxx\\",\\n \\"TensorboardId\\": \\"tbxxxxxxxx\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"\\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\n","errorExample":""}]',
],
'DeleteJob' => [
'path' => '/api/v1/jobs/{JobId}',
'methods' => ['delete'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'abilityTreeCode' => '34384',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['title' => '作业Id', 'description' => '任务ID。如何获取任务ID,请参见[ListJobs](~~459676~~)。', 'type' => 'string', 'required' => true, 'example' => 'dlc*************'],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业Id', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc*************'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
'description' => '',
],
],
],
'title' => '删除任务',
'summary' => '删除一个运行结束(或者已停止)的任务。',
'changeSet' => [
['createdAt' => '2024-08-22T10:38:05.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2023-01-06T07:37:50.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteJob'],
],
],
'ramActions' => [
[
'operationType' => 'delete',
'ramAction' => [
'action' => 'paidlc:DeleteJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc*************\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"< 不支持 />","errorExample":""}]',
],
'DeleteJobTemplate' => [
'summary' => '删除没有使用的任务模板,如果模版已经被任务使用则不允许删除。',
'path' => '/api/v1/jobtemplates/{TemplateId}',
'methods' => ['delete'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'TemplateId',
'in' => 'path',
'schema' => ['title' => '模板 ID', 'description' => '模板 ID', 'type' => 'string', 'required' => true, 'example' => 'tplwk80096dw**** ', 'maxLength' => 128],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '模版删除信息',
'type' => 'object',
'properties' => [
'TemplateId' => ['title' => '模板 ID', 'description' => '模板 ID', 'type' => 'string', 'example' => 'tplwk80096dw****'],
'RequestId' => ['title' => '请求 ID', 'description' => '请求 ID', 'type' => 'string', 'example' => '78F6FCE2-278F-4C4A-A6B7-DD8ECEA****'],
],
],
],
],
'title' => '删除任务模板',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'delete',
'ramAction' => [
'action' => 'paidlc:DeleteJobTemplate',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TemplateId\\": \\"tplwk80096dw****\\",\\n \\"RequestId\\": \\"78F6FCE2-278F-4C4A-A6B7-DD8ECEA****\\"\\n}","type":"json"}]',
],
'DeleteRayHistoryServer' => [
'path' => '/api/v1/rayhistoryservers/{RayHistoryServerId}',
'methods' => ['delete'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'systemTags' => [
'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'RayHistoryServerId',
'in' => 'path',
'schema' => ['description' => '请求删除的 Ray History Server ID。', 'type' => 'string', 'required' => false, 'example' => 'rhsxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '78F6FCE2-278F-4C4A-A6B7-DD8ECEA9C456'],
],
'description' => '',
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '删除 RayHistoryServer',
'summary' => '删除RayHistoryServer',
'description' => '请确保在使用该接口前,已充分了解PAI-DLC产品的收费方式和[价格](~~171758~~)。'."\n"
.'>CreateJob接口参数总长度(包含系统生成的参数)不能超过65536个字节,>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78F6FCE2-278F-4C4A-A6B7-DD8ECEA9C456\\"\\n}","type":"json"}]',
],
'DeleteTensorboard' => [
'path' => '/api/v1/tensorboards/{TensorboardId}',
'methods' => ['delete'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'abilityTreeCode' => '20380',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'WorkspaceId',
'in' => 'query',
'schema' => ['title' => '工作空间ID', 'description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'required' => false, 'example' => '46099'],
],
[
'name' => 'TensorboardId',
'in' => 'path',
'schema' => ['title' => 'Tensorboad Id', 'description' => 'Tensorboard ID。如何获取Tensorboard ID,请参见[ListTensorboards](~~459689~~)。', 'type' => 'string', 'required' => true, 'example' => 'tensorboard-20210114104214-xxxxxxxx', 'maxLength' => 256, 'minLength' => 1],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'TensorboardId' => ['title' => 'Tensorboad Id', 'description' => 'Tensorboard ID。', 'type' => 'string', 'example' => 'tensorboard-20210114104214-vf9lowjt3pso'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
'description' => '',
],
],
],
'title' => '删除Tensorboard',
'summary' => '删除一个已经停止的Tensorboard。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteTensorboard'],
],
],
'ramActions' => [
[
'operationType' => 'delete',
'ramAction' => [
'action' => 'paidlc:DeleteTensorboard',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"TensorboardId\\": \\"tensorboard-20210114104214-vf9lowjt3pso\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"\\n tensorboard-20210114104214-vf9lowjt3pso\\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\n","errorExample":""}]',
],
'GetDashboard' => [
'summary' => '获取DLC任务的Dashboard URL(如果存在)。',
'path' => '/api/v1/jobs/{jobId}/dashboard',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'jobId',
'in' => 'path',
'schema' => ['title' => '任务ID'."\n", 'description' => '任务ID'."\n", 'type' => 'string', 'required' => false, 'example' => 'dlc1k7426goc7bvy'],
],
[
'name' => 'isShared',
'in' => 'query',
'schema' => [
'title' => '是否为分享链接。若为是,目前同时必填token'."\n",
'description' => '是否为分享链接。若为是,目前同时必填token'."\n",
'type' => 'boolean',
'required' => false,
'example' => 'false',
'enum' => ['true', 'false'],
],
],
[
'name' => 'token',
'in' => 'query',
'schema' => ['title' => '从GetToken获取的token'."\n", 'description' => '从GetToken获取的token'."\n", 'type' => 'string', 'required' => false, 'example' => 'some_token_value'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'url' => ['title' => 'Dashboard 的 URL'."\n", 'description' => 'Dashboard 的 URL'."\n", 'type' => 'string', 'example' => 'https://dlcj1jzm1p01saqw-spark.pre-dsw-gateway-cn-hangzhou.data.aliyun.com'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取DLC任务的Dashboard',
'description' => '请确保在使用该接口前,已充分了解PAI-DLC产品的收费方式和[价格](~~171758~~)。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"url\\": \\"https://dlcj1jzm1p01saqw-spark.pre-dsw-gateway-cn-hangzhou.data.aliyun.com\\"\\n}","type":"json"}]',
],
'GetJob' => [
'path' => '/api/v1/jobs/{JobId}',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '13115',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['title' => '作业Id', 'description' => '任务ID。如何获取任务ID,请参见[ListJobs](~~459676~~)。', 'type' => 'string', 'required' => true, 'example' => 'dlc*******', 'maxLength' => 256, 'minLength' => 1],
],
[
'name' => 'NeedDetail',
'in' => 'query',
'schema' => ['title' => '是否返回作业详情信息,默认为true', 'description' => '是否返回作业详情信息,默认为true', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
],
'responses' => [
200 => [
'schema' => [
'description' => 'JSON格式的字符串。',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业Id', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc*******'],
'JobType' => ['title' => '作业类型', 'description' => '任务类型。由[CreateJob](~~459672~~) API中的JobType指定。', 'type' => 'string', 'example' => 'TFJob'],
'DisplayName' => ['title' => '作业显示名称', 'description' => '任务名称。', 'type' => 'string', 'example' => 'tf-mnist-test'],
'UserId' => ['title' => '作业提交人Id', 'description' => '任务提交人的阿里云UID。', 'type' => 'string', 'example' => '12*********'],
'Status' => ['title' => '作业状态', 'description' => '任务运行状态,可能值:'."\n"
.'- Creating'."\n"
.'- Queuing'."\n"
.'- Bidding (当前仅限灵骏Spot作业)'."\n"
.'- EnvPreparing'."\n"
.'- SanityChecking'."\n"
.'- Running'."\n"
.'- Restarting'."\n"
.'- Stopping'."\n"
.'- SucceededReserving'."\n"
.'- FailedReserving'."\n"
.'- Succeeded'."\n"
.'- Failed'."\n"
.'- Stopped', 'type' => 'string', 'example' => 'Stopped'],
'WorkspaceId' => ['title' => '作业所属工作空间ID', 'description' => '任务所属工作空间ID。', 'type' => 'string', 'example' => '268'],
'WorkspaceName' => ['title' => '作业所属工作空间名称', 'description' => '任务所属工作空间名称。', 'type' => 'string', 'example' => 'dlc-workspace'],
'ResourceId' => ['title' => '作业运行所在的资源组ID', 'description' => '任务运行所在的资源组ID。', 'type' => 'string', 'example' => 'r******'],
'ResourceLevel' => ['title' => '作业运行时使用的资源级别', 'description' => '任务运行时使用的资源级别。', 'type' => 'string', 'example' => 'L0'],
'ReasonCode' => ['title' => '状态详情码', 'description' => '状态详情码,对当前状态(Status)下的子状态的一个分类。', 'type' => 'string', 'example' => 'JobStoppedByUser'],
'ReasonMessage' => ['title' => '状态详情', 'description' => '状态详情的详细描述。', 'type' => 'string', 'example' => 'Job is stopped by user.'],
'JobSpecs' => [
'title' => '作业规格配置',
'description' => '任务中的节点配置,参考CreateJob API中的**JobSpecs**。',
'type' => 'array',
'items' => ['description' => '描述一种节点类型的详细配置。', '$ref' => '#/components/schemas/JobSpec'],
],
'UserCommand' => ['title' => '用户命令', 'description' => '每个节点的启动命令。', 'type' => 'string', 'example' => 'python /root/code/mnist.py'],
'DataSources' => [
'title' => '数据源配置列表',
'description' => '数据源列表。',
'type' => 'array',
'items' => [
'description' => '数据源。',
'type' => 'object',
'properties' => [
'DataSourceId' => ['title' => '数据源Id', 'description' => '数据源ID。', 'type' => 'string', 'example' => 'd*******'],
'MountPath' => ['title' => '本地挂载路径', 'description' => '本地挂载路径,可选参数,默认为空(表示使用数据源中挂载路径)。', 'type' => 'string', 'example' => '/mnt/data/'],
'Uri' => ['title' => '数据源路径', 'description' => '数据源路径', 'type' => 'string', 'example' => 'oss://bucket.oss-cn-hangzhou-internal.aliyuncs.com/path/'],
],
],
],
'CodeSource' => [
'title' => '代码源配置',
'description' => '代码源。',
'type' => 'object',
'properties' => [
'CodeSourceId' => ['title' => '代码源Id', 'description' => '代码源ID。', 'type' => 'string', 'example' => 'code******'],
'Branch' => ['title' => '代码分支', 'description' => '代码分支。', 'type' => 'string', 'example' => 'master'],
'Commit' => ['title' => '代码Commit', 'description' => '代码CommitID。', 'type' => 'string', 'example' => '44da109b59f8596152987eaa8f3b2487xxxxxx'],
'MountPath' => ['title' => '本地挂载路径', 'description' => '本地挂载路径。', 'type' => 'string', 'example' => '/mnt/data'],
],
],
'ThirdpartyLibs' => [
'title' => '三方库配置列表',
'description' => '需要安装的Python三方库列表。',
'type' => 'array',
'items' => ['description' => '第三方Python库。', 'type' => 'string', 'example' => 'numpy==1.16.1'],
],
'ThirdpartyLibDir' => ['title' => '三方库(requirements.txt)文件路径', 'description' => '三方库(requirements.txt)文件所在文件夹。', 'type' => 'string', 'example' => '/root/code/'],
'Envs' => [
'title' => '环境变量配置',
'description' => '环境变量配置。',
'type' => 'object',
'additionalProperties' => ['type' => 'string', 'example' => 'ENABLE_DEBUG_MODE', 'description' => '环境变量Key和Value。'],
],
'UserVpc' => [
'title' => '用户VPC',
'description' => '用户VPC',
'type' => 'object',
'properties' => [
'VpcId' => ['title' => '用户VPC的id', 'description' => '用户VPC的id', 'type' => 'string', 'example' => 'vpc-abcdef****'],
'SwitchId' => ['title' => '用户交换机的id', 'description' => '用户交换机的id', 'type' => 'string', 'example' => 'vs-abcdef****'],
'SecurityGroupId' => ['title' => '用户安全组的id', 'description' => '用户安全组的id', 'type' => 'string', 'example' => 'sg-abcdef****'],
'ExtendedCidrs' => [
'title' => '扩展网段,示例:192.168.0.1/24',
'description' => '扩展网段,示例:192.168.0.1/24',
'type' => 'array',
'items' => ['title' => '扩展网段', 'description' => '扩展网段', 'type' => 'string', 'example' => '192.168.0.1/24'],
],
'DefaultRoute' => ['title' => '默认路由。此参数只在通用计算资源下有效,取值如下:'."\n"
."\n"
.'eth0:表示使用默认网卡,通过公共网关访问外部网络。'."\n"
.'eth1:表示使用用户弹性网卡,通过私有网关访问外部网络。', 'description' => '默认路由。此参数只在通用计算资源下有效,取值如下:'."\n"
."\n"
.'eth0:表示使用默认网卡,通过公共网关访问外部网络。'."\n"
.'eth1:表示使用用户弹性网卡,通过私有网关访问外部网络。', 'type' => 'string'],
],
],
'GmtCreateTime' => ['title' => '作业创建时间(UTC)', 'description' => '任务创建时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:35:01Z'],
'GmtSubmittedTime' => ['title' => '作业提交时间(UTC)', 'description' => '任务提交到集群的时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
'GmtRunningTime' => ['title' => '作业运行时间(UTC)', 'description' => '任务开始运行的时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:21Z'],
'GmtSuccessedTime' => ['title' => '作业成功时间(UTC)', 'description' => '任务正常结束的时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T15:36:08Z'],
'GmtStoppedTime' => ['title' => '作业停止时间(UTC)', 'description' => '任务停止的时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T15:36:08Z'],
'GmtFailedTime' => ['title' => '作业失败时间(UTC)', 'description' => '任务运行失败的时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T15:36:08Z'],
'Duration' => ['title' => '作业运行时长(s)', 'description' => '任务运行时长,单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '3602'],
'Pods' => [
'title' => '作业所以运行Pod列表',
'description' => '任务运行中的所有节点。',
'type' => 'array',
'items' => [
'description' => '节点数组。',
'type' => 'object',
'properties' => [
'Type' => ['title' => 'Pod类型', 'description' => '节点类型,与CreateJob中的JobSpecs中的某个JobSpec对应。', 'type' => 'string', 'example' => 'Worker'],
'PodId' => ['title' => 'Pod Id', 'description' => '节点ID,可用于GetPodLogs和GetPodEvents API获取节点的详细日志和事件。', 'type' => 'string', 'example' => 'Worker'],
'PodUid' => ['title' => 'Pod UId', 'description' => 'Pod UID。', 'type' => 'string', 'example' => 'fe846462-af2c-4521-bd6f-96787a57591d'],
'Status' => ['title' => 'Pod状态', 'description' => '节点状态。可能值:'."\n"
."\n"
.'- Pending'."\n"
.'- Running'."\n"
.'- Succeeded'."\n"
.'- Failed'."\n"
.'- Unknown', 'type' => 'string', 'example' => 'Running'],
'Ip' => ['title' => 'Pod Ip', 'description' => '节点的网络IP地址。', 'type' => 'string', 'example' => '10.0.1.2'],
'GmtCreateTime' => ['title' => 'Pod创建时间(UTC)', 'description' => 'Pod创建时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
'GmtStartTime' => ['title' => 'Pod启动时间(UTC)', 'description' => '节点启动时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
'GmtFinishTime' => ['title' => 'Pod结束时间(UTC)', 'description' => '节点结束时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T15:36:05Z'],
'HistoryPods' => [
'title' => '历史Pods',
'description' => '历史Pods。',
'type' => 'array',
'items' => [
'description' => '历史Pod数组。',
'type' => 'object',
'properties' => [
'Type' => ['title' => 'Pod类型', 'description' => 'Pod类型。', 'type' => 'string', 'example' => 'Worker'],
'PodId' => ['title' => 'Pod Id', 'description' => 'Pod ID。', 'type' => 'string', 'example' => 'Worker'],
'PodUid' => ['title' => 'Pod UId', 'description' => 'Pod UID。', 'type' => 'string', 'example' => 'fe846462-af2c-4521-bd6f-96787a57591d'],
'Status' => ['title' => 'Pod状态', 'description' => 'Pod状态。', 'type' => 'string', 'example' => 'Failed'],
'Ip' => ['title' => 'Pod Ip', 'description' => 'Pod IP。', 'type' => 'string', 'example' => '10.0.1.3'],
'GmtCreateTime' => ['title' => 'Pod创建时间(UTC)', 'description' => 'Pod创建时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
'GmtStartTime' => ['title' => 'Pod启动时间(UTC)', 'description' => 'Pod启动时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
'GmtFinishTime' => ['title' => 'Pod结束时间(UTC)', 'description' => 'Pod结束时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:01Z'],
'SubStatus' => ['title' => 'Pod子状态,如抢占状态', 'description' => 'Pod子状态,例如抢占状态。取值如下:'."\n"
.'- Normal'."\n"
.'- Evicted', 'type' => 'string', 'example' => 'Normal'],
'ResourceType' => ['title' => 'Pod资源使用类型', 'description' => 'Pod资源使用类型。', 'type' => 'string', 'example' => 'Normal'],
'Duration' => ['title' => 'Pod运行时长', 'description' => 'Pod运行时长', 'type' => 'number', 'format' => 'double'],
'NodeName' => ['title' => '节点名称', 'description' => '节点名称', 'type' => 'string'],
'PodIps' => [
'title' => 'Pod的IP地址',
'description' => 'Pod的IP地址',
'type' => 'array',
'items' => ['title' => '每张网卡对应的IP地址', 'description' => '每张网卡对应的IP地址', '$ref' => '#/components/schemas/PodNetworkInterface'],
],
],
],
],
'SubStatus' => ['title' => 'Pod子状态,如抢占状态', 'description' => 'Pod子状态,例如抢占状态。取值如下:'."\n"
.'- Normal'."\n"
.'- Evicted', 'type' => 'string', 'example' => 'Normal'],
'ResourceType' => ['title' => 'Pod资源使用类型', 'description' => 'Pod资源使用类型。', 'type' => 'string', 'example' => 'Normal'],
'Duration' => ['title' => 'Pod运行时长', 'description' => 'Pod运行时长', 'type' => 'number', 'format' => 'double'],
'NodeName' => ['title' => '节点名称', 'description' => '节点名称', 'type' => 'string'],
'PodIps' => [
'title' => 'Pod的IP地址',
'description' => 'Pod的IP地址',
'type' => 'array',
'items' => ['title' => '每张网卡对应的IP地址', 'description' => '每张网卡对应的IP地址', '$ref' => '#/components/schemas/PodNetworkInterface'],
],
],
],
],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-xxxxxxxx'],
'Settings' => ['title' => '作业额外参数配置', 'description' => '作业额外参数配置。', '$ref' => '#/components/schemas/JobSettings'],
'ClusterId' => ['title' => '集群ID', 'description' => '集群ID。', 'type' => 'string', 'example' => 'a*****'],
'ElasticSpec' => ['title' => '弹性任务参数', 'description' => '弹性任务参数。', '$ref' => '#/components/schemas/JobElasticSpec'],
'EnabledDebugger' => ['title' => '是否开启debugger任务', 'description' => '是否开启debugger任务。', 'type' => 'boolean', 'example' => 'false'],
'Priority' => ['title' => '任务的优先级', 'description' => '任务的优先级。可能值为1~9。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
'SubStatus' => ['title' => '作业子状态,如抢占重试状态', 'description' => '作业子状态,例如抢占重试状态。', 'type' => 'string', 'example' => 'Restarting'],
'RestartTimes' => ['title' => '作业已使用的重试次数和最大重试次数', 'description' => '作业已使用的重试次数和最大重试次数。', 'type' => 'string', 'example' => '0/10'],
'StatusHistory' => [
'title' => '作业历史的状态',
'description' => '历史状态。',
'type' => 'array',
'items' => ['description' => '历史状态。', '$ref' => '#/components/schemas/StatusTransitionItem'],
],
'TenantId' => ['title' => '租户ID', 'description' => '租户ID。', 'type' => 'string', 'example' => 'GAR***W134'],
'ResourceType' => ['title' => '资源类型,可选值:ECS,Lingjun,ACS', 'description' => '资源类型,可选值:ECS,Lingjun,ACS', 'type' => 'string', 'example' => 'ECS'],
'CredentialConfig' => ['title' => '凭证配置', 'description' => '访问凭证配置。', '$ref' => '#/components/schemas/CredentialConfig'],
'Accessibility' => ['title' => '可访问性', 'description' => '任务的可见性,取值如下:'."\n"
.'- PUBLIC:在此工作空间中,对所有人可见。'."\n"
.'- PRIVATE(默认值):在此工作空间中,仅对您和管理员可见。', 'type' => 'string', 'example' => 'PRIVATE'],
'RestartRecord' => [
'title' => '作业重启记录',
'description' => '作业重启记录',
'type' => 'array',
'items' => [
'title' => '作业重启记录',
'description' => '作业重启记录',
'type' => 'object',
'properties' => [
'DetailErrorInfoList' => [
'title' => '错误信息列表',
'description' => '错误信息列表',
'type' => 'array',
'items' => [
'title' => '错误信息',
'description' => '错误信息',
'type' => 'object',
'properties' => [
'AddJobLevelBlacklist' => ['title' => '作业黑名单', 'description' => '作业黑名单', 'type' => 'boolean'],
'AddNodeToBlacklist' => ['title' => '节点黑名单', 'description' => '节点黑名单', 'type' => 'boolean'],
'DetailErrorMsg' => ['title' => '详细错误信息', 'description' => '详细错误信息', 'type' => 'string'],
'ErrorCode' => ['title' => '错误码', 'description' => '错误码', 'type' => 'string'],
'ErrorMsg' => ['title' => '错误信息', 'description' => '错误信息', 'type' => 'string'],
'ErrorSource' => ['title' => '错误源', 'description' => '错误源', 'type' => 'string'],
'Node' => ['title' => '节点', 'description' => '节点', 'type' => 'string'],
'Pod' => ['title' => '实例', 'description' => '实例', 'type' => 'string'],
'TriggerRestart' => ['title' => '是否触发重启', 'description' => '是否触发重启', 'type' => 'boolean'],
],
],
],
'JobRestartCount' => ['title' => '作业重启次数', 'description' => '作业重启次数', 'type' => 'integer', 'format' => 'int64'],
'OccurPhase' => ['title' => '发生的阶段', 'description' => '发生的阶段', 'type' => 'string'],
'OccurTime' => ['title' => '发生的时间', 'description' => '发生的时间', 'type' => 'string'],
'Reason' => ['title' => '原因', 'description' => '原因', 'type' => 'string'],
'RestartDurationInSec' => ['title' => '重启时间', 'description' => '重启时间', 'type' => 'integer', 'format' => 'int64'],
'RestartFailReason' => ['title' => '重启失败原因', 'description' => '重启失败原因', 'type' => 'string'],
'RestartStatus' => ['title' => '重启状态', 'description' => '重启状态', 'type' => 'string'],
'TriggerID' => ['title' => 'TriggerID', 'description' => 'TriggerID', 'type' => 'string'],
'RestartLevelType' => ['type' => 'string'],
],
],
],
'JobReplicaStatuses' => [
'title' => '作业副本状态',
'description' => '作业副本状态',
'type' => 'array',
'items' => ['title' => '作业副本状态', 'description' => '作业副本状态', '$ref' => '#/components/schemas/JobReplicaStatus'],
],
'GmtFinishTime' => ['title' => '作业结束时间(UTC)', 'description' => '任务结束时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T15:36:08Z'],
'CustomEnvs' => [
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Key' => ['type' => 'string'],
'Value' => ['type' => 'string'],
'Visible' => ['type' => 'string'],
],
],
],
'RoleSystemEnvs' => [
'type' => 'object',
'additionalProperties' => [
'type' => 'object',
'additionalProperties' => ['type' => 'string'],
],
],
'Description' => ['type' => 'string'],
'SchedulingStrategy' => [
'type' => 'string',
'example' => 'Auto',
'enum' => ['Auto', 'Binpack', 'Spread'],
],
],
],
],
],
'title' => '获取任务详情',
'summary' => '获取一个任务的详细配置和运行时信息。',
'changeSet' => [
['createdAt' => '2025-11-18T03:50:35.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2025-10-23T08:44:29.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2025-09-15T09:29:03.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2024-10-23T02:31:33.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2024-07-09T04:17:55.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2024-01-24T10:35:10.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2024-01-05T02:50:41.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2024-01-03T08:01:46.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2023-12-08T08:06:18.000Z', 'description' => '响应参数发生变更、响应参数发生变更'],
['createdAt' => '2022-07-21T11:12:45.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2022-01-11T07:54:01.000Z', 'description' => '响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetJob'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc*******\\",\\n \\"JobType\\": \\"TFJob\\",\\n \\"DisplayName\\": \\"tf-mnist-test\\",\\n \\"UserId\\": \\"12*********\\",\\n \\"Status\\": \\"Stopped\\",\\n \\"WorkspaceId\\": \\"268\\",\\n \\"WorkspaceName\\": \\"dlc-workspace\\",\\n \\"ResourceId\\": \\"r******\\",\\n \\"ResourceLevel\\": \\"L0\\",\\n \\"ReasonCode\\": \\"JobStoppedByUser\\",\\n \\"ReasonMessage\\": \\"Job is stopped by user.\\",\\n \\"JobSpecs\\": [\\n {\\n \\"Type\\": \\"Worker\\",\\n \\"Image\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/cloud-dsw/tensorflow:1.12PAI-gpu-py36-cu101-ubuntu18.04\\",\\n \\"ImageConfig\\": {\\n \\"DockerRegistry\\": \\"docker****registry.com\\",\\n \\"Username\\": \\" username\\",\\n \\"Password\\": \\"password\\",\\n \\"Auth\\": \\"\\"\\n },\\n \\"PodCount\\": 1,\\n \\"ExtraPodSpec\\": {\\n \\"SideCarContainers\\": [\\n {\\n \\"Name\\": \\"data-init\\",\\n \\"Image\\": \\"registry.cn-hangzhou.aliyuncs.com/pai-dlc/curl:v1.0.0\\",\\n \\"Command\\": [\\n \\"curl www.aliyun.com\\"\\n ],\\n \\"Args\\": [\\n \\"-v\\"\\n ],\\n \\"WorkingDir\\": \\"/root\\",\\n \\"Env\\": [\\n {\\n \\"Name\\": \\"ENABLE_DEBUG\\",\\n \\"Value\\": \\"true\\"\\n }\\n ],\\n \\"Resources\\": {\\n \\"Limits\\": {\\n \\"key\\": \\"{\'cpu\': \'1\', \'memory\': \'1000Mi\'}\\"\\n },\\n \\"Requests\\": {\\n \\"key\\": \\"{\'cpu\': \'1\', \'memory\': \'1000Mi\'}\\"\\n }\\n }\\n }\\n ],\\n \\"InitContainers\\": [\\n {\\n \\"Name\\": \\"data-init\\",\\n \\"Image\\": \\"registry.cn-hangzhou.aliyuncs.com/pai-dlc/curl:v1.0.0\\",\\n \\"Command\\": [\\n \\"curl www.aliyun.com\\"\\n ],\\n \\"Args\\": [\\n \\"-v\\"\\n ],\\n \\"WorkingDir\\": \\"/root\\",\\n \\"Env\\": [\\n {\\n \\"Name\\": \\"ENABLE_DEBUG\\",\\n \\"Value\\": \\"true\\"\\n }\\n ],\\n \\"Resources\\": {\\n \\"Limits\\": {\\n \\"key\\": \\"{\'cpu\': \'1\', \'memory\': \'1000Mi\'}\\"\\n },\\n \\"Requests\\": {\\n \\"key\\": \\"{\'cpu\': \'1\', \'memory\': \'1000Mi\'}\\"\\n }\\n }\\n }\\n ],\\n \\"PodLabels\\": {\\n \\"key\\": \\"example-lable\\"\\n },\\n \\"PodAnnotations\\": {\\n \\"key\\": \\"example-annotation\\"\\n },\\n \\"SharedVolumeMountPaths\\": [\\n \\"/root/share/\\"\\n ],\\n \\"Lifecycle\\": {\\n \\"PreStop\\": {\\n \\"Exec\\": {\\n \\"Command\\": [\\n \\"\\"\\n ]\\n }\\n },\\n \\"PostStart\\": {\\n \\"Exec\\": {\\n \\"Command\\": [\\n \\"\\"\\n ]\\n }\\n }\\n },\\n \\"MainContainerSecurityContext\\": {\\n \\"RunAsUser\\": 1000,\\n \\"RunAsGroup\\": 1000,\\n \\"SeccompProfile\\": {\\n \\"Type\\": \\"Unconfined\\",\\n \\"LocalhostProfile\\": \\"my-profiles/profile-allow.json\\"\\n },\\n \\"Privileged\\": true,\\n \\"Capabilities\\": {\\n \\"Add\\": [\\n \\"\\"\\n ],\\n \\"Drop\\": [\\n \\"\\"\\n ]\\n }\\n }\\n },\\n \\"ResourceConfig\\": {\\n \\"CPU\\": \\"10\\",\\n \\"GPU\\": \\"3\\",\\n \\"Memory\\": \\"10Gi\\",\\n \\"SharedMemory\\": \\"5Gi\\",\\n \\"GPUType\\": \\"Tesla-V100-16G\\"\\n },\\n \\"UseSpotInstance\\": false,\\n \\"SpotSpec\\": {\\n \\"SpotStrategy\\": \\"SpotWithPriceLimit\\",\\n \\"SpotDiscountLimit\\": 0.8,\\n \\"SpotPriceLimit\\": 0.4744\\n },\\n \\"AssignNodeSpec\\": {\\n \\"EnableAssignNode\\": true,\\n \\"NodeNames\\": \\"lingjxxxxxxxx\\",\\n \\"AntiAffinityNodeNames\\": \\"lingjxxxxxxxx\\",\\n \\"HyperNodes\\": [\\n {\\n \\"HyperNodeName\\": \\"\\",\\n \\"NodeNames\\": \\"\\"\\n }\\n ],\\n \\"AntiAffinityHyperNodes\\": [\\n {\\n \\"HyperNodeName\\": \\"\\",\\n \\"NodeNames\\": \\"\\"\\n }\\n ]\\n },\\n \\"LocalMountSpecs\\": [\\n {\\n \\"MountMode\\": \\"\\",\\n \\"LocalPath\\": \\"\\",\\n \\"MountPath\\": \\"\\"\\n }\\n ],\\n \\"AutoScalingSpec\\": {\\n \\"ScalingStrategy\\": \\"\\",\\n \\"MinReplicas\\": 0,\\n \\"MaxReplicas\\": 0,\\n \\"PodsToDelete\\": [\\n \\"\\"\\n ],\\n \\"AutoscalingMetricSpec\\": {\\n \\"MetricName\\": \\"\\",\\n \\"TargetValue\\": 0,\\n \\"StabilizationWindowSeconds\\": 0,\\n \\"Tolerance\\": \\"\\"\\n }\\n },\\n \\"ServiceSpec\\": {\\n \\"DefaultPort\\": 8080,\\n \\"ServiceMode\\": \\"PerRole\\",\\n \\"ExtraPorts\\": [\\n 8081\\n ]\\n },\\n \\"IsCheif\\": true,\\n \\"IsChief\\": true,\\n \\"RestartPolicy\\": \\"ExitCode\\",\\n \\"SystemDisk\\": {\\n \\"Size\\": 0,\\n \\"Category\\": \\"\\",\\n \\"PerformanceLevel\\": \\"\\"\\n },\\n \\"EcsSpec\\": \\"ecs.c6.large\\",\\n \\"QuotaId\\": \\"\\",\\n \\"ConsiderInSuccessPolicy\\": true,\\n \\"StartupDependencies\\": [\\n {\\n \\"Type\\": \\"\\",\\n \\"OnPhase\\": \\"\\",\\n \\"MinReplicas\\": \\"\\"\\n }\\n ],\\n \\"ElasticSpotSpecs\\": [\\n {\\n \\"InstanceType\\": \\"\\",\\n \\"SpotPriceLimit\\": 0,\\n \\"SpotDiscountLimit\\": 0,\\n \\"SpotStrategy\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"UserCommand\\": \\"python /root/code/mnist.py\\",\\n \\"DataSources\\": [\\n {\\n \\"DataSourceId\\": \\"d*******\\",\\n \\"MountPath\\": \\"/mnt/data/\\",\\n \\"Uri\\": \\"oss://bucket.oss-cn-hangzhou-internal.aliyuncs.com/path/\\"\\n }\\n ],\\n \\"CodeSource\\": {\\n \\"CodeSourceId\\": \\"code******\\",\\n \\"Branch\\": \\"master\\",\\n \\"Commit\\": \\"44da109b59f8596152987eaa8f3b2487xxxxxx\\",\\n \\"MountPath\\": \\"/mnt/data\\"\\n },\\n \\"ThirdpartyLibs\\": [\\n \\"numpy==1.16.1\\"\\n ],\\n \\"ThirdpartyLibDir\\": \\"/root/code/\\",\\n \\"Envs\\": {\\n \\"key\\": \\"ENABLE_DEBUG_MODE\\"\\n },\\n \\"UserVpc\\": {\\n \\"VpcId\\": \\"vpc-abcdef****\\",\\n \\"SwitchId\\": \\"vs-abcdef****\\",\\n \\"SecurityGroupId\\": \\"sg-abcdef****\\",\\n \\"ExtendedCidrs\\": [\\n \\"192.168.0.1/24\\"\\n ],\\n \\"DefaultRoute\\": \\"\\"\\n },\\n \\"GmtCreateTime\\": \\"2021-01-12T14:35:01Z\\",\\n \\"GmtSubmittedTime\\": \\"2021-01-12T14:36:01Z\\",\\n \\"GmtRunningTime\\": \\"2021-01-12T14:36:21Z\\",\\n \\"GmtSuccessedTime\\": \\"2021-01-12T15:36:08Z\\",\\n \\"GmtStoppedTime\\": \\"2021-01-12T15:36:08Z\\",\\n \\"GmtFailedTime\\": \\"2021-01-12T15:36:08Z\\",\\n \\"Duration\\": 3602,\\n \\"Pods\\": [\\n {\\n \\"Type\\": \\"Worker\\",\\n \\"PodId\\": \\"Worker\\",\\n \\"PodUid\\": \\"fe846462-af2c-4521-bd6f-96787a57591d\\",\\n \\"Status\\": \\"Running\\",\\n \\"Ip\\": \\"10.0.1.2\\",\\n \\"GmtCreateTime\\": \\"2021-01-12T14:36:01Z\\",\\n \\"GmtStartTime\\": \\"2021-01-12T14:36:01Z\\",\\n \\"GmtFinishTime\\": \\"2021-01-12T15:36:05Z\\",\\n \\"HistoryPods\\": [\\n {\\n \\"Type\\": \\"Worker\\",\\n \\"PodId\\": \\"Worker\\",\\n \\"PodUid\\": \\"fe846462-af2c-4521-bd6f-96787a57591d\\",\\n \\"Status\\": \\"Failed\\",\\n \\"Ip\\": \\"10.0.1.3\\",\\n \\"GmtCreateTime\\": \\"2021-01-12T14:36:01Z\\",\\n \\"GmtStartTime\\": \\"2021-01-12T14:36:01Z\\",\\n \\"GmtFinishTime\\": \\"2021-01-12T14:36:01Z\\",\\n \\"SubStatus\\": \\"Normal\\",\\n \\"ResourceType\\": \\"Normal\\",\\n \\"Duration\\": 0,\\n \\"NodeName\\": \\"\\",\\n \\"PodIps\\": [\\n {\\n \\"InterfaceName\\": \\"\\",\\n \\"Ip\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"SubStatus\\": \\"Normal\\",\\n \\"ResourceType\\": \\"Normal\\",\\n \\"Duration\\": 0,\\n \\"NodeName\\": \\"\\",\\n \\"PodIps\\": [\\n {\\n \\"InterfaceName\\": \\"\\",\\n \\"Ip\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-xxxxxxxx\\",\\n \\"Settings\\": {\\n \\"BusinessUserId\\": \\"16****\\",\\n \\"Caller\\": \\"SilkFlow\\",\\n \\"Tags\\": {\\n \\"key\\": \\"key:value\\"\\n },\\n \\"PipelineId\\": \\"pid-12****\\",\\n \\"EnableTideResource\\": true,\\n \\"EnableErrorMonitoringInAIMaster\\": false,\\n \\"ErrorMonitoringArgs\\": \\"--enable-log-hang-detection true\\",\\n \\"EnableRDMA\\": true,\\n \\"EnableOssAppend\\": true,\\n \\"OversoldType\\": \\"AcceptQuotaOverSold\\",\\n \\"AdvancedSettings\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Driver\\": \\"535.54.03\\",\\n \\"EnableSanityCheck\\": true,\\n \\"SanityCheckArgs\\": \\"--sanity-check-timing=AfterJobFaultTolerant --sanity-check-timeout-ops=MarkJobFail\\",\\n \\"JobReservedMinutes\\": 30,\\n \\"JobReservedPolicy\\": \\"Always\\",\\n \\"EnableCPUAffinity\\": true,\\n \\"DisableEcsStockCheck\\": false,\\n \\"AllocateAllRDMADevices\\": true,\\n \\"EnableDSWDev\\": true,\\n \\"DataJuicerConfig\\": {\\n \\"ExecutionMode\\": \\"standalone\\",\\n \\"CommandType\\": \\"config\\",\\n \\"EnableResourceEstimation\\": true,\\n \\"ResourceLimit\\": {\\n \\"CPU\\": \\"2\\",\\n \\"Memory\\": \\"10Gi\\",\\n \\"GPU\\": \\"20\\"\\n }\\n },\\n \\"ModelConfig\\": {\\n \\"ModelName\\": \\"\\",\\n \\"ModelTemplate\\": {\\n \\"ModelName\\": \\"\\",\\n \\"Provider\\": \\"\\",\\n \\"Collections\\": \\"\\"\\n }\\n },\\n \\"AllowUnschedulableNodes\\": true,\\n \\"Shell\\": \\"/bin/bash\\"\\n },\\n \\"ClusterId\\": \\"a*****\\",\\n \\"ElasticSpec\\": {\\n \\"EnableElasticTraining\\": true,\\n \\"MinParallelism\\": 1,\\n \\"MaxParallelism\\": 8,\\n \\"AIMasterType\\": \\"\\",\\n \\"AIMasterDockerImage\\": \\"\\",\\n \\"EnablePsJobElasticWorker\\": true,\\n \\"EnableAIMaster\\": true,\\n \\"EnablePsResourceEstimate\\": true,\\n \\"EnablePsJobElasticPS\\": true,\\n \\"PSMinParallelism\\": 4,\\n \\"PSMaxParallelism\\": 10,\\n \\"ElasticStrategy\\": \\"\\",\\n \\"EnableEDP\\": true,\\n \\"EDPMaxParallelism\\": 16,\\n \\"EDPMinParallelism\\": 8\\n },\\n \\"EnabledDebugger\\": false,\\n \\"Priority\\": 1,\\n \\"SubStatus\\": \\"Restarting\\",\\n \\"RestartTimes\\": \\"0/10\\",\\n \\"StatusHistory\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"StartTime\\": \\"\\",\\n \\"EndTime\\": \\"\\",\\n \\"ReasonCode\\": \\"\\",\\n \\"ReasonMessage\\": \\"\\"\\n }\\n ],\\n \\"TenantId\\": \\"GAR***W134\\",\\n \\"ResourceType\\": \\"ECS\\",\\n \\"CredentialConfig\\": {\\n \\"EnableCredentialInject\\": true,\\n \\"AliyunEnvRoleKey\\": \\"\\",\\n \\"CredentialConfigItems\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"Type\\": \\"\\",\\n \\"Roles\\": [\\n {\\n \\"RoleArn\\": \\"\\",\\n \\"RoleType\\": \\"\\",\\n \\"AssumeRoleFor\\": \\"\\",\\n \\"Policy\\": \\"\\",\\n \\"AssumeUserInfo\\": {\\n \\"SecurityToken\\": \\"\\",\\n \\"AccessKeyId\\": \\"\\",\\n \\"Type\\": \\"\\",\\n \\"Id\\": \\"\\"\\n }\\n }\\n ]\\n }\\n ]\\n },\\n \\"Accessibility\\": \\"PRIVATE\\",\\n \\"RestartRecord\\": [\\n {\\n \\"DetailErrorInfoList\\": [\\n {\\n \\"AddJobLevelBlacklist\\": true,\\n \\"AddNodeToBlacklist\\": true,\\n \\"DetailErrorMsg\\": \\"\\",\\n \\"ErrorCode\\": \\"\\",\\n \\"ErrorMsg\\": \\"\\",\\n \\"ErrorSource\\": \\"\\",\\n \\"Node\\": \\"\\",\\n \\"Pod\\": \\"\\",\\n \\"TriggerRestart\\": true\\n }\\n ],\\n \\"JobRestartCount\\": 0,\\n \\"OccurPhase\\": \\"\\",\\n \\"OccurTime\\": \\"\\",\\n \\"Reason\\": \\"\\",\\n \\"RestartDurationInSec\\": 0,\\n \\"RestartFailReason\\": \\"\\",\\n \\"RestartStatus\\": \\"\\",\\n \\"TriggerID\\": \\"\\",\\n \\"RestartLevelType\\": \\"\\"\\n }\\n ],\\n \\"JobReplicaStatuses\\": [\\n {\\n \\"Type\\": \\"\\",\\n \\"Active\\": 0,\\n \\"EstimatedPodCount\\": 0,\\n \\"EstimatedAutoScalingSpec\\": {\\n \\"ScalingStrategy\\": \\"\\",\\n \\"MinReplicas\\": 0,\\n \\"MaxReplicas\\": 0,\\n \\"PodsToDelete\\": [\\n \\"\\"\\n ],\\n \\"AutoscalingMetricSpec\\": {\\n \\"MetricName\\": \\"\\",\\n \\"TargetValue\\": 0,\\n \\"StabilizationWindowSeconds\\": 0,\\n \\"Tolerance\\": \\"\\"\\n }\\n },\\n \\"EstimatedResourceConfig\\": {\\n \\"CPU\\": \\"10\\",\\n \\"GPU\\": \\"3\\",\\n \\"Memory\\": \\"10Gi\\",\\n \\"SharedMemory\\": \\"5Gi\\",\\n \\"GPUType\\": \\"Tesla-V100-16G\\"\\n },\\n \\"Queuing\\": 0,\\n \\"Dequeued\\": 0,\\n \\"CurrentSpotInstanceType\\": \\"\\"\\n }\\n ],\\n \\"GmtFinishTime\\": \\"2021-01-12T15:36:08Z\\",\\n \\"CustomEnvs\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"Value\\": \\"\\",\\n \\"Visible\\": \\"\\"\\n }\\n ],\\n \\"RoleSystemEnvs\\": {\\n \\"key\\": {\\n \\"key\\": \\"\\"\\n }\\n },\\n \\"Description\\": \\"\\",\\n \\"SchedulingStrategy\\": \\"Auto\\"\\n}","errorExample":""},{"type":"xml","example":"<不支持/>","errorExample":""}]',
],
'GetJobEvents' => [
'path' => '/api/v1/jobs/{JobId}/events',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '13116',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['title' => '作业ID', 'description' => '任务ID。如何获取任务ID,请参见[ListJobs](~~459676~~)。', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'dlc-20210126170216-*******'],
],
[
'name' => 'MaxEventsNum',
'in' => 'query',
'schema' => ['title' => '获取事件的最大数目,默认值:2000', 'description' => '获取事件的最大数目,默认值:2000。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '10000', 'minimum' => '1', 'example' => '100', 'default' => '1'],
],
[
'name' => 'StartTime',
'in' => 'query',
'schema' => ['title' => '查询事件的时间区间的起始时间,默认值是7天前。', 'description' => '查询事件的时间区间的起始时间(UTC),默认值是7天前。', 'type' => 'string', 'required' => false, 'example' => '2020-11-08T16:00:00Z'],
],
[
'name' => 'EndTime',
'in' => 'query',
'schema' => ['title' => '查询事件的时间区间的截止时间,默认值是当前。', 'description' => '查询事件的时间区间的截止时间(UTC),默认值是当前。', 'type' => 'string', 'required' => false, 'example' => '2020-11-08T18:00:00Z'],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '返回作业的系统事件信息。',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业ID', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc-20210126170216-******'],
'Events' => [
'title' => '事件',
'description' => '事件。',
'type' => 'array',
'items' => ['description' => '事件信息内容。', 'type' => 'string', 'example' => '2021-01-28 14:07:24 Created pod: dlc-20210128140506-oms3s46wcfl6g-worker-0'],
],
'RequestId' => ['title' => '请求ID', 'description' => '本次调用的请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '78F6FCE2-278F-4C4A-A6B7-DD8ECEA9C456'],
],
],
],
],
'title' => '获取任务的系统事件',
'summary' => '获取一个任务的系统事件。',
'changeSet' => [
['createdAt' => '2023-03-22T06:25:27.000Z', 'description' => '响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetJobEvents'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJobEvents',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc-20210126170216-******\\",\\n \\"Events\\": [\\n \\"2021-01-28 14:07:24 Created pod: dlc-20210128140506-oms3s46wcfl6g-worker-0\\"\\n ],\\n \\"RequestId\\": \\"78F6FCE2-278F-4C4A-A6B7-DD8ECEA9C456\\"\\n}","errorExample":""},{"type":"xml","example":"dlc-20210126170216-******\\n2021-01-28 14:07:24 Created pod: dlc-20210128140506-oms3s46wcfl6g-worker-0","errorExample":""}]',
],
'GetJobMetrics' => [
'path' => '/api/v1/jobs/{JobId}/metrics',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '21204',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['title' => '作业ID', 'description' => '任务ID。您可以调用[ListJobs](~~459676~~)获取所有任务的ID。', 'type' => 'string', 'required' => true, 'example' => 'dlc-20210126170216-*******'],
],
[
'name' => 'StartTime',
'in' => 'query',
'schema' => ['title' => '起始时间', 'description' => '查询监控数据的时间区间的起始时间(UTC),默认值是1小时前。', 'type' => 'string', 'required' => false, 'example' => '2020-11-08T16:00:00Z'],
],
[
'name' => 'EndTime',
'in' => 'query',
'schema' => ['title' => '截止时间', 'description' => '查询监控数据的时间区间的截止时间(UTC),默认值是当前。', 'type' => 'string', 'required' => false, 'example' => '2020-11-09T16:00:00Z'],
],
[
'name' => 'TimeStep',
'in' => 'query',
'schema' => ['title' => '时间间隔', 'description' => '返回监控数据的时间间隔,默认值是5分钟。', 'type' => 'string', 'required' => false, 'example' => '5m'],
],
[
'name' => 'MetricType',
'in' => 'query',
'schema' => ['title' => '指标类型', 'description' => '查询监控数据的指标类型,取值如下:'."\n"
."\n"
.'- GpuCoreUsage:GPU使用率。'."\n"
."\n"
.'- GpuMemoryUsage:GPU Memory使用率。'."\n"
."\n"
.'- CpuCoreUsage:CPU使用率。'."\n"
."\n"
.'- MemoryUsage:Memory使用率。'."\n"
."\n"
.'- NetworkInputRate:网络写入速率。'."\n"
."\n"
.'- NetworkOutputRate:网络写出速率。'."\n"
."\n"
.'- DiskReadRate:磁盘读取速率。'."\n"
."\n"
.'- DiskWriteRate:磁盘写入速率。', 'type' => 'string', 'required' => true, 'example' => 'GpuMemoryUsage'],
],
[
'name' => 'Token',
'in' => 'query',
'schema' => ['title' => 'Token', 'description' => '用于鉴权的临时令牌。', 'type' => 'string', 'required' => false, 'example' => 'eyXXXX-XXXX.XXXXX'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '作业监控指标',
'description' => '任务监控数据信息。',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业ID', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc-20210126170216-*******'],
'PodMetrics' => [
'title' => '任务监控指标序列集合',
'description' => '任务监控数据列表。',
'type' => 'array',
'items' => ['description' => '任务监控数据。', '$ref' => '#/components/schemas/PodMetric'],
],
'RequestId' => ['title' => '请求ID', 'description' => '本次调用的请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
],
],
],
'title' => '获取任务的监控数据',
'summary' => '获取一个任务的监控数据,包括CPU、GPU、Memory的使用率、Network、Disk读写速率等。'."\n"
."\n"
.'⚠️注意:除基于通用计算资源的按量付费(后付费)任务外,其余任务类型均已对接云监控。相关监控调用请使用云监控接口,原接口中已被覆盖的功能将不再维护。更多信息,请参见[训练监控与报警](https://www.alibabacloud.com/help/zh/pai/user-guide/training-monitoring-and-alerting)。',
'changeSet' => [
['createdAt' => '2021-04-23T06:37:52.000Z', 'description' => 'OpenAPI 下线'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetJobMetrics'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJobMetrics',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc-20210126170216-*******\\",\\n \\"PodMetrics\\": [\\n {\\n \\"PodId\\": \\"dlc-20210329110128-******-worker-0\\",\\n \\"Metrics\\": [\\n {\\n \\"Time\\": 1616987726587,\\n \\"Value\\": 23.45\\n }\\n ]\\n }\\n ],\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"\\n dlc-20210126170216-*******\\n \\n dlc-20210329110128-******-worker-0\\n \\n \\n 23.45\\n \\n \\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\n","errorExample":""}]',
],
'GetJobSanityCheckResult' => [
'path' => '/api/v1/jobs/{JobId}/sanitycheckresult',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '203880',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['description' => '任务ID。如何获取任务ID,请参见[ListJobs](~~459676~~)。', 'type' => 'string', 'required' => true, 'example' => 'dlcl5qxoxxxxx5iq'],
],
[
'name' => 'SanityCheckNumber',
'in' => 'query',
'allowEmptyValue' => false,
'schema' => ['description' => '任务第几次算力健康检测。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'minimum' => '1', 'example' => '1'],
],
[
'name' => 'SanityCheckPhase',
'in' => 'query',
'allowEmptyValue' => true,
'schema' => ['description' => '算力健康检测的检测阶段:'."\n"
.'- CheckInit:检测环境准备。'."\n"
.'- DeviceCheck:单卡算力检测。'."\n"
.'- SingleNodeCommCheck:单节点内部通信检测。'."\n"
.'- TwoNodeCommCheck:两节点间通信检测。'."\n"
.'- AllNodeCommCheck:所有节点通信检测。', 'type' => 'string', 'required' => false, 'example' => 'DeviceCheck'],
],
[
'name' => 'Token',
'in' => 'query',
'schema' => ['description' => '任务分享令牌中的Token信息。如何获取,请参见[GetToken](~~2557812~~)。', 'type' => 'string', 'required' => false, 'example' => 'eyJhbG******zI1NiIsInR5cCI6IkpXVCJ9.eyJle****jE3MDk1Mzk0NDIsImlhdCI6MTcwODkzNDY0MiwidXNlcl9pZCI6IjE3NTgwNTQxNjI0Mzg2NTUiLCJ0YXJnZXRfaWQiOiJkbGM1OGh1a2xyYzZwdGMyIiwidGFyZ2V0X3R5cGUiOiJqb2IifQ.GNL7jo6****mgKKv0QeGIYgvBufSU-PH_EQttX****'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => '单次算力健康检测结果。',
'type' => 'object',
'properties' => [
'JobId' => ['description' => '任务ID。', 'type' => 'string', 'example' => 'dlc-20210126170216-xxxxxx'],
'SanityCheckResult' => [
'description' => '算力健康检测的检测结果。',
'type' => 'array',
'items' => ['description' => '一个检测阶段的算力健康检测结果。返回值各字段说明:'."\n"
.'- Phase:检测阶段。'."\n"
.'- Message:检测结果信息。'."\n"
.'- StartedAt: 检测开始时间。'."\n"
.'- FinishedAt:检测结束时间。'."\n"
.'- Status:检测状态。'."\n"
.'- CheckNumber:第几次检测。', '$ref' => '#/components/schemas/SanityCheckResultItem'],
],
'RequestID' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'B3789344-F1xxxBE-5xx2-A04D-xxxxx'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取任务某次算力健康检测结果',
'summary' => '获取DLC任务某次算力健康检测结果。',
'changeSet' => [
['createdAt' => '2024-02-26T03:31:14.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-01-08T08:09:54.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetJobSanityCheckResult'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJobSanityCheckResult',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"JobId\\": \\"dlc-20210126170216-xxxxxx\\",\\n \\"SanityCheckResult\\": [\\n {\\n \\"Phase\\": \\"CheckInit\\",\\n \\"Message\\": \\"\\",\\n \\"Status\\": \\"Succeeded\\",\\n \\"StartedAt\\": \\"2023-11-30T16:47:30.343005+08:00\\",\\n \\"FinishedAt\\": \\"2023-11-30T16:47:30.378817+08:00\\",\\n \\"CheckNumber\\": 1\\n }\\n ],\\n \\"RequestID\\": \\"B3789344-F1xxxBE-5xx2-A04D-xxxxx\\"\\n}","type":"json"}]',
],
'GetJobTemplate' => [
'path' => '/api/v1/jobtemplates/{TemplateId}',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'TemplateId',
'in' => 'path',
'schema' => ['title' => '模板 ID', 'description' => '任务模板的唯一标识', 'type' => 'string', 'required' => true, 'example' => 'tplmceolmf2****', 'maxLength' => 128],
],
[
'name' => 'Version',
'in' => 'query',
'schema' => ['title' => '版本号', 'description' => '不传返回默认版本;传具体数字返回该版本;传 all 返回全部版本', 'type' => 'string', 'required' => false, 'example' => 'all'],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '任务模板详情',
'type' => 'object',
'properties' => [
'TemplateId' => ['title' => '模板 ID', 'description' => '任务模板的唯一标识', 'type' => 'string', 'example' => 'tplmceolmf2****'],
'TemplateName' => ['title' => '模板名称', 'description' => '任务模板的名称', 'type' => 'string', 'example' => 'job-template-example-1778047****'],
'Description' => ['title' => '模板描述', 'description' => '任务模板的描述信息', 'type' => 'string', 'example' => 'job template description'],
'Metadata' => ['title' => '自定义元数据', 'description' => '用户自定义的键值对元数据', 'type' => 'object', 'example' => '{}'],
'UserId' => ['title' => '创建者 ID', 'description' => '创建模板的用户ID', 'type' => 'string', 'example' => '20**************26'],
'WorkspaceId' => ['title' => '工作空间 ID', 'description' => '模板所属的工作空间ID', 'type' => 'string', 'example' => '4***9'],
'TenantId' => ['title' => '租户 ID', 'description' => '模板所属的租户ID', 'type' => 'string', 'example' => '142388383837****'],
'DefaultVersion' => ['title' => '默认版本号', 'description' => '当前使用的默认版本号', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
'GmtCreateTime' => ['title' => '模板创建时间', 'description' => '模板的创建时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2026-01-08T14:17:55Z'],
'GmtModifyTime' => ['title' => '模板修改时间', 'description' => '模板的最后修改时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2026-03-03T05:48:02Z'],
'ModifiedBy' => ['title' => '最后修改者 ID', 'description' => '最后修改模板的用户ID', 'type' => 'string', 'example' => '20**************26'],
'Versions' => [
'title' => '版本列表',
'description' => '模板版本详情列表。查询单个版本时返回1个元素,查询所有版本时返回全部',
'type' => 'array',
'items' => [
'description' => '版本列表。',
'type' => 'object',
'properties' => [
'Version' => ['title' => '版本号', 'description' => '版本号', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
'Content' => ['title' => '模板内容', 'description' => '该版本的模板配置内容,JSON 格式', 'type' => 'any', 'example' => '{\\"WorkspaceId\\":\\"15****05\\",\\"JobType\\":\\"PyTorchJob\\",\\"UserCommand\\":\\"echo hello\\",\\"JobSpecs\\":[{\\"Type\\":\\"Worker\\",\\"PodCount\\":1,\\"Image\\":\\"dsw-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai/pytorch:2.8.0-gpu-py313-cu129-ubuntu22.04-3995b779-1764361782\\",\\"EcsSpec\\":\\"ecs.gn7i-c8g1.2xlarge\\"}],\\"ResourceType\\":\\"ECS\\",\\"_ResourcePaymentType\\":\\"PostPaid\\",\\"CredentialConfig\\":{\\"EnableCredentialInject\\":false},\\"Accessibility\\":\\"PRIVATE\\",\\"Settings\\":{\\"JobReservedMinutes\\":0,\\"Tags\\":{}}}'],
'Constraints' => ['title' => '约束规则', 'description' => '字段约束规则。Key 为 JSONPath 表达式,Value 为约束类型', 'type' => 'object', 'example' => '{\\"JobSpecs[0].Image\\":\\"locked\\",\\"UserCommand\\":\\"locked\\",\\"JobType\\":\\"locked\\"}'],
'CreatedBy' => ['title' => '版本创建者 ID', 'description' => '版本创建者 ID', 'type' => 'string', 'example' => '20**************26'],
'GmtCreateTime' => ['title' => '版本创建时间', 'description' => '版本创建时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2026-01-08T14:17:55Z'],
],
],
],
'TotalCount' => ['title' => '总版本数', 'description' => '版本总数,查询单个版本返回1,查询所有版本返回实际总数', 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
'RequestId' => ['title' => '请求 ID', 'description' => '本次请求的 ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'],
],
],
],
],
'title' => '获取任务模板详情',
'summary' => '获取任务模板详情。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJobTemplate',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TemplateId\\": \\"tplmceolmf2****\\",\\n \\"TemplateName\\": \\"job-template-example-1778047****\\",\\n \\"Description\\": \\"job template description\\",\\n \\"Metadata\\": {},\\n \\"UserId\\": \\"20**************26\\",\\n \\"WorkspaceId\\": \\"4***9\\",\\n \\"TenantId\\": \\"142388383837****\\",\\n \\"DefaultVersion\\": 2,\\n \\"GmtCreateTime\\": \\"2026-01-08T14:17:55Z\\",\\n \\"GmtModifyTime\\": \\"2026-03-03T05:48:02Z\\",\\n \\"ModifiedBy\\": \\"20**************26\\",\\n \\"Versions\\": [\\n {\\n \\"Version\\": 2,\\n \\"Content\\": \\"{\\\\\\\\\\\\\\"WorkspaceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"15****05\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"JobType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"PyTorchJob\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"UserCommand\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"echo hello\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"JobSpecs\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"Type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Worker\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"PodCount\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"Image\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"dsw-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai/pytorch:2.8.0-gpu-py313-cu129-ubuntu22.04-3995b779-1764361782\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"EcsSpec\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"ecs.gn7i-c8g1.2xlarge\\\\\\\\\\\\\\"}],\\\\\\\\\\\\\\"ResourceType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"ECS\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"_ResourcePaymentType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"PostPaid\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"CredentialConfig\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"EnableCredentialInject\\\\\\\\\\\\\\":false},\\\\\\\\\\\\\\"Accessibility\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"PRIVATE\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Settings\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"JobReservedMinutes\\\\\\\\\\\\\\":0,\\\\\\\\\\\\\\"Tags\\\\\\\\\\\\\\":{}}}\\",\\n \\"Constraints\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"CreatedBy\\": \\"20**************26\\",\\n \\"GmtCreateTime\\": \\"2026-01-08T14:17:55Z\\"\\n }\\n ],\\n \\"TotalCount\\": 100,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]',
],
'GetMetrics' => [
'path' => '/api/v1/cms/metrics',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '203098',
'abilityTreeNodes' => ['FEATURElearn8Y18OQ'],
],
'parameters' => [
[
'name' => 'Namespace',
'in' => 'query',
'schema' => ['description' => '云产品的数据命名空间。关于云产品的数据命名空间,请参见云产品监控项。', 'type' => 'string', 'required' => false, 'example' => 'acs_pai_dlc'],
],
[
'name' => 'JobId',
'in' => 'query',
'schema' => ['description' => '任务ID。', 'type' => 'string', 'required' => false, 'example' => 'dlckjd5hm84tmjec'],
],
[
'name' => 'Dimensions',
'in' => 'query',
'schema' => ['description' => '(必填)请求参数。', 'type' => 'string', 'required' => false, 'example' => '[{\\"jobId\\":\\"dlcdpfpc96mh63mg\\",\\"pod\\":\\"dlcdpfpc96mh63mg-worker-748\\",\\"regionId\\":\\"cn-wulanchabu\\",\\"userId\\":\\"1458867964644701\\"}]'],
],
[
'name' => 'Length',
'in' => 'query',
'schema' => ['description' => '每次查询大小,用于分页查询,默认值为1000。', 'type' => 'string', 'required' => false, 'example' => '5000'],
],
[
'name' => 'EndTime',
'in' => 'query',
'schema' => ['description' => '查询的截止时间,默认值:当前。', 'type' => 'string', 'required' => false, 'example' => '2020-11-09T16:00:00Z'],
],
[
'name' => 'Period',
'in' => 'query',
'schema' => ['description' => '监控数据的统计周期。单位:秒。取值:15、60、900和3600。', 'type' => 'string', 'required' => false, 'example' => '5'],
],
[
'name' => 'NextToken',
'in' => 'query',
'schema' => ['description' => '分页游标标识。说明 如果不设置该参数,则表示获取第一页的数据。当该参数有返回值时,说明还有下一页,您可以将返回的NextToken作为参数再次请求获得下一页的数据,直到返回为Null为止,表示获取到了所有的数据。', 'type' => 'string', 'required' => false, 'example' => '2c6b65b6f9d625d4716568ca19b2064be0b5e8707e68181f'],
],
[
'name' => 'MetricName',
'in' => 'query',
'schema' => ['description' => 'metric名称。未填充,不在使用中', 'type' => 'string', 'required' => false, 'example' => 'JOB_MEMORY_FREE'],
],
[
'name' => 'StartTime',
'in' => 'query',
'schema' => ['description' => '查询监控数据的时间区间的起始时间(UTC),默认值是1小时前。', 'type' => 'string', 'required' => false, 'example' => '2020-11-08T16:00:00Z'],
],
[
'name' => 'Token',
'in' => 'query',
'schema' => ['description' => '用于鉴权的临时令牌。', 'type' => 'string', 'required' => false, 'example' => 'eyXXXX-XXXX.XXXXX'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'NextToken' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6lESTRpd5hnHNnmKOP/+w9F'],
'Success' => ['description' => '操作是否成功。取值:true:成功。false:失败。', 'type' => 'boolean', 'example' => 'True'],
'DataPoints' => ['description' => '监控指标数据内容。', 'type' => 'string', 'example' => '[{\'Content\': \'\', \'OperationName\': \'purchase\', \'Success\': 1, \'Id\': \'217\', \'LogDatetime\': 1687679582923}]'],
'Code' => ['description' => '状态码。说明 200表示成功。', 'type' => 'string', 'example' => '200'],
'Message' => ['description' => '检测结果具体信息。', 'type' => 'string', 'example' => 'Success.'],
'Period' => ['description' => '监控数据的统计周期。取值:15、60、900和3600。单位:秒。说明 如果不设置统计周期,则按照注册监控项时申请的上报周期来查询监控数据。每个云产品的监控项(MetricName)的统计周期不同。更多信息,请参见云产品监控项。', 'type' => 'string', 'example' => '5'],
'RequestId' => ['description' => '请求ID', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取任务指标',
'summary' => '获取metrics数据',
'description' => '## 请求说明'."\n"
.'- 该接口用于查询指定命名空间(Namespace)下的特定作业(JobId)或维度(Dimensions)的监控指标。'."\n"
.'- 支持自定义查询的时间范围,默认为最近一小时的数据。'."\n"
.'- 可以选择不同的时间间隔(Period)来获取更细粒度或更粗略的数据点。'."\n"
.'- 如果需要分页获取大量数据,可以通过`NextToken`参数进行翻页操作。'."\n"
.'- `MetricName`是必填项,用来指定要查询的具体监控指标名称。'."\n"
.'- 对于某些高级功能或者特定类型的监控指标,请参考相关文档以了解更多信息。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'none',
'ramAction' => [
'action' => 'paidlc:GetMetrics',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6lESTRpd5hnHNnmKOP/+w9F\\",\\n \\"Success\\": true,\\n \\"DataPoints\\": \\"[{\'Content\': \'\', \'OperationName\': \'purchase\', \'Success\': 1, \'Id\': \'217\', \'LogDatetime\': 1687679582923}]\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\",\\n \\"Period\\": \\"5\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
],
'GetPodEvents' => [
'path' => '/api/v1/jobs/{JobId}/pods/{PodId}/events',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '13117',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'allowEmptyValue' => true,
'schema' => ['title' => '作业ID', 'description' => '任务ID。参见[ListJobs](~~459676~~)获取任务ID。', 'type' => 'string', 'required' => true, 'example' => 'dlc-20210126170216-*****'],
],
[
'name' => 'PodId',
'in' => 'path',
'allowEmptyValue' => true,
'schema' => ['title' => '运行实例ID', 'description' => '节点ID。参见[GetJob](~~459677~~)获取节点ID。', 'type' => 'string', 'required' => true, 'example' => 'dlc-20210126170216-mtl37ge7g****-chief-0'],
],
[
'name' => 'PodUid',
'in' => 'query',
'schema' => ['title' => '运行实例UID', 'description' => '节点UID。参见[GetJob](~~459677~~)获取节点UID。', 'type' => 'string', 'required' => false, 'example' => 'dlc-20210126170216-*****-chief-0'],
],
[
'name' => 'MaxEventsNum',
'in' => 'query',
'allowEmptyValue' => false,
'schema' => ['title' => '返回的事件最大数量', 'description' => '返回的事件最大数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'],
],
[
'name' => 'StartTime',
'in' => 'query',
'schema' => ['title' => '起始时间', 'description' => '起始时间(UTC)。', 'type' => 'string', 'required' => false, 'example' => '2020-11-08T16:00:00Z'],
],
[
'name' => 'EndTime',
'in' => 'query',
'schema' => ['title' => '截止时间', 'description' => '截止时间(UTC)。', 'type' => 'string', 'required' => false, 'example' => '2020-11-09T16:00:00Z'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => '任务事件信息。',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业ID', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc-20210126170216-*****'],
'PodId' => ['title' => '运行示例ID', 'description' => '节点ID。', 'type' => 'string', 'required' => true, 'example' => 'dlc-20210126170216-*****-chief-0'],
'PodUid' => ['description' => '实例UID。', 'type' => 'string', 'example' => '94a7cc7c-0033-48b5-85bd-71c63592c268'],
'Events' => [
'title' => '事件列表',
'description' => '事件列表。',
'type' => 'array',
'items' => ['description' => '事件列表。', 'type' => 'string', 'example' => '2021-01-28 14:07:45 Successfully pulled image.'],
],
'RequestId' => ['title' => '请求ID', 'description' => '请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
],
],
],
'title' => '获取任务中某个节点的系统事件',
'summary' => '通过获取任务中特定节点的系统事件,来进行问题的定位与排查。',
'changeSet' => [
['createdAt' => '2021-02-01T09:20:07.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPodEvents'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetPodEvents',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc-20210126170216-*****\\",\\n \\"PodId\\": \\"dlc-20210126170216-*****-chief-0\\",\\n \\"PodUid\\": \\"94a7cc7c-0033-48b5-85bd-71c63592c268\\",\\n \\"Events\\": [\\n \\"2021-01-28 14:07:45 Successfully pulled image.\\"\\n ],\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"dlc-20210126170216-*****\\ndlc-20210126170216-*****-chief-0\\n2021-01-28 14:07:45 Successfully pulled image.\\n473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E","errorExample":""}]',
],
'GetPodLogs' => [
'path' => '/api/v1/jobs/{JobId}/pods/{PodId}/logs',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '13118',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['title' => '作业ID', 'description' => '任务ID。如何获取任务ID,请参见[ListJobs](~~459676~~)。', 'type' => 'string', 'required' => true, 'example' => 'dlc-20210126170216-*****'],
],
[
'name' => 'PodId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '节点ID。如何获取节点ID,请参见[GetJob](~~459677~~)。', 'type' => 'string', 'required' => true, 'example' => 'dlc-20210126170216-*****-chief-0'],
],
[
'name' => 'PodUid',
'in' => 'query',
'schema' => [
'description' => '节点UID;如何获取节点UID,请参见[GetJob](~~459677~~)。',
'type' => 'string',
'required' => false,
'enumValueTitles' => [],
'example' => 'fe846462-af2c-4521-bd6f-96787a57****',
],
],
[
'name' => 'MaxLines',
'in' => 'query',
'schema' => ['title' => '返回的日志的最大行数,默认值:2000。', 'description' => '返回的日志的最大行数,默认值:2000。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'],
],
[
'name' => 'StartTime',
'in' => 'query',
'schema' => ['title' => '查询的起始时间,默认值:7天前。', 'description' => '查询的起始时间,默认值:7天前。', 'type' => 'string', 'required' => false, 'example' => '2020-11-08T16:00:00Z'],
],
[
'name' => 'EndTime',
'in' => 'query',
'schema' => ['title' => '查询的截止时间,默认值:当前。', 'description' => '查询的截止时间,默认值:当前。', 'type' => 'string', 'required' => false, 'example' => '2020-11-08T17:00:00Z'],
],
[
'name' => 'DownloadToFile',
'in' => 'query',
'schema' => ['title' => '是否下载日志文件,默认:false。', 'description' => '是否下载日志文件。取值如下:'."\n"
.'- false(默认):表示不下载日志文件。'."\n"
.'- true:开始下载日志文件。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '返回值',
'description' => '返回值。',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业ID', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc-20210126170216-******'],
'PodId' => ['title' => '实例ID', 'description' => '节点ID。', 'type' => 'string', 'example' => 'dlc-20210126170216-****-chief-0'],
'PodUid' => ['title' => '实例UID', 'description' => '实例UID。', 'type' => 'string', 'example' => '94a7cc7c-0033-48b5-85bd-71c63592c268'],
'Logs' => [
'title' => '日志列表',
'description' => '日志列表。',
'type' => 'array',
'items' => ['description' => '日志列表。', 'type' => 'string', 'example' => '2021-01-28 14:07:45 My Job started.'],
],
'RequestId' => ['title' => '请求ID', 'description' => '此次调用的请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
],
],
],
'title' => '获取任务中某个节点的日志',
'summary' => '获取(或者下载)任务某个节点的日志,日志来源于系统和用户脚本的stdout和stderr。',
'changeSet' => [
['createdAt' => '2021-02-01T09:20:04.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPodLogs'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetPodLogs',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc-20210126170216-******\\",\\n \\"PodId\\": \\"dlc-20210126170216-****-chief-0\\",\\n \\"PodUid\\": \\"94a7cc7c-0033-48b5-85bd-71c63592c268\\",\\n \\"Logs\\": [\\n \\"2021-01-28 14:07:45 My Job started.\\"\\n ],\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"dlc-20210126170216-******\\ndlc-20210126170216-****-chief-0\\n2021-01-28 14:07:45 My Job started.\\n473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E","errorExample":""}]',
],
'GetRayDashboard' => [
'path' => '/api/v1/jobs/{jobId}/rayDashboard',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'jobId',
'in' => 'path',
'schema' => ['title' => '任务ID'."\n", 'description' => '任务ID'."\n", 'type' => 'string', 'required' => false, 'example' => 'dlc1k7426goc7bvy'],
],
[
'name' => 'isShared',
'in' => 'query',
'schema' => [
'title' => '是否为分享链接。若为是,目前同时必填token'."\n",
'description' => '是否为分享链接。若为是,目前同时必填token'."\n",
'type' => 'boolean',
'required' => false,
'example' => 'false',
'enum' => ['true', 'false'],
],
],
[
'name' => 'token',
'in' => 'query',
'schema' => ['title' => '从GetToken获取的token'."\n", 'description' => '从GetToken获取的token'."\n", 'type' => 'string', 'required' => false, 'example' => 'some_token_value'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'url' => ['title' => 'Ray Dashboard 的 URL'."\n", 'description' => 'Ray Dashboard 的 URL'."\n", 'type' => 'string', 'example' => 'https://pre-pai-dlc-proxy-cn-hangzhou.aliyun.com/ray/dashboard/dlc1k7426goc7bvy'],
'metricsEnabled' => [
'title' => '该dashboard是否已经集成云监控支持展示ray metrics'."\n",
'description' => '该dashboard是否已经集成云监控支持展示ray metrics'."\n",
'type' => 'string',
'example' => 'true',
'enum' => ['true', 'false'],
],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取RayDashboard',
'summary' => '获取 Ray Dashboard 链接',
'description' => '请确保在使用该接口前,已充分了解PAI-DLC产品的收费方式和[价格](~~171758~~)。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"url\\": \\"https://pre-pai-dlc-proxy-cn-hangzhou.aliyun.com/ray/dashboard/dlc1k7426goc7bvy\\",\\n \\"metricsEnabled\\": \\"true\\"\\n}","type":"json"}]',
],
'GetRayHistoryServer' => [
'path' => '/api/v1/rayhistoryservers/{RayHistoryServerId}',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'RayHistoryServerId',
'in' => 'path',
'schema' => ['description' => '请求的 RayHistoryServer ID。', 'type' => 'string', 'required' => true, 'example' => 'rhsxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'WorkspaceId' => ['description' => '任务所属工作空间ID。', 'type' => 'string', 'example' => '46099'],
'DisplayName' => ['description' => '任务的显示名称。', 'type' => 'string', 'example' => 'my-ray-history-server'],
'UserId' => ['description' => '按照所属用户ID过滤。', 'type' => 'string', 'example' => '123456789'],
'Username' => ['description' => '按所属用户名过滤。', 'type' => 'string', 'example' => 'myusername'],
'TenantId' => ['description' => '租户ID。', 'type' => 'string', 'example' => '10**************14'],
'RayHistoryServerId' => ['description' => '请求的 Ray History Server ID。', 'type' => 'string', 'example' => 'rhsxxx'],
'RayHistoryServerUrl' => ['description' => 'Ray Dashboard URL。', 'type' => 'string', 'example' => 'https://rhsxxx-dashboard.dsw-gateway-cn-wulanchabu.data.aliyun.com/'],
'StoragePath' => ['description' => 'Ray 日志存储路径', 'type' => 'string', 'example' => 'oss://bucket-test-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/tmp'],
'ResourceId' => ['description' => '任务运行所在的资源组ID。', 'type' => 'string', 'example' => 'quotaxxx'],
'ResourceName' => ['description' => '作业运行的资源名称。', 'type' => 'string', 'example' => 'my-resource-name'],
'Status' => ['description' => '状态。', 'type' => 'string', 'example' => 'running'],
'ReasonCode' => ['description' => '状态详情码。', 'type' => 'string', 'example' => 'NotFound'],
'ReasonMessage' => ['description' => '状态详情。', 'type' => 'string', 'example' => '""'],
'GmtCreateTime' => ['description' => '创建时间(UTC)', 'type' => 'string', 'example' => '2021-01-12T14:35:01Z'],
'GmtModifyTime' => ['description' => '修改时间(UTC)。', 'type' => 'string', 'example' => '2021-01-12T14:36:00Z'],
'GmtFinishTime' => ['description' => '结束时间(UTC)', 'type' => 'string', 'example' => '2021-01-12T15:36:08Z'],
'MaxRuntimeMinutes' => ['description' => '最大运行时长。', 'type' => 'integer', 'format' => 'int32', 'example' => '1000'],
'EcsSpec' => ['description' => '公共资源组的硬件规格,请访问[PAI-DLC计费说明](~~171758~~)获取详细规格列表。>不同规格的价格会有区别。>', 'type' => 'string', 'example' => 'ecs.g6.large'],
'Accessibility' => ['description' => '可见性。', 'type' => 'string', 'example' => 'PRIVATE'],
],
'description' => '',
],
],
],
'errorCodes' => [
404 => [
['errorCode' => 'InvalidRayHistoryServer.NotFound', 'errorMessage' => 'The specified RayHistoryServer does not exist.', 'description' => ''],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取 RayHistoryServer',
'summary' => '查询 RayHistoryServer',
'description' => '请确保在使用该接口前,已充分了解PAI-DLC产品的收费方式和[价格](~~171758~~)。'."\n"
.'>CreateJob接口参数总长度(包含系统生成的参数)不能超过65536个字节,>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetRayHistoryServer',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"WorkspaceId\\": \\"46099\\",\\n \\"DisplayName\\": \\"my-ray-history-server\\",\\n \\"UserId\\": \\"123456789\\",\\n \\"Username\\": \\"myusername\\",\\n \\"TenantId\\": \\"10**************14\\",\\n \\"RayHistoryServerId\\": \\"rhsxxx\\",\\n \\"RayHistoryServerUrl\\": \\"https://rhsxxx-dashboard.dsw-gateway-cn-wulanchabu.data.aliyun.com/\\",\\n \\"StoragePath\\": \\"oss://bucket-test-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/tmp\\",\\n \\"ResourceId\\": \\"quotaxxx\\",\\n \\"ResourceName\\": \\"my-resource-name\\",\\n \\"Status\\": \\"running\\",\\n \\"ReasonCode\\": \\"NotFound\\",\\n \\"ReasonMessage\\": \\"\\\\\\"\\\\\\"\\",\\n \\"GmtCreateTime\\": \\"2021-01-12T14:35:01Z\\",\\n \\"GmtModifyTime\\": \\"2021-01-12T14:36:00Z\\",\\n \\"GmtFinishTime\\": \\"2021-01-12T15:36:08Z\\",\\n \\"MaxRuntimeMinutes\\": 1000,\\n \\"EcsSpec\\": \\"ecs.g6.large\\",\\n \\"Accessibility\\": \\"PRIVATE\\"\\n}","type":"json"}]',
],
'GetTensorboard' => [
'path' => '/api/v1/tensorboards/{TensorboardId}',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '20371',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'WorkspaceId',
'in' => 'query',
'schema' => ['title' => '工作空间ID', 'description' => '工作空间ID。参见[ListWorkspaces](~~449124~~)获取工作空间ID。', 'type' => 'string', 'required' => false, 'example' => '46099'],
],
[
'name' => 'TensorboardId',
'in' => 'path',
'schema' => ['title' => 'TensorboardId Id', 'description' => 'Tensorboard ID。参见[ListTensorboards](~~459689~~)获取Tensorboard ID。', 'type' => 'string', 'required' => true, 'example' => 'tb-20210114104214-xxxxx', 'maxLength' => 256, 'minLength' => 1],
],
[
'name' => 'JodId',
'in' => 'query',
'schema' => ['title' => 'JodId', 'description' => '任务ID。参见[ListJobs](~~459676~~)获取任务ID。', 'type' => 'string', 'required' => false, 'example' => 'dlc-xxxxxxxx'],
],
[
'name' => 'Token',
'in' => 'query',
'schema' => ['description' => '分享令牌信息,填入该参数可利用分享令牌信息获得查看某个Tensorboard任务的权限。可通过执行[GetTensorboardSharedUrl](~~2557813~~),在获得的链接中提取。', 'type' => 'string', 'required' => false, 'example' => 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.e'."\n"
.'yJleHAiOjE2OTUyODA0NTMsImlhdCI6MTY5NTE5NDA1MywidXNlcl9pZCI6IjExN'."\n"
.'Tc3MDMyNzA5OTQ5MDEiLCJ0YXJnZXRfaWQiOiJ0YjRrOGxjNXhmdTM2b3B0Iiw'."\n"
.'idGFyZ2V0X3R5cGUiOiJ0ZW5zb3Jib2FyZCJ9.6eT68J-KMBwwfN2d7fj7u6vyPcf0erfqYeizd2N****'],
],
],
'responses' => [
200 => [
'schema' => ['description' => 'Tensorboard详情。', '$ref' => '#/components/schemas/Tensorboard'],
],
],
'title' => '获取Tensorboard详情',
'summary' => '获取一个Tensorboard的详细信息。',
'changeSet' => [
['createdAt' => '2023-08-11T05:54:35.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTensorboard'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetTensorboard',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"TensorboardId\\": \\"tensorboard-xxx\\",\\n \\"TensorboardUrl\\": \\"http://xxxxxx\\",\\n \\"Status\\": \\"running\\",\\n \\"Duration\\": \\"60\\",\\n \\"GmtCreateTime\\": \\"2021-01-12T14:35:00Z\\",\\n \\"GmtModifyTime\\": \\"2021-01-12T14:36:00Z\\",\\n \\"GmtFinishTime\\": \\"null\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"DisplayName\\": \\"test\\",\\n \\"DataSourceId\\": \\"datasource-test\\",\\n \\"SummaryPath\\": \\"/root/data\\",\\n \\"UserId\\": \\"lycxxxxx\\",\\n \\"Username\\": \\"tensorboard.pai\\",\\n \\"ReasonCode\\": \\"\\\\\\"\\\\\\"\\",\\n \\"ReasonMessage\\": \\"\\\\\\"\\\\\\"\\",\\n \\"JobId\\": \\"dlc-20210114104214-vf9lowjt3pso\\",\\n \\"TensorboardDataSources\\": [\\n {\\n \\"DirectoryName\\": \\"dlcJobName\\",\\n \\"Name\\": \\"dlcJobName\\",\\n \\"Id\\": \\"d-vf2fdhxxxxxx\\",\\n \\"DataSourceType\\": \\"OSS\\",\\n \\"Uri\\": \\"oss://examplebucket.oss-cn-shanghai-internal.aliyuncs.com/\\",\\n \\"SourceType\\": \\"datasource\\",\\n \\"SummaryPath\\": \\"/tensorboard/run1\\",\\n \\"FullSummaryPath\\": \\"oss://xxxxx/tensorboard/run1\\"\\n }\\n ],\\n \\"TensorboardSpec\\": {\\n \\"VpcId\\": \\"vpc-xxxx\\",\\n \\"EcsType\\": \\"ecs.g6.large\\",\\n \\"SecurityGroupId\\": \\"sg-xxxxx\\",\\n \\"SwitchId\\": \\"vsw-xxxx\\"\\n },\\n \\"QuotaId\\": \\"quota12***\\",\\n \\"Priority\\": \\"1\\",\\n \\"QuotaName\\": \\"dlc-quota\\",\\n \\"Accessibility\\": \\"PRIVATE\\"\\n}","errorExample":""},{"type":"xml","example":"\\n tensorboard-xxx\\n http://xxxxxx\\n running\\n 1234567\\n 2021-01-12T14:35:00Z\\n 2021-01-12T14:36:00Z\\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\n test\\n datasource-test\\n /root/data\\n lycxxxxx\\n Delete by user\\n Tensorboard is deleted\\n dlc-20210114104214-vf9lowjt3pso\\n","errorExample":""}]',
],
'GetTensorboardSharedUrl' => [
'summary' => '获得Tensorboard的分享链接。该链接中包含数字令牌。使用该分享链接可以访问被分享的Tensorboard任务。',
'path' => '/api/v1/tensorboards/{TensorboardId}/sharedurl',
'methods' => ['get'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '189994',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'TensorboardId',
'in' => 'path',
'schema' => ['description' => 'Tensorboard任务的ID。', 'type' => 'string', 'required' => true, 'example' => 'tbxxxxxx'],
],
[
'name' => 'ExpireTimeSeconds',
'in' => 'query',
'schema' => ['description' => '分享链接的有效时长,单位:秒。最大值为604800。', 'type' => 'string', 'required' => false, 'example' => '86400'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID。用于问题查询和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
'TensorboardSharedUrl' => ['description' => 'Tensorboard的任务分享链接。', 'type' => 'string', 'example' => 'http://pai-dlc-proxy-xxx.alicyuncs.com/xxx/xxx/token/'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获得Tensorboard任务的分享链接',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTensorboardSharedUrl'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetTensorboardSharedUrl',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TensorboardSharedUrl\\": \\"http://pai-dlc-proxy-xxx.alicyuncs.com/xxx/xxx/token/\\"\\n}","type":"json"}]',
],
'GetToken' => [
'summary' => '获取DLC任务的分享令牌(Token),用于查看分享任务的相关信息。',
'path' => '/api/v1/tokens',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '44246',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'TargetType',
'in' => 'query',
'schema' => ['title' => 'TargetType', 'description' => '分享的任务类型,只可指定job或者tensorboard。', 'type' => 'string', 'required' => false, 'example' => 'job'],
],
[
'name' => 'TargetId',
'in' => 'query',
'schema' => ['title' => 'TargetId', 'description' => '等待分享的任务的ID。', 'type' => 'string', 'required' => false, 'example' => 'dlc*******'],
],
[
'name' => 'ExpireTime',
'in' => 'query',
'schema' => ['title' => 'ExpireTime', 'description' => '分享链接过期时间(默认为604800秒),最小值为0。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '60'],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '返回结果。',
'type' => 'object',
'properties' => [
'RequestId' => ['title' => 'RequestId', 'description' => '请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-xxxxxxxx'],
'Token' => ['title' => 'Token', 'description' => '任务分享令牌,可用于查看分享任务的相关信息。', 'type' => 'string', 'example' => 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9*****'],
],
],
],
],
'title' => '获取任务分享令牌',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetToken'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetToken',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-xxxxxxxx\\",\\n \\"Token\\": \\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9*****\\"\\n}","type":"json"}]',
],
'GetWebTerminal' => [
'path' => '/api/v1/jobs/{JobId}/pods/{PodId}/webterminal',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['description' => '任务ID。', 'type' => 'string', 'required' => false, 'example' => 'dlc-20210126170216-******'],
],
[
'name' => 'PodId',
'in' => 'path',
'schema' => ['description' => '任务Pod ID。', 'type' => 'string', 'required' => false, 'example' => 'dlc-20210126170216-****-chief-0'],
],
[
'name' => 'PodUid',
'in' => 'query',
'schema' => ['description' => 'Pod UID。', 'type' => 'string', 'required' => false, 'example' => '94a7cc7c-0033-48b5-85bd-71c63592c268'],
],
[
'name' => 'IsShared',
'in' => 'query',
'schema' => ['description' => '是否创建用于分享的进入容器链接,取值如下:'."\n"
.'- true:返回进入容器的分享链接。该链接将在三十秒后失效,且仅能被使用一次。一旦通过该链接进入容器后,其他使用该链接进入容器的请求将无效。'."\n"
.'- false:返回普通的进入容器的分享链接,使用时需进行阿里云身份认证。该链接将在三十秒后失效。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => '返回结果。',
'type' => 'object',
'properties' => [
'RequestId' => ['description' => '此次调用的请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
'WebTerminalUrl' => ['description' => '进入容器的WebSocket链接。您需构建WebSocket客户端,详细通信格式请参考如下代码:'."\n"
.' ```'."\n"
.' ws = new WebSocket('."\n"
.' `wss://xxxxx`,'."\n"
.' );'."\n"
.' ws.onopen = function open() {'."\n"
.' console.warn(\'connected\');'."\n"
.' term.write(\'\\r\');'."\n"
.' };'."\n"
."\n"
.' ws.onclose = function close() {'."\n"
.' console.warn(\'disconnected\');'."\n"
.' term.write(\'Connection closed\');'."\n"
.' };'."\n"
."\n"
.' // 收到后端返回'."\n"
.' ws.onmessage = function incoming(event) {'."\n"
.' const msg = JSON.parse(event.data);'."\n"
.' console.warn(msg);'."\n"
.' if (msg.operation === \'stdout\') {'."\n"
.' term.write(msg.data);'."\n"
.' } else {'."\n"
.' console.warn(\'invalid msg operation: \' + msg);'."\n"
.' }'."\n"
.' };'."\n"
."\n"
.' // 控制台输入'."\n"
.' term.onData(data => {'."\n"
.' const msg = { operation: \'stdin\', data: data };'."\n"
.' ws.send(JSON.stringify(msg));'."\n"
.' });'."\n"
."\n"
.' term.onResize(size => {'."\n"
.' const msg = { operation: \'resize\', cols: size.cols, rows: size.rows };'."\n"
.' ws.send(JSON.stringify(msg));'."\n"
.' });'."\n"
."\n"
.' fitAddon.fit();'."\n"
.'};'."\n"
.'```', 'type' => 'string', 'example' => 'wss://*****'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取容器访问HTTP链接',
'summary' => '提供获取容器访问HTTP链接的方法和步骤。',
'changeSet' => [
['createdAt' => '2023-11-07T07:13:57.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2023-07-21T08:19:02.000Z', 'description' => '响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWebTerminal'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetWebTerminal',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"WebTerminalUrl\\": \\"wss://*****\\"\\n}","type":"json"}]',
],
'ListEcsSpecs' => [
'summary' => '查询当前支持的机器资源配置列表。',
'path' => '/api/v1/ecsspecs',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'AcceleratorType',
'in' => 'query',
'schema' => ['title' => '按加速器类型过滤', 'description' => '按加速器类型过滤。取值如下:'."\n"
.'- CPU'."\n"
.'- GPU', 'type' => 'string', 'required' => false, 'example' => 'GPU'],
],
[
'name' => 'SortBy',
'in' => 'query',
'schema' => ['title' => '按返回字段排序,可选值:Cpu, Gpu, Memory, InstanceType, ResourceType, GpuType, AcceleratorType', 'description' => '按返回字段排序。取值如下:'."\n"
.'- CPU'."\n"
.'- GPU'."\n"
.'- Memory'."\n"
.'- GmtCreateTime', 'type' => 'string', 'required' => false, 'example' => 'GPU'],
],
[
'name' => 'Order',
'in' => 'query',
'schema' => ['title' => '排序顺序,可选值:desc, asc', 'description' => '排序顺序,取值如下:'."\n"
.'- desc:逆序排列。'."\n"
.'- asc:升序排列。', 'type' => 'string', 'required' => false, 'example' => 'desc'],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['title' => '查询第几页数据', 'description' => '查询第几页数据,起始值为1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['title' => '设置查询的分页大写', 'description' => '分页查询时每页显示的数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'],
],
[
'name' => 'InstanceTypes',
'in' => 'query',
'schema' => ['title' => '需要查询机器规格列表,以逗号分隔', 'description' => '需要查询的机器规格列表,以半角逗号(,)分隔。', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large,ecs.g6.xlarge'],
],
[
'name' => 'ResourceType',
'in' => 'query',
'schema' => ['title' => '资源类型,可选值:ECS、Lingjun', 'description' => '资源类型,取值如下:'."\n"
.'- ECS'."\n"
.'- Lingjun', 'type' => 'string', 'required' => false, 'example' => 'ECS'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => '返回结果。',
'type' => 'object',
'properties' => [
'RequestId' => ['title' => '请求Id', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
'EcsSpecs' => [
'title' => 'ECS规格列表',
'description' => 'ECS规格列表。',
'type' => 'array',
'items' => ['description' => '机器资源的配置列表。', '$ref' => '#/components/schemas/EcsSpec'],
],
'TotalCount' => ['title' => '符合过滤条件的总数量', 'description' => '符合过滤条件的总数量。', 'type' => 'integer', 'format' => 'int64', 'example' => '10'],
],
],
],
],
'title' => '查询机器资源配置列表',
'changeSet' => [
['createdAt' => '2024-01-24T10:35:10.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2021-08-25T03:51:33.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEcsSpecs'],
],
],
'ramActions' => [],
'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"EcsSpecs\\": [\\n {\\n \\"InstanceType\\": \\"ecs.gn6e-c12g1.3xlarge\\",\\n \\"AcceleratorType\\": \\"GPU\\",\\n \\"Cpu\\": 12,\\n \\"Gpu\\": 1,\\n \\"GpuType\\": \\"NVIDIA v100\\",\\n \\"Memory\\": 92,\\n \\"GpuMemory\\": 80,\\n \\"IsAvailable\\": true,\\n \\"ResourceType\\": \\"ECS\\",\\n \\"DefaultGPUDriver\\": \\"470.199.02\\",\\n \\"SupportedGPUDrivers\\": [\\n \\"470.199.02, 535.54.03\\"\\n ],\\n \\"SpotStockStatus\\": \\"WithStock\\",\\n \\"NonProtectSpotDiscount\\": 0.1,\\n \\"PaymentTypes\\": [\\n \\"Spot,PostPaid\\"\\n ]\\n }\\n ],\\n \\"TotalCount\\": 10\\n}","errorExample":""},{"type":"xml","example":"<不支持/>","errorExample":""}]',
],
'ListJobSanityCheckResults' => [
'path' => '/api/v1/jobs/{JobId}/sanitycheckresults',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '204035',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['description' => '任务ID。参见[ListJobs](~~459676~~)获取。', 'type' => 'string', 'required' => true, 'example' => 'dlc-20210114104214-xxxx'],
],
[
'name' => 'Order',
'in' => 'query',
'schema' => ['description' => '排列顺序:'."\n"
.'- desc(降序)'."\n"
.'- asc(升序)', 'type' => 'string', 'required' => false, 'example' => 'desc'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => '任务所有的算力健康检测结果。',
'type' => 'object',
'properties' => [
'SanityCheckResults' => [
'description' => '所有算力健康检测结果。',
'type' => 'array',
'items' => [
'description' => '一条完整的算力健康检测结果。',
'type' => 'array',
'items' => ['description' => '单个检测阶段的算力健康检测结果。可能值:'."\n"
.'- Phase(检测阶段)'."\n"
.'- Message(检测结果信息)'."\n"
.'- StartedAt(检测开始时间)'."\n"
.'- FinishedAt(检测结束时间)'."\n"
.'- Status(检测状态)'."\n"
.'- CheckNumber(第几次检测)', '$ref' => '#/components/schemas/SanityCheckResultItem'],
],
],
'TotalCount' => ['description' => '符合过滤条件的总检测结果数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
'RequestID' => ['description' => '请求ID。', 'type' => 'string', 'example' => '1AC9xxx-3xxx-5xxx2-xxxx-FA5'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取任务所有算力健康检测结果',
'summary' => '获取某个DLC任务所有算力健康检测的检测结果。',
'changeSet' => [
['createdAt' => '2024-02-26T03:31:14.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListJobSanityCheckResults'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:ListJobSanityCheckResults',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SanityCheckResults\\": [\\n [\\n {\\n \\"Phase\\": \\"CheckInit\\",\\n \\"Message\\": \\"\\",\\n \\"Status\\": \\"Succeeded\\",\\n \\"StartedAt\\": \\"2023-11-30T16:47:30.343005+08:00\\",\\n \\"FinishedAt\\": \\"2023-11-30T16:47:30.378817+08:00\\",\\n \\"CheckNumber\\": 1\\n }\\n ]\\n ],\\n \\"TotalCount\\": 10,\\n \\"RequestID\\": \\"1AC9xxx-3xxx-5xxx2-xxxx-FA5\\"\\n}","type":"json"}]',
],
'ListJobTemplates' => [
'path' => '/api/v1/jobtemplates',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'WorkspaceId',
'in' => 'query',
'schema' => ['title' => '工作空间 ID', 'description' => '工作空间 ID', 'type' => 'string', 'required' => true, 'example' => '4***9'],
],
[
'name' => 'UserId',
'in' => 'query',
'schema' => ['title' => '用户 ID', 'description' => '用户 ID', 'type' => 'string', 'required' => false, 'example' => '20**************02'],
],
[
'name' => 'TemplateId',
'in' => 'query',
'schema' => ['title' => '模板 ID', 'description' => '按模板 ID 精确筛选列表', 'type' => 'string', 'required' => false, 'example' => 'tpl1****6jcq2q', 'maxLength' => 128],
],
[
'name' => 'TemplateName',
'in' => 'query',
'schema' => ['title' => '模板名称', 'description' => '按模板名称模糊筛选列表', 'type' => 'string', 'required' => false, 'example' => 'job-template-example-1778047****', 'maxLength' => 256],
],
[
'name' => 'SortBy',
'in' => 'query',
'schema' => [
'title' => '排序字段',
'description' => '排序字段',
'type' => 'string',
'required' => false,
'example' => 'GmtCreateTime',
'default' => 'GmtCreateTime',
'enum' => ['GmtCreateTime', 'GmtModifyTime', 'TemplateName'],
],
],
[
'name' => 'Order',
'in' => 'query',
'schema' => [
'title' => '排序顺序',
'description' => '排序顺序',
'type' => 'string',
'required' => false,
'example' => 'desc',
'default' => 'desc',
'enum' => ['asc', 'desc'],
],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['title' => '页码', 'description' => '页码', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'default' => '1'],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['title' => '每页数量', 'description' => '每页数量', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '20'],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '返回body',
'type' => 'object',
'properties' => [
'JobTemplates' => [
'title' => '模板列表',
'description' => '模板列表',
'type' => 'array',
'items' => [
'description' => '模板信息',
'type' => 'object',
'properties' => [
'TemplateId' => ['title' => '模板 ID', 'description' => '模板 ID', 'type' => 'string', 'example' => 'tpl1r5g9ait7****'],
'TemplateName' => ['title' => '模板名称', 'description' => '模板名称', 'type' => 'string', 'example' => 'job-template-1772516653885'],
'Description' => ['title' => '模板描述', 'description' => '模板描述', 'type' => 'string', 'example' => 'job description'],
'Metadata' => ['title' => '自定义元数据', 'description' => '自定义元数据', 'type' => 'object', 'example' => '{}'],
'UserId' => ['title' => '创建者 ID', 'description' => '创建者 ID', 'type' => 'string', 'example' => '20**************26'],
'WorkspaceId' => ['title' => '工作空间 ID', 'description' => '工作空间 ID', 'type' => 'string', 'example' => '88****'],
'TenantId' => ['title' => '租户 ID', 'description' => '租户 ID', 'type' => 'string', 'example' => '142388383837****'],
'DefaultVersion' => ['title' => '默认版本号', 'description' => '默认版本号', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
'GmtCreateTime' => ['title' => '创建时间', 'description' => '创建时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2026-01-23T07:29:06Z'],
'GmtModifyTime' => ['title' => '修改时间', 'description' => '修改时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2026-03-03T05:48:02Z'],
'ModifiedBy' => ['title' => '最后修改者 ID', 'description' => '最后修改者 ID', 'type' => 'string', 'example' => '20**************26'],
],
],
],
'TotalCount' => ['title' => '总记录数', 'description' => '总记录数', 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
'PageNumber' => ['title' => '当前页码', 'description' => '当前页码', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
'PageSize' => ['title' => '每页数量', 'description' => '每页数量', 'type' => 'integer', 'format' => 'int32', 'example' => '50'],
'RequestId' => ['title' => '请求 ID', 'description' => '请求 ID', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0D*****'],
],
],
],
],
'title' => '列出任务模板',
'summary' => '按工作空间列出任务模板,支持分页与排序;可按创建者、TemplateId、TemplateName 筛选。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'list',
'ramAction' => [
'action' => 'paidlc:ListJobTemplates',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"JobTemplates\\": [\\n {\\n \\"TemplateId\\": \\"tpl1r5g9ait7****\\",\\n \\"TemplateName\\": \\"job-template-1772516653885\\",\\n \\"Description\\": \\"job description\\",\\n \\"Metadata\\": {},\\n \\"UserId\\": \\"20**************26\\",\\n \\"WorkspaceId\\": \\"88****\\",\\n \\"TenantId\\": \\"142388383837****\\",\\n \\"DefaultVersion\\": 2,\\n \\"GmtCreateTime\\": \\"2026-01-23T07:29:06Z\\",\\n \\"GmtModifyTime\\": \\"2026-03-03T05:48:02Z\\",\\n \\"ModifiedBy\\": \\"20**************26\\"\\n }\\n ],\\n \\"TotalCount\\": 100,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0D*****\\"\\n}","type":"json"}]',
],
'ListJobs' => [
'summary' => '获取任务列表,支持分页、排序和按条件过滤。',
'path' => '/api/v1/jobs',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '13122',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'DisplayName',
'in' => 'query',
'schema' => ['title' => '作业显示名称,支持模糊查询', 'description' => '任务名称,支持模糊查询,大小写不敏感,不支持通配符。'."\n"
.'例如:输入test,可以匹配test-job1、job-test、job-test2或job-Test;但是不能匹配job-t1。'."\n"
.'默认为空,代表任意任务名称。', 'type' => 'string', 'required' => false, 'example' => 'tf-mnist-test', 'maxLength' => 1024],
],
[
'name' => 'JobType',
'in' => 'query',
'schema' => ['title' => '作业类型', 'description' => '任务类型,默认为空,代表所有类型。支持的任务类型如下:'."\n"
.'- TFJob'."\n"
.'- PyTorchJob'."\n"
.'- XGBoostJob'."\n"
.'- OneFlowJob'."\n"
.'- ElasticBatchJob', 'type' => 'string', 'required' => false, 'example' => 'TFJob', 'maxLength' => 32],
],
[
'name' => 'Status',
'in' => 'query',
'schema' => ['title' => '作业状态', 'description' => '任务运行状态,可能值:'."\n"
.'- Creating'."\n"
.'- Queuing'."\n"
.'- Bidding (当前仅限灵骏Spot作业)'."\n"
.'- EnvPreparing'."\n"
.'- SanityChecking'."\n"
.'- Running'."\n"
.'- Restarting'."\n"
.'- Stopping'."\n"
.'- SucceededReserving'."\n"
.'- FailedReserving'."\n"
.'- Succeeded'."\n"
.'- Failed'."\n"
.'- Stopped', 'type' => 'string', 'required' => false, 'example' => 'Running', 'maxLength' => 200],
],
[
'name' => 'StartTime',
'in' => 'query',
'schema' => ['title' => '起始时间', 'description' => '查询区间的起始时间;使用任务的创建时间来过滤。默认值是当前时间减去7天,即:如果StartTime与EndTime都没有配置时,默认查询最近7天的任务列表。', 'type' => 'string', 'required' => false, 'example' => '2025-04-16T07:25:34Z'],
],
[
'name' => 'EndTime',
'in' => 'query',
'schema' => ['title' => '截止时间', 'description' => '查询区间的截止时间;使用任务的创建时间来过滤。默认值是当前时刻。', 'type' => 'string', 'required' => false, 'example' => '2025-04-16T07:26:41Z'],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['title' => '当前页', 'description' => '分页查询,指定当前需要返回的页码,起始值为1,默认为1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '1', 'example' => '1', 'default' => '1'],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['title' => '每页返回的作业数', 'description' => '每页返回的任务数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '50', 'default' => '10'],
],
[
'name' => 'SortBy',
'in' => 'query',
'schema' => ['title' => '按返回字段排序', 'description' => '排序字段:'."\n"
."\n"
.'- DisplayName'."\n"
.'- JobType'."\n"
.'- Status'."\n"
.'- GmtCreateTime'."\n"
.'- GmtFinishTime', 'type' => 'string', 'required' => false, 'example' => 'GmtCreateTime'],
],
[
'name' => 'Order',
'in' => 'query',
'schema' => [
'title' => '排序顺序',
'description' => '排列顺序,支持:'."\n"
."\n"
.'- desc:降序,默认值。'."\n"
.'- asc:升序。',
'type' => 'string',
'required' => false,
'enumValueTitles' => ['asc' => 'asc', 'desc' => 'desc'],
'example' => 'desc',
'default' => 'desc',
],
],
[
'name' => 'ShowOwn',
'in' => 'query',
'schema' => ['title' => '是否只返回当前登录者所提交的作业', 'description' => '是否只查询当前用户提交的任务列表。', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'true'],
],
[
'name' => 'WorkspaceId',
'in' => 'query',
'schema' => ['title' => '工作空间ID', 'description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'required' => false, 'example' => '1****'],
],
[
'name' => 'ResourceId',
'in' => 'query',
'schema' => ['title' => '资源组ID', 'description' => '资源组ID。如何查询专有资源组ID,详情请参见[管理资源配额](~~2651299~~)。', 'type' => 'string', 'required' => false, 'example' => 'r*****'],
],
[
'name' => 'BusinessUserId',
'in' => 'query',
'schema' => ['title' => '作业关联用户ID', 'description' => '任务关联用户ID。', 'type' => 'string', 'required' => false, 'example' => '16****'],
],
[
'name' => 'Caller',
'in' => 'query',
'schema' => ['title' => '调用方', 'description' => '调用方。', 'type' => 'string', 'required' => false, 'example' => 'local'],
],
[
'name' => 'Tags',
'in' => 'query',
'style' => 'json',
'schema' => [
'title' => '自定义标签',
'description' => '用于过滤的标签。',
'type' => 'object',
'required' => false,
'additionalProperties' => ['type' => 'string', 'example' => 'recommandation', 'description' => '单个标签。'],
],
],
[
'name' => 'PipelineId',
'in' => 'query',
'schema' => ['title' => '工作流ID', 'description' => '过滤指定工作流ID创建的任务。', 'type' => 'string', 'required' => false, 'example' => 'flow-*******'],
],
[
'name' => 'FromAllWorkspaces',
'in' => 'query',
'schema' => ['description' => '是否跨工作空间获取任务列表,需要配合`ShowOwn=true`参数使用,可以查询当前用户最近提交的任务列表。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'JobId',
'in' => 'query',
'schema' => ['description' => '任务ID,不支持模糊查询,对大小写不敏感。不支持通配符。'."\n"
.'默认为空,代表任意任务ID。', 'type' => 'string', 'required' => false, 'example' => 'dlc********'],
],
[
'name' => 'UserIdForFilter',
'in' => 'query',
'schema' => ['title' => '用于过滤的用户ID', 'description' => '按任务提交者的用户ID,过滤查询任务列表。', 'type' => 'string', 'required' => false, 'example' => '20**************'],
],
[
'name' => 'Username',
'in' => 'query',
'schema' => ['title' => '提交作业用户名,支持模糊匹配', 'description' => '按任务提交者的用户名,过滤查询任务列表。支持模糊查询,不支持通配符。默认为空,表示不过滤用户名。', 'type' => 'string', 'required' => false, 'example' => 'test***'],
],
[
'name' => 'ResourceQuotaName',
'in' => 'query',
'schema' => ['title' => '资源组名称', 'description' => '按资源配额的名字,过滤查询任务列表。支持模糊匹配,不支持通配符。默认为空,表示不过滤资源配额。', 'type' => 'string', 'required' => false, 'example' => 'quota***'],
],
[
'name' => 'Accessibility',
'in' => 'query',
'schema' => [
'description' => '作业的可见性,取值如下:'."\n"
.'- PUBLIC:在此工作空间中,对所有人可见。'."\n"
.'- PRIVATE(默认值):在此工作空间中,仅对您和管理员可见。',
'type' => 'string',
'required' => false,
'enumValueTitles' => ['PUBLIC' => 'PUBLIC', 'PRIVATE' => 'PRIVATE'],
'example' => 'PRIVATE',
],
],
[
'name' => 'OversoldInfo',
'in' => 'query',
'schema' => ['description' => '闲时资源信息,可能的取值'."\n"
.'- ForbiddenQuotaOverSold'."\n"
.'- ForceQuotaOverSold'."\n"
.'- AcceptQuotaOverSold-true (true表示作业实际使用了闲时资源)'."\n"
.'- AcceptQuotaOverSold-false (false表示作业实际使用了保障资源)', 'type' => 'string', 'required' => false, 'example' => 'ForbiddenQuotaOverSold'],
],
[
'name' => 'PaymentType',
'in' => 'query',
'schema' => ['description' => '资源类型,取值如下:'."\n"
.'- PrePaid:资源配额'."\n"
.'- Spot:竞价资源'."\n"
.'- PostPaid:公共资源', 'type' => 'string', 'required' => false, 'example' => 'PostPaid'],
],
[
'name' => 'JobIds',
'in' => 'query',
'schema' => ['description' => '任务ID列表,多个ID用英文逗号分隔。与JobId同时设置时,以JobId为准。', 'type' => 'string', 'required' => false, 'example' => 'dlc123abc'],
],
[
'name' => 'DisplayNameSearchMode',
'in' => 'query',
'schema' => [
'description' => 'DisplayName搜索模式。默认为通配符匹配。',
'type' => 'string',
'required' => false,
'enumValueTitles' => ['prefix' => 'prefix', 'fulltext' => 'fulltext', 'term' => 'term', 'wildcard' => 'wildcard'],
'example' => 'wildcard',
],
],
[
'name' => 'ReasonSearch',
'in' => 'query',
'schema' => ['description' => '在任务失败原因(reason)字段中进行全文检索,支持中英文分词。', 'type' => 'string', 'required' => false, 'example' => 'OOM'],
],
[
'name' => 'UserCommandSearch',
'in' => 'query',
'schema' => ['description' => '在用户命令(user_command)字段中进行全文检索,支持中英文分词。', 'type' => 'string', 'required' => false, 'example' => 'python train.py'],
],
[
'name' => 'ImageSearch',
'in' => 'query',
'schema' => ['description' => '在镜像(images)字段中进行全文检索,支持中英文分词。', 'type' => 'string', 'required' => false, 'example' => 'pytorch'],
],
[
'name' => 'TimeRangeField',
'in' => 'query',
'schema' => ['description' => '指定StartTime/EndTime筛选使用的时间字段。不填默认为创建时间。', 'type' => 'string', 'required' => false, 'example' => 'GmtFinishTime'],
],
[
'name' => 'NumericRangeField',
'in' => 'query',
'schema' => ['description' => '数值范围筛选的字段名。需配合NumericRangeMin/NumericRangeMax使用。', 'type' => 'string', 'required' => false, 'example' => 'RequestGPU'],
],
[
'name' => 'NumericRangeMin',
'in' => 'query',
'schema' => ['description' => '数值范围筛选的最小值(包含)。需配合NumericRangeField使用。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '4 '],
],
[
'name' => 'NumericRangeMax',
'in' => 'query',
'schema' => ['description' => '数值范围筛选的最大值(包含)。需配合NumericRangeField使用。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '8'],
],
[
'name' => 'EnableAssignNode',
'in' => 'query',
'schema' => [
'description' => '筛选是否启用指定节点运行的任务。',
'type' => 'string',
'required' => false,
'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
'example' => 'true',
],
],
[
'name' => 'TemplateId',
'in' => 'query',
'schema' => ['description' => '模板ID,用于筛选由指定模板创建的任务。', 'type' => 'string', 'required' => false, 'example' => 'tmlabc123 '],
],
[
'name' => 'Description',
'in' => 'query',
'schema' => ['type' => 'string'],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '任务列表。',
'type' => 'object',
'properties' => [
'Jobs' => [
'title' => '作业列表',
'description' => '任务列表。',
'type' => 'array',
'items' => ['description' => '单个任务。', '$ref' => '#/components/schemas/JobItem'],
],
'TotalCount' => ['title' => '符合过滤条件的总作业数', 'description' => '符合过滤条件的总任务数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
],
],
],
'title' => '获取任务列表',
'changeSet' => [
['createdAt' => '2025-10-17T07:03:51.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2025-09-09T06:27:28.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2025-05-07T12:37:04.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2025-01-09T12:43:08.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-11-21T12:36:46.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-04-09T02:18:24.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-01-12T05:43:52.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2023-12-14T10:35:38.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-11-29T12:19:51.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListJobs'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:ListJobs',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"Jobs\\": [\\n {\\n \\"JobId\\": \\"dlc-20210126170216-********\\",\\n \\"CredentialConfig\\": {\\n \\"EnableCredentialInject\\": true,\\n \\"AliyunEnvRoleKey\\": \\"\\",\\n \\"CredentialConfigItems\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"Type\\": \\"\\",\\n \\"Roles\\": [\\n {\\n \\"RoleArn\\": \\"\\",\\n \\"RoleType\\": \\"\\",\\n \\"AssumeRoleFor\\": \\"\\",\\n \\"Policy\\": \\"\\",\\n \\"AssumeUserInfo\\": {\\n \\"SecurityToken\\": \\"\\",\\n \\"AccessKeyId\\": \\"\\",\\n \\"Type\\": \\"\\",\\n \\"Id\\": \\"\\"\\n }\\n }\\n ]\\n }\\n ]\\n },\\n \\"JobType\\": \\"TFJob\\",\\n \\"DisplayName\\": \\"tf-mnist-test\\",\\n \\"UserVpc\\": {\\n \\"VpcId\\": \\"vpc-2zed***\\",\\n \\"SwitchId\\": \\"vsw-2ze6***\\",\\n \\"SecurityGroupId\\": \\"sg-2zeef***\\",\\n \\"ExtendedCidrs\\": [\\n \\"10.2.0.0/16\\"\\n ],\\n \\"DefaultRoute\\": \\"eth0\\"\\n },\\n \\"UserId\\": \\"123456789\\",\\n \\"Username\\": \\"pai-dlc-role\\",\\n \\"Status\\": \\"Stopped\\",\\n \\"WorkspaceId\\": \\"268\\",\\n \\"WorkspaceName\\": \\"dlc-workspace\\",\\n \\"ResourceId\\": \\"dlc-quota\\",\\n \\"ResourceLevel\\": \\"L0\\",\\n \\"ReasonCode\\": \\"JobStoppedByUser\\",\\n \\"ReasonMessage\\": \\"Job is stopped by user.\\",\\n \\"JobSpecs\\": [\\n {\\n \\"Type\\": \\"Worker\\",\\n \\"Image\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com/cloud-dsw/tensorflow:1.12PAI-gpu-py36-cu101-ubuntu18.04\\",\\n \\"ImageConfig\\": {\\n \\"DockerRegistry\\": \\"docker****registry.com\\",\\n \\"Username\\": \\" username\\",\\n \\"Password\\": \\"password\\",\\n \\"Auth\\": \\"\\"\\n },\\n \\"PodCount\\": 1,\\n \\"ExtraPodSpec\\": {\\n \\"SideCarContainers\\": [\\n {\\n \\"Name\\": \\"data-init\\",\\n \\"Image\\": \\"registry.cn-hangzhou.aliyuncs.com/pai-dlc/curl:v1.0.0\\",\\n \\"Command\\": [\\n \\"curl www.aliyun.com\\"\\n ],\\n \\"Args\\": [\\n \\"-v\\"\\n ],\\n \\"WorkingDir\\": \\"/root\\",\\n \\"Env\\": [\\n {\\n \\"Name\\": \\"ENABLE_DEBUG\\",\\n \\"Value\\": \\"true\\"\\n }\\n ],\\n \\"Resources\\": {\\n \\"Limits\\": {\\n \\"key\\": \\"{\'cpu\': \'1\', \'memory\': \'1000Mi\'}\\"\\n },\\n \\"Requests\\": {\\n \\"key\\": \\"{\'cpu\': \'1\', \'memory\': \'1000Mi\'}\\"\\n }\\n }\\n }\\n ],\\n \\"InitContainers\\": [\\n {\\n \\"Name\\": \\"data-init\\",\\n \\"Image\\": \\"registry.cn-hangzhou.aliyuncs.com/pai-dlc/curl:v1.0.0\\",\\n \\"Command\\": [\\n \\"curl www.aliyun.com\\"\\n ],\\n \\"Args\\": [\\n \\"-v\\"\\n ],\\n \\"WorkingDir\\": \\"/root\\",\\n \\"Env\\": [\\n {\\n \\"Name\\": \\"ENABLE_DEBUG\\",\\n \\"Value\\": \\"true\\"\\n }\\n ],\\n \\"Resources\\": {\\n \\"Limits\\": {\\n \\"key\\": \\"{\'cpu\': \'1\', \'memory\': \'1000Mi\'}\\"\\n },\\n \\"Requests\\": {\\n \\"key\\": \\"{\'cpu\': \'1\', \'memory\': \'1000Mi\'}\\"\\n }\\n }\\n }\\n ],\\n \\"PodLabels\\": {\\n \\"key\\": \\"example-lable\\"\\n },\\n \\"PodAnnotations\\": {\\n \\"key\\": \\"example-annotation\\"\\n },\\n \\"SharedVolumeMountPaths\\": [\\n \\"/root/share/\\"\\n ],\\n \\"Lifecycle\\": {\\n \\"PreStop\\": {\\n \\"Exec\\": {\\n \\"Command\\": [\\n \\"\\"\\n ]\\n }\\n },\\n \\"PostStart\\": {\\n \\"Exec\\": {\\n \\"Command\\": [\\n \\"\\"\\n ]\\n }\\n }\\n },\\n \\"MainContainerSecurityContext\\": {\\n \\"RunAsUser\\": 1000,\\n \\"RunAsGroup\\": 1000,\\n \\"SeccompProfile\\": {\\n \\"Type\\": \\"Unconfined\\",\\n \\"LocalhostProfile\\": \\"my-profiles/profile-allow.json\\"\\n },\\n \\"Privileged\\": true,\\n \\"Capabilities\\": {\\n \\"Add\\": [\\n \\"\\"\\n ],\\n \\"Drop\\": [\\n \\"\\"\\n ]\\n }\\n }\\n },\\n \\"ResourceConfig\\": {\\n \\"CPU\\": \\"10\\",\\n \\"GPU\\": \\"3\\",\\n \\"Memory\\": \\"10Gi\\",\\n \\"SharedMemory\\": \\"5Gi\\",\\n \\"GPUType\\": \\"Tesla-V100-16G\\"\\n },\\n \\"UseSpotInstance\\": false,\\n \\"SpotSpec\\": {\\n \\"SpotStrategy\\": \\"SpotWithPriceLimit\\",\\n \\"SpotDiscountLimit\\": 0.8,\\n \\"SpotPriceLimit\\": 0.4744\\n },\\n \\"AssignNodeSpec\\": {\\n \\"EnableAssignNode\\": true,\\n \\"NodeNames\\": \\"lingjxxxxxxxx\\",\\n \\"AntiAffinityNodeNames\\": \\"lingjxxxxxxxx\\",\\n \\"HyperNodes\\": [\\n {\\n \\"HyperNodeName\\": \\"\\",\\n \\"NodeNames\\": \\"\\"\\n }\\n ],\\n \\"AntiAffinityHyperNodes\\": [\\n {\\n \\"HyperNodeName\\": \\"\\",\\n \\"NodeNames\\": \\"\\"\\n }\\n ]\\n },\\n \\"LocalMountSpecs\\": [\\n {\\n \\"MountMode\\": \\"\\",\\n \\"LocalPath\\": \\"\\",\\n \\"MountPath\\": \\"\\"\\n }\\n ],\\n \\"AutoScalingSpec\\": {\\n \\"ScalingStrategy\\": \\"\\",\\n \\"MinReplicas\\": 0,\\n \\"MaxReplicas\\": 0,\\n \\"PodsToDelete\\": [\\n \\"\\"\\n ],\\n \\"AutoscalingMetricSpec\\": {\\n \\"MetricName\\": \\"\\",\\n \\"TargetValue\\": 0,\\n \\"StabilizationWindowSeconds\\": 0,\\n \\"Tolerance\\": \\"\\"\\n }\\n },\\n \\"ServiceSpec\\": {\\n \\"DefaultPort\\": 8080,\\n \\"ServiceMode\\": \\"PerRole\\",\\n \\"ExtraPorts\\": [\\n 8081\\n ]\\n },\\n \\"IsCheif\\": true,\\n \\"IsChief\\": true,\\n \\"RestartPolicy\\": \\"ExitCode\\",\\n \\"SystemDisk\\": {\\n \\"Size\\": 0,\\n \\"Category\\": \\"\\",\\n \\"PerformanceLevel\\": \\"\\"\\n },\\n \\"EcsSpec\\": \\"ecs.c6.large\\",\\n \\"QuotaId\\": \\"\\",\\n \\"ConsiderInSuccessPolicy\\": true,\\n \\"StartupDependencies\\": [\\n {\\n \\"Type\\": \\"\\",\\n \\"OnPhase\\": \\"\\",\\n \\"MinReplicas\\": \\"\\"\\n }\\n ],\\n \\"ElasticSpotSpecs\\": [\\n {\\n \\"InstanceType\\": \\"\\",\\n \\"SpotPriceLimit\\": 0,\\n \\"SpotDiscountLimit\\": 0,\\n \\"SpotStrategy\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"UserCommand\\": \\"python /root/code/mnist.py\\",\\n \\"DataSources\\": [\\n {\\n \\"DataSourceId\\": \\"data-20210114104214-********\\",\\n \\"MountPath\\": \\"/mnt/data\\"\\n }\\n ],\\n \\"CodeSource\\": {\\n \\"CodeSourceId\\": \\"code-20210111103721-********\\",\\n \\"Branch\\": \\"master\\",\\n \\"Commit\\": \\"44da109b59f8596152987eaa8f3b2487bb******\\",\\n \\"MountPath\\": \\"/mnt/data\\"\\n },\\n \\"ThirdpartyLibs\\": [\\n \\"numpy==1.16.1\\"\\n ],\\n \\"NodeNames\\": [\\n \\"i-a\\"\\n ],\\n \\"ThirdpartyLibDir\\": \\"/root/code/\\",\\n \\"Envs\\": {\\n \\"key\\": \\"ENABLE_DEBUG_MODE\\"\\n },\\n \\"SystemEnvs\\": {\\n \\"key\\": \\"ENABLE_DEBUG_MODE\\"\\n },\\n \\"GmtCreateTime\\": \\"2025-04-16T07:25:34Z\\",\\n \\"GmtSubmittedTime\\": \\"2025-04-16T07:26:14Z\\",\\n \\"GmtRunningTime\\": \\"2025-04-16T07:26:41Z\\",\\n \\"GmtSuccessedTime\\": \\"2025-04-16T07:28:20Z\\",\\n \\"GmtStoppedTime\\": \\"null\\",\\n \\"GmtFailedTime\\": \\"null\\",\\n \\"GmtFinishTime\\": \\"2025-04-16T07:28:20Z\\",\\n \\"GmtModifiedTime\\": \\"2025-04-16T07:28:22Z\\",\\n \\"Duration\\": 243,\\n \\"JobMaxRunningTimeMinutes\\": 0,\\n \\"Settings\\": {\\n \\"BusinessUserId\\": \\"16****\\",\\n \\"Caller\\": \\"SilkFlow\\",\\n \\"Tags\\": {\\n \\"key\\": \\"key:value\\"\\n },\\n \\"PipelineId\\": \\"pid-12****\\",\\n \\"EnableTideResource\\": true,\\n \\"EnableErrorMonitoringInAIMaster\\": false,\\n \\"ErrorMonitoringArgs\\": \\"--enable-log-hang-detection true\\",\\n \\"EnableRDMA\\": true,\\n \\"EnableOssAppend\\": true,\\n \\"OversoldType\\": \\"AcceptQuotaOverSold\\",\\n \\"AdvancedSettings\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Driver\\": \\"535.54.03\\",\\n \\"EnableSanityCheck\\": true,\\n \\"SanityCheckArgs\\": \\"--sanity-check-timing=AfterJobFaultTolerant --sanity-check-timeout-ops=MarkJobFail\\",\\n \\"JobReservedMinutes\\": 30,\\n \\"JobReservedPolicy\\": \\"Always\\",\\n \\"EnableCPUAffinity\\": true,\\n \\"DisableEcsStockCheck\\": false,\\n \\"AllocateAllRDMADevices\\": true,\\n \\"EnableDSWDev\\": true,\\n \\"DataJuicerConfig\\": {\\n \\"ExecutionMode\\": \\"standalone\\",\\n \\"CommandType\\": \\"config\\",\\n \\"EnableResourceEstimation\\": true,\\n \\"ResourceLimit\\": {\\n \\"CPU\\": \\"2\\",\\n \\"Memory\\": \\"10Gi\\",\\n \\"GPU\\": \\"20\\"\\n }\\n },\\n \\"ModelConfig\\": {\\n \\"ModelName\\": \\"\\",\\n \\"ModelTemplate\\": {\\n \\"ModelName\\": \\"\\",\\n \\"Provider\\": \\"\\",\\n \\"Collections\\": \\"\\"\\n }\\n },\\n \\"AllowUnschedulableNodes\\": true,\\n \\"Shell\\": \\"/bin/bash\\"\\n },\\n \\"EnabledDebugger\\": false,\\n \\"IsDeleted\\": false,\\n \\"EnablePreemptibleJob\\": false,\\n \\"ResourceName\\": \\"my_resource_group\\",\\n \\"WorkingDir\\": \\"/mnt/data\\",\\n \\"UserScript\\": \\"ls \\",\\n \\"RestartTimes\\": \\"1\\",\\n \\"RequestCPU\\": 1,\\n \\"RequestMemory\\": \\"1Gi\\",\\n \\"ResourceQuotaName\\": \\"test\\",\\n \\"RequestGPU\\": \\"1\\",\\n \\"NodeCount\\": \\"1\\",\\n \\"Priority\\": 1,\\n \\"SubStatus\\": \\"Restarting\\",\\n \\"UseOversoldResource\\": false,\\n \\"ResourceType\\": \\"ECS\\",\\n \\"Accessibility\\": \\"PUBLIC\\",\\n \\"ClusterId\\": \\"****1316721349****\\",\\n \\"TenantId\\": \\"****93955616****\\",\\n \\"StatusHistory\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"StartTime\\": \\"\\",\\n \\"EndTime\\": \\"\\",\\n \\"ReasonCode\\": \\"\\",\\n \\"ReasonMessage\\": \\"\\"\\n }\\n ],\\n \\"ElasticSpec\\": {\\n \\"EnableElasticTraining\\": true,\\n \\"MinParallelism\\": 1,\\n \\"MaxParallelism\\": 8,\\n \\"AIMasterType\\": \\"\\",\\n \\"AIMasterDockerImage\\": \\"\\",\\n \\"EnablePsJobElasticWorker\\": true,\\n \\"EnableAIMaster\\": true,\\n \\"EnablePsResourceEstimate\\": true,\\n \\"EnablePsJobElasticPS\\": true,\\n \\"PSMinParallelism\\": 4,\\n \\"PSMaxParallelism\\": 10,\\n \\"ElasticStrategy\\": \\"\\",\\n \\"EnableEDP\\": true,\\n \\"EDPMaxParallelism\\": 16,\\n \\"EDPMinParallelism\\": 8\\n },\\n \\"Pods\\": [\\n {\\n \\"Type\\": \\"Worker\\",\\n \\"PodId\\": \\"dlc-20210126170216-mtl37ge7gkvdz-worker-0\\",\\n \\"PodUid\\": \\"fe846462-af2c-4521-bd6f-96787a57591d\\",\\n \\"Status\\": \\"Stopped\\",\\n \\"Ip\\": \\"10.0.1.2\\",\\n \\"GmtCreateTime\\": \\"2021-01-12T14:36:01Z\\",\\n \\"GmtStartTime\\": \\"2021-01-12T14:36:05Z\\",\\n \\"GmtFinishTime\\": \\"2021-01-12T15:36:05Z\\",\\n \\"HistoryPods\\": [\\n {\\n \\"Type\\": \\"Worker\\",\\n \\"PodId\\": \\"dlc-20210126170216-mtl37ge7gkvdz-worker-0\\",\\n \\"PodUid\\": \\"fe846462-af2c-4521-bd6f-96787a57591d\\",\\n \\"Status\\": \\"Stopped\\",\\n \\"Ip\\": \\"10.0.1.2\\",\\n \\"GmtCreateTime\\": \\"2021-01-12T14:36:01Z\\",\\n \\"GmtStartTime\\": \\"2021-01-12T14:36:05Z\\",\\n \\"GmtFinishTime\\": \\"2021-01-12T15:36:05Z\\",\\n \\"HistoryPods\\": [\\n {\\n \\"Type\\": \\"Worker\\",\\n \\"PodId\\": \\"dlc-20210126170216-mtl37ge7gkvdz-worker-0\\",\\n \\"PodUid\\": \\"fe846462-af2c-4521-bd6f-96787a57591d\\",\\n \\"Status\\": \\"Stopped\\",\\n \\"Ip\\": \\"10.0.1.2\\",\\n \\"GmtCreateTime\\": \\"2021-01-12T14:36:01Z\\",\\n \\"GmtStartTime\\": \\"2021-01-12T14:36:05Z\\",\\n \\"GmtFinishTime\\": \\"2021-01-12T15:36:05Z\\",\\n \\"HistoryPods\\": [],\\n \\"SubStatus\\": \\"\\",\\n \\"NodeName\\": \\"\\",\\n \\"PodIp\\": \\"\\",\\n \\"PodIps\\": [\\n {\\n \\"InterfaceName\\": \\"\\",\\n \\"Ip\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"SubStatus\\": \\"\\",\\n \\"NodeName\\": \\"\\",\\n \\"PodIp\\": \\"\\",\\n \\"PodIps\\": [\\n {\\n \\"InterfaceName\\": \\"\\",\\n \\"Ip\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"SubStatus\\": \\"\\",\\n \\"NodeName\\": \\"\\",\\n \\"PodIp\\": \\"\\",\\n \\"PodIps\\": [\\n {\\n \\"InterfaceName\\": \\"\\",\\n \\"Ip\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"TemplateId\\": \\"\\",\\n \\"TemplateName\\": \\"\\",\\n \\"JobReplicaStatuses\\": [\\n {\\n \\"Type\\": \\"\\",\\n \\"Active\\": 0,\\n \\"EstimatedPodCount\\": 0,\\n \\"EstimatedAutoScalingSpec\\": {\\n \\"ScalingStrategy\\": \\"\\",\\n \\"MinReplicas\\": 0,\\n \\"MaxReplicas\\": 0,\\n \\"PodsToDelete\\": [\\n \\"\\"\\n ],\\n \\"AutoscalingMetricSpec\\": {\\n \\"MetricName\\": \\"\\",\\n \\"TargetValue\\": 0,\\n \\"StabilizationWindowSeconds\\": 0,\\n \\"Tolerance\\": \\"\\"\\n }\\n },\\n \\"EstimatedResourceConfig\\": {\\n \\"CPU\\": \\"10\\",\\n \\"GPU\\": \\"3\\",\\n \\"Memory\\": \\"10Gi\\",\\n \\"SharedMemory\\": \\"5Gi\\",\\n \\"GPUType\\": \\"Tesla-V100-16G\\"\\n },\\n \\"Queuing\\": 0,\\n \\"Dequeued\\": 0,\\n \\"CurrentSpotInstanceType\\": \\"\\"\\n }\\n ],\\n \\"SchedulingStrategy\\": \\"\\",\\n \\"RetryCount\\": 0\\n }\\n ],\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<不支持/>","errorExample":""}]',
],
'ListRayHistoryServers' => [
'summary' => '列出资源RayHistoryServer',
'path' => '/api/v1/rayhistoryservers',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'WorkspaceId',
'in' => 'query',
'schema' => ['description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'required' => false, 'example' => '268'],
],
[
'name' => 'DisplayName',
'in' => 'query',
'schema' => ['description' => '任务的显示名称。', 'type' => 'string', 'required' => false, 'example' => 'test'],
],
[
'name' => 'Status',
'in' => 'query',
'schema' => ['description' => 'RayHistoryServer 状态:'."\n"
.'- Creating:创建中。'."\n"
.'- Queuing:排队中。'."\n"
.'- Running:运行中。'."\n"
.'- Stopped:已停止。'."\n"
.'- Failed:已失败。', 'type' => 'string', 'required' => false, 'example' => 'running'],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['description' => '分页查询,指定当前需要返回的页码,从1开始往后编号。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['description' => '分页查询中,指定每页返回的RayHistoryServer数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'],
],
[
'name' => 'SortBy',
'in' => 'query',
'schema' => ['description' => '按返回的以下字段排序。'."\n"
.'- DisplayName'."\n"
.'- GmtCreateTime'."\n"
.'- UserId'."\n"
.'- ResourceId'."\n"
.'- Status'."\n"
.'- GmtModifyTime', 'type' => 'string', 'required' => false, 'example' => 'GmtCreateTime'],
],
[
'name' => 'Order',
'in' => 'query',
'schema' => ['description' => '排序顺序。'."\n"
.'- desc:降序。'."\n"
.'- asc:升序。', 'type' => 'string', 'required' => false, 'example' => 'desc'],
],
[
'name' => 'ShowOwn',
'in' => 'query',
'schema' => ['description' => '是否只返回当前登录者所创建的RayHistoryServer。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'StartTime',
'in' => 'query',
'schema' => ['description' => '开始时间。', 'type' => 'string', 'required' => false, 'example' => '2020-11-08T16:00:00Z'],
],
[
'name' => 'EndTime',
'in' => 'query',
'schema' => ['description' => '查询区间的截止时间;使用任务的创建时间来过滤。', 'type' => 'string', 'required' => false, 'example' => '2020-11-09T16:00:00Z'],
],
[
'name' => 'ModifiedAfter',
'in' => 'query',
'schema' => ['description' => '按修改后时间过滤', 'type' => 'string', 'required' => false, 'example' => '2020-11-09T16:00:00Z'],
],
[
'name' => 'ResourceId',
'in' => 'query',
'schema' => ['description' => '资源组ID。如何查询专有资源组ID,详情请参见[管理资源配额](~~2651299~~)。', 'type' => 'string', 'required' => false, 'example' => 'quotaxxx'],
],
[
'name' => 'PaymentType',
'in' => 'query',
'schema' => ['description' => '付费类型。'."\n"
.'- PrePaid'."\n"
.'- PostPaid', 'type' => 'string', 'required' => false, 'example' => 'Postpaid'],
],
[
'name' => 'IdPrefix',
'in' => 'query',
'schema' => ['description' => ' ID前缀', 'type' => 'string', 'required' => false, 'example' => '按ID前缀过滤'],
],
[
'name' => 'UserIdForFilter',
'in' => 'query',
'schema' => ['description' => '按用户ID过滤', 'type' => 'string', 'required' => false, 'example' => '123456789'],
],
[
'name' => 'Username',
'in' => 'query',
'schema' => ['description' => '按用户名称过滤', 'type' => 'string', 'required' => false, 'example' => 'myusername'],
],
[
'name' => 'StoragePath',
'in' => 'query',
'schema' => ['description' => 'Ray 日志存储路径', 'type' => 'string', 'required' => false, 'example' => 'oss://bucket-test-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/tmp'],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'RequestId' => ['description' => '本次调用的请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-xxxxxxx'],
'TotalCount' => ['description' => '符合过滤条件的总任务数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
'RayHistoryServers' => [
'description' => 'RayHistoryServer列表',
'type' => 'array',
'items' => [
'description' => 'RayHistoryServer列表',
'type' => 'object',
'properties' => [
'WorkspaceId' => ['description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'example' => '153466'],
'DisplayName' => ['description' => '任务的显示名称。', 'type' => 'string', 'example' => 'AEB-RECHARGE-TASK-14478-1778466397-main-4-'],
'UserId' => ['description' => '用户ID', 'type' => 'string', 'example' => '123456789'],
'Username' => ['description' => '用户名', 'type' => 'string', 'example' => 'myusername'],
'TenantId' => ['description' => '租户ID。', 'type' => 'string', 'example' => '1335237941080704'],
'RayHistoryServerId' => ['description' => '创建的 Ray History Server ID。', 'type' => 'string', 'example' => 'rhsxxx'],
'RayHistoryServerUrl' => ['description' => 'Ray Dashboard URL。', 'type' => 'string', 'example' => 'https://rhsxxx-dashboard.dsw-gateway-cn-wulanchabu.data.aliyun.com/'],
'StoragePath' => ['description' => 'Ray 日志存储路径', 'type' => 'string', 'example' => 'oss://bucket-test-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/tmp'],
'ResourceId' => ['description' => '资源组ID。如何查询专有资源组ID,详情请参见[管理资源配额](~~2651299~~)。', 'type' => 'string', 'example' => 'quotazoqd53w0q75'],
'ResourceName' => ['description' => '作业运行的资源名称。', 'type' => 'string', 'example' => 'OWNER_REPO'],
'EcsSpec' => ['description' => '公共资源组的硬件规格,请访问[PAI-DLC计费说明](~~171758~~)获取详细规格列表。>不同规格的价格会有区别。>', 'type' => 'string', 'example' => 'ecs.g6.xlarge'],
'Accessibility' => ['description' => '作业的可见性,取值如下:'."\n"
.'- PUBLIC:在此工作空间中,对所有人可见。'."\n"
.'- PRIVATE(默认值):在此工作空间中,仅对您和管理员可见。', 'type' => 'string', 'example' => 'PUBLIC'],
'Status' => ['description' => 'Tensorboard状态:'."\n"
.'- Creating:创建中。'."\n"
.'- Running:运行中。'."\n"
.'- Stopped:已停止。'."\n"
.'- Succeeded:已成功。'."\n"
.'- Failed:已失败。', 'type' => 'string', 'example' => 'Created'],
'ReasonCode' => ['description' => '状态详情码。', 'type' => 'string', 'example' => 'InvalidParameter'],
'ReasonMessage' => ['description' => '状态详情。', 'type' => 'string', 'example' => 'PyTorchJob dlc1tx4b9lw3ntb9 is running.'],
'GmtCreateTime' => ['description' => '作业创建时间, UTC格式。', 'type' => 'string', 'example' => '2025-12-30T02:43:52Z'],
'GmtModifyTime' => ['description' => '最后修改时间(UTC)。', 'type' => 'string', 'example' => '2026-05-19T04:05:46Z'],
'GmtFinishTime' => ['description' => '结束时间(UTC)', 'type' => 'string', 'example' => '2026-01-27T09:17:11Z'],
'MaxRuntimeMinutes' => ['description' => '最大运行时长。', 'type' => 'integer', 'format' => 'int32', 'example' => '1000'],
],
],
],
],
'description' => '',
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '排列 RayHsitoryServer',
'description' => '请确保在使用该接口前,已充分了解PAI-DLC产品的收费方式和[价格](~~171758~~)。'."\n"
.'>CreateJob接口参数总长度(包含系统生成的参数)不能超过65536个字节,>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'list',
'ramAction' => [
'action' => 'paidlc:ListRayHistoryServers',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-xxxxxxx\\",\\n \\"TotalCount\\": 1,\\n \\"RayHistoryServers\\": [\\n {\\n \\"WorkspaceId\\": \\"153466\\",\\n \\"DisplayName\\": \\"AEB-RECHARGE-TASK-14478-1778466397-main-4-\\",\\n \\"UserId\\": \\"123456789\\",\\n \\"Username\\": \\"myusername\\",\\n \\"TenantId\\": \\"1335237941080704\\",\\n \\"RayHistoryServerId\\": \\"rhsxxx\\",\\n \\"RayHistoryServerUrl\\": \\"https://rhsxxx-dashboard.dsw-gateway-cn-wulanchabu.data.aliyun.com/\\",\\n \\"StoragePath\\": \\"oss://bucket-test-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/tmp\\",\\n \\"ResourceId\\": \\"quotazoqd53w0q75\\",\\n \\"ResourceName\\": \\"OWNER_REPO\\",\\n \\"EcsSpec\\": \\"ecs.g6.xlarge\\",\\n \\"Accessibility\\": \\"PUBLIC\\",\\n \\"Status\\": \\"Created\\",\\n \\"ReasonCode\\": \\"InvalidParameter\\",\\n \\"ReasonMessage\\": \\"PyTorchJob dlc1tx4b9lw3ntb9 is running.\\",\\n \\"GmtCreateTime\\": \\"2025-12-30T02:43:52Z\\",\\n \\"GmtModifyTime\\": \\"2026-05-19T04:05:46Z\\",\\n \\"GmtFinishTime\\": \\"2026-01-27T09:17:11Z\\",\\n \\"MaxRuntimeMinutes\\": 1000\\n }\\n ]\\n}","type":"json"}]',
],
'ListTensorboards' => [
'path' => '/api/v1/tensorboards',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
[
'APP' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '20382',
'abilityTreeNodes' => ['FEATURElearnVD2RKE'],
],
'parameters' => [
[
'name' => 'Verbose',
'in' => 'query',
'schema' => ['title' => '是否显示详情', 'description' => '是否显示详情。'."\n"
.'- true:显示详情。'."\n"
.'- false:不显示详情。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'WorkspaceId',
'in' => 'query',
'schema' => ['title' => '工作空间ID', 'description' => '工作空间ID。根据工作空间ID来获取Tensorboard列表。参见[ListWorkspaces](~~449124~~)获取工作空间ID。', 'type' => 'string', 'required' => false, 'example' => '380'],
],
[
'name' => 'SourceType',
'in' => 'query',
'schema' => ['description' => '数据来源。目前仅支持DLC训练任务,即job。', 'type' => 'string', 'required' => false, 'example' => 'job'],
],
[
'name' => 'SourceId',
'in' => 'query',
'schema' => ['description' => '数据来源ID。参见[ListJobs](~~459676~~)获取任务ID。', 'type' => 'string', 'required' => false, 'example' => 'dlc-xxxxxx'],
],
[
'name' => 'DisplayName',
'in' => 'query',
'schema' => ['title' => '展示名称', 'description' => 'Tensorboard展示名称。', 'type' => 'string', 'required' => false, 'example' => 'TestTensorboard'],
],
[
'name' => 'Status',
'in' => 'query',
'schema' => ['title' => '根据状态过滤', 'description' => 'Tensorboard状态:'."\n"
.'- Creating:创建中。'."\n"
.'- Running:运行中。'."\n"
.'- Stopped:已停止。'."\n"
.'- Succeeded:已成功。'."\n"
.'- Failed:已失败。', 'type' => 'string', 'required' => false, 'example' => 'Running'],
],
[
'name' => 'StartTime',
'in' => 'query',
'schema' => ['title' => '起始时间', 'description' => '查询区间的起始时间。使用Tensorboard的创建UTC时间来过滤。若为空,则默认为当前时间的7天之前。', 'type' => 'string', 'required' => false, 'example' => '2020-11-08T16:00:00Z'],
],
[
'name' => 'EndTime',
'in' => 'query',
'schema' => ['title' => '截止时间', 'description' => '查询区间的截止时间。使用Tensorboard的创建UTC时间来过滤。若为空,则默认为当前时间。', 'type' => 'string', 'required' => false, 'example' => '2020-11-09T14:45:00Z'],
],
[
'name' => 'SortBy',
'in' => 'query',
'schema' => ['title' => '按返回字段排序', 'description' => '按返回的以下字段排序。'."\n"
.'- DisplayName:任务名称。'."\n"
.'- GmtCreateTime:任务创建时间。', 'type' => 'string', 'required' => false, 'example' => 'GmtCreateTime'],
],
[
'name' => 'PageNumber',
'in' => 'query',
'schema' => ['title' => '当前页', 'description' => '分页查询,指定当前需要返回的页码,起始值为1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '1', 'example' => '1', 'default' => '1'],
],
[
'name' => 'PageSize',
'in' => 'query',
'schema' => ['title' => '每页返回的作业数', 'description' => '分页查询中,指定每页返回的Tensorboard数量。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '50', 'default' => '10'],
],
[
'name' => 'Order',
'in' => 'query',
'schema' => ['title' => '排序顺序', 'description' => '排序顺序。'."\n"
.'- desc:降序。'."\n"
.'- asc:升序。', 'type' => 'string', 'required' => false, 'example' => 'desc'],
],
[
'name' => 'JobId',
'in' => 'query',
'schema' => ['title' => 'JobId', 'description' => '根据DLC任务ID来过滤Tensorboard任务。参见[ListJobs](~~459676~~)获取任务ID。', 'type' => 'string', 'required' => false, 'example' => 'dlc-xxx'],
],
[
'name' => 'TensorboardId',
'in' => 'query',
'schema' => ['title' => 'TensorboardId', 'description' => '根据Tensorboard ID,来过滤Tensorboard列表。', 'type' => 'string', 'required' => false, 'example' => 'tensorboard-xxx'],
],
[
'name' => 'ShowOwn',
'in' => 'query',
'schema' => ['title' => '是否只返回当前登录者所创建的Tensorboard', 'description' => '是否只返回当前登录者所创建的Tensorboard。', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'true'],
],
[
'name' => 'PaymentType',
'in' => 'query',
'schema' => ['description' => 'Tensorboard任务的付费类型。'."\n"
.'- Free代表使用了免费资源的Tensorboard任务。'."\n"
.'- Postpaid代表使用了后付费资源的Tensorboard任务。', 'type' => 'string', 'required' => false, 'example' => 'Postpaid'],
],
[
'name' => 'UserId',
'in' => 'query',
'schema' => ['description' => '用户ID。', 'type' => 'string', 'required' => false, 'example' => '161****3000'],
],
[
'name' => 'Username',
'in' => 'query',
'schema' => ['description' => '用户名。', 'type' => 'string', 'required' => false, 'example' => 'she****mo'],
],
[
'name' => 'QuotaId',
'in' => 'query',
'schema' => ['description' => '资源配额ID。'."\n"
.'> - 当前仅白名单用户可以使用资源配额资源创建Tensorboard任务,若需要使用该功能,请和我们联系。'."\n"
.'> - 当前仅当Tensorboard任务使用资源配额的资源时,该值有效。', 'type' => 'string', 'required' => false, 'example' => 'quota12***'."\n"],
],
[
'name' => 'Accessibility',
'in' => 'query',
'schema' => ['description' => '任务的可见性。'."\n"
.'- PUBLIC:在此工作空间中,对所有人可见。'."\n"
.'- PRIVATE:在此工作空间中,仅对您和管理员可见。', 'type' => 'string', 'required' => false, 'example' => 'PRIVATE'],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '返回结果。',
'type' => 'object',
'properties' => [
'Tensorboards' => [
'title' => 'Tensorboard 列表',
'description' => 'Tensorboard列表及详情。',
'type' => 'array',
'items' => ['description' => 'Tensorboard详情。', '$ref' => '#/components/schemas/Tensorboard'],
],
'TotalCount' => ['title' => '符合条件的数据源总数量', 'description' => '符合条件的数据源总数量。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '查询Tensorboard列表',
'summary' => '查询已创建的Tensorboard列表。',
'changeSet' => [
['createdAt' => '2024-07-11T11:23:57.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-06-06T07:48:17.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-03-28T07:37:35.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2023-08-03T11:01:35.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTensorboards'],
],
],
'ramActions' => [
[
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:ListTensorboards',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"Tensorboards\\": [\\n {\\n \\"TensorboardId\\": \\"tensorboard-xxx\\",\\n \\"TensorboardUrl\\": \\"http://xxxxxx\\",\\n \\"Status\\": \\"running\\",\\n \\"Duration\\": \\"60\\",\\n \\"GmtCreateTime\\": \\"2021-01-12T14:35:00Z\\",\\n \\"GmtModifyTime\\": \\"2021-01-12T14:36:00Z\\",\\n \\"GmtFinishTime\\": \\"null\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"DisplayName\\": \\"test\\",\\n \\"DataSourceId\\": \\"datasource-test\\",\\n \\"SummaryPath\\": \\"/root/data\\",\\n \\"UserId\\": \\"lycxxxxx\\",\\n \\"Username\\": \\"tensorboard.pai\\",\\n \\"ReasonCode\\": \\"\\\\\\"\\\\\\"\\",\\n \\"ReasonMessage\\": \\"\\\\\\"\\\\\\"\\",\\n \\"JobId\\": \\"dlc-20210114104214-vf9lowjt3pso\\",\\n \\"TensorboardDataSources\\": [\\n {\\n \\"DirectoryName\\": \\"dlcJobName\\",\\n \\"Name\\": \\"dlcJobName\\",\\n \\"Id\\": \\"d-vf2fdhxxxxxx\\",\\n \\"DataSourceType\\": \\"OSS\\",\\n \\"Uri\\": \\"oss://examplebucket.oss-cn-shanghai-internal.aliyuncs.com/\\",\\n \\"SourceType\\": \\"datasource\\",\\n \\"SummaryPath\\": \\"/tensorboard/run1\\",\\n \\"FullSummaryPath\\": \\"oss://xxxxx/tensorboard/run1\\"\\n }\\n ],\\n \\"TensorboardSpec\\": {\\n \\"VpcId\\": \\"vpc-xxxx\\",\\n \\"EcsType\\": \\"ecs.g6.large\\",\\n \\"SecurityGroupId\\": \\"sg-xxxxx\\",\\n \\"SwitchId\\": \\"vsw-xxxx\\"\\n },\\n \\"QuotaId\\": \\"quota12***\\",\\n \\"Priority\\": \\"1\\",\\n \\"QuotaName\\": \\"dlc-quota\\",\\n \\"Accessibility\\": \\"PRIVATE\\"\\n }\\n ],\\n \\"TotalCount\\": 100,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"\\n \\n 100\\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\n","errorExample":""}]',
],
'SetJobTemplateDefaultVersion' => [
'summary' => '设置模板默认版本。',
'path' => '/api/v1/jobtemplates/{TemplateId}/defaultversion',
'methods' => ['put'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'TemplateId',
'in' => 'path',
'schema' => ['title' => '模板 ID', 'description' => '模板 ID', 'type' => 'string', 'required' => true, 'example' => 'tplmceolmf2****', 'maxLength' => 128],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求Body参数。',
'type' => 'object',
'properties' => [
'Version' => ['title' => '目标版本号', 'description' => '目标版本号', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'minimum' => '1', 'example' => '2'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'DefaultVersion' => ['title' => '当前默认版本号', 'description' => '当前默认版本号', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
'GmtModifyTime' => ['title' => '修改时间', 'description' => '修改时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2021-01-12T14:36:00Z'],
'RequestId' => ['title' => '请求 ID', 'description' => '请求 ID', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-xxxxxxx'],
],
'description' => '',
],
],
],
'title' => '设置任务模板默认版本',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DefaultVersion\\": 2,\\n \\"GmtModifyTime\\": \\"2021-01-12T14:36:00Z\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-xxxxxxx\\"\\n}","type":"json"}]',
],
'StartRayHistoryServer' => [
'summary' => '启动 Ray History Server',
'path' => '/api/v1/rayhistoryservers/{RayHistoryServerId}/start',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'RayHistoryServerId',
'in' => 'path',
'schema' => ['description' => '请求的 Ray History Server ID。', 'type' => 'string', 'required' => false, 'example' => 'rhsxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '启动 RayHistoryServer',
'description' => '请确保在使用该接口前,已充分了解PAI-DLC产品的收费方式和[价格](~~171758~~)。'."\n"
.'>CreateJob接口参数总长度(包含系统生成的参数)不能超过65536个字节,>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
],
'StartTensorboard' => [
'path' => '/api/v1/tensorboards/{TensorboardId}/start',
'methods' => ['put'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '40265',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'WorkspaceId',
'in' => 'query',
'schema' => ['title' => '工作空间ID', 'description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'required' => false, 'example' => '380'],
],
[
'name' => 'TensorboardId',
'in' => 'path',
'schema' => ['title' => 'Tensorboad Id', 'description' => 'Tensorboard ID。如何获取Tensorboard ID,请参见[ListTensorboards](~~459689~~)。', 'type' => 'string', 'required' => true, 'example' => 'tensorboard-20210114104214-vf9lowjt3pso', 'maxLength' => 256, 'minLength' => 1],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'TensorboardId' => ['title' => 'Tensorboad Id', 'description' => 'Tensorboard ID。', 'type' => 'string', 'example' => 'tensorboard-20210114104214-vf9lowjt3pso'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
'description' => '',
],
],
],
'title' => '启动Tensorboard',
'summary' => '启动一个Tensorboard。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StartTensorboard'],
],
],
'ramActions' => [],
'responseDemo' => '[{"type":"json","example":"{\\n \\"TensorboardId\\": \\"tensorboard-20210114104214-vf9lowjt3pso\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"\\n tensorboard-20210114104214-vf9lowjt3pso\\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\n","errorExample":""}]',
],
'StopJob' => [
'path' => '/api/v1/jobs/{JobId}/stop',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '13123',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['title' => '作业Id', 'description' => '任务ID。如何获取任务ID,请参见[ListJobs](~~459676~~)。', 'type' => 'string', 'required' => false, 'example' => 'dlc-20210126170216-xxxxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '返回内容。',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业Id', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc-20210126170216-xxxxxxx'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-xxxxxx'],
],
],
],
],
'title' => '停止任务',
'summary' => '停止一个正在运行的任务。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StopJob'],
],
],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'paidlc:StopJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc-20210126170216-xxxxxxx\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-xxxxxx\\"\\n}","errorExample":""},{"type":"xml","example":"<不支持/>","errorExample":""}]',
],
'StopRayHistoryServer' => [
'path' => '/api/v1/rayhistoryservers/{RayHistoryServerId}/stop',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'RayHistoryServerId',
'in' => 'path',
'schema' => ['description' => '请求的 Ray History Server ID。', 'type' => 'string', 'required' => false, 'example' => 'rhsxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '停止 RayHistoryServer',
'summary' => '停止 Ray History Server',
'description' => '请确保在使用该接口前,已充分了解PAI-DLC产品的收费方式和[价格](~~171758~~)。'."\n"
.'>CreateJob接口参数总长度(包含系统生成的参数)不能超过65536个字节,>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
],
'StopTensorboard' => [
'path' => '/api/v1/tensorboards/{TensorboardId}/stop',
'methods' => ['put'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '40266',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'WorkspaceId',
'in' => 'query',
'schema' => ['title' => '工作空间ID', 'description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'required' => false, 'example' => '380'],
],
[
'name' => 'TensorboardId',
'in' => 'path',
'schema' => ['title' => 'Tensorboad Id', 'description' => 'Tensorboard ID。如何获取Tensorboard ID,请参见[ListTensorboards](~~459689~~)。', 'type' => 'string', 'required' => true, 'example' => 'tensorboard-20210114104214-vf9lowjt3pso', 'maxLength' => 256, 'minLength' => 1],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'TensorboardId' => ['title' => 'Tensorboad Id', 'description' => 'Tensorboard ID。', 'type' => 'string', 'example' => 'tensorboard-20210114104214-xxxxxxxx'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
'description' => '',
],
],
],
'title' => '停止Tensorboard',
'summary' => '停止一个Tensorboard。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StopTensorboard'],
],
],
'ramActions' => [],
'responseDemo' => '[{"type":"json","example":"{\\n \\"TensorboardId\\": \\"tensorboard-20210114104214-xxxxxxxx\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"\\n tensorboard-20210114104214-xxxxxxxx\\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\n","errorExample":""}]',
],
'UpdateJob' => [
'path' => '/api/v1/jobs/{JobId}',
'methods' => ['put'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeCode' => '119379',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'JobId',
'in' => 'path',
'schema' => ['title' => '作业ID', 'description' => '任务ID。如何获取任务ID,请参见[ListJobs](~~459676~~)。', 'type' => 'string', 'required' => false, 'example' => 'dlc*************'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '任务配置。',
'type' => 'object',
'properties' => [
'Priority' => ['title' => '设置优先级', 'description' => '任务的优先级,值的范围是1~9:'."\n"
.'- 1为最低优先级。'."\n"
.'- 9为最高优先级。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'],
'Accessibility' => ['description' => '任务的可见性只可以放大不能缩小,取值如下:'."\n"
.'- PUBLIC:在此工作空间中,对所有人可见。', 'type' => 'string', 'required' => false, 'example' => 'PUBLIC'],
'JobSpecs' => [
'title' => '任务规格定义',
'description' => '任务规格定义',
'type' => 'array',
'items' => ['required' => false, '$ref' => '#/components/schemas/JobSpec', 'description' => ''],
'required' => false,
],
'Description' => ['type' => 'string', 'required' => false, 'description' => ''],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => '返回内容。',
'type' => 'object',
'properties' => [
'JobId' => ['title' => '作业ID', 'description' => '任务ID。', 'type' => 'string', 'example' => 'dlc*************'],
'RequestId' => ['title' => '请求ID', 'description' => '请求ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
],
],
],
'title' => '更新任务配置',
'summary' => '更新一个任务的配置信息,例如修改一个排队中任务的优先级。',
'changeSet' => [
['createdAt' => '2025-11-10T06:08:17.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateJob'],
],
],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'paidlc:UpdateJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"JobId\\": \\"dlc*************\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"< 不支持 />","errorExample":""}]',
],
'UpdateJobTemplate' => [
'path' => '/api/v1/jobtemplates/{TemplateId}',
'methods' => ['put'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATURElearnQJXF95'],
],
'parameters' => [
[
'name' => 'TemplateId',
'in' => 'path',
'schema' => ['title' => '模板 ID', 'description' => '任务模板的唯一标识', 'type' => 'string', 'required' => true, 'example' => 'tplmceolmf2****', 'maxLength' => 128],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求Body参数。',
'type' => 'object',
'properties' => [
'TemplateName' => ['title' => '模板名称', 'description' => '任务模板的名称', 'type' => 'string', 'required' => false, 'example' => 'job-template-example-1778047**** '],
'Description' => ['title' => '模板描述', 'description' => '任务模板的描述信息', 'type' => 'string', 'required' => false, 'example' => ' '."\n"
.'Template description'."\n"],
'Metadata' => ['title' => '自定义元数据', 'description' => '用户自定义的键值对元数据', 'type' => 'object', 'required' => false, 'example' => '{}'],
'Content' => ['title' => '模板内容', 'description' => '任务模板的配置内容,支持 CreateJob 接口的所有参数字段,以 JSON 格式传入。提供时会创建新版本。', 'type' => 'string', 'required' => false, 'example' => '{\\"WorkspaceId\\":\\"15****05\\",\\"JobType\\":\\"PyTorchJob\\",\\"UserCommand\\":\\"echo hello\\",\\"JobSpecs\\":[{\\"Type\\":\\"Worker\\",\\"PodCount\\":1,\\"Image\\":\\"dsw-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai/pytorch:2.8.0-gpu-py313-cu129-ubuntu22.04-3995b779-1764361782\\",\\"EcsSpec\\":\\"ecs.gn7i-c8g1.2xlarge\\"}],\\"ResourceType\\":\\"ECS\\",\\"_ResourcePaymentType\\":\\"PostPaid\\",\\"CredentialConfig\\":{\\"EnableCredentialInject\\":false},\\"Accessibility\\":\\"PRIVATE\\",\\"Settings\\":{\\"JobReservedMinutes\\":0,\\"Tags\\":{}}} '],
'Constraints' => ['title' => '约束规则', 'description' => '字段约束规则。Key 为 JSONPath 表达式,Value 为约束类型:locked(锁定不可覆盖)、overridable(可覆盖)、required(必填)。需与 Content 同时提供,不允许单独更新。', 'type' => 'object', 'required' => false, 'example' => '{\\"JobSpecs[0].Image\\":\\"locked\\",\\"UserCommand\\":\\"locked\\",\\"JobType\\":\\"locked\\"}'],
'SetAsDefault' => ['title' => '是否设为默认版本', 'description' => '当创建了新版本时,是否将新版本设为默认版本。', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'false'],
'version' => ['description' => '无效字段', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '无效字段'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Version' => ['title' => '版本号', 'description' => '版本号', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
'VersionCreated' => ['title' => '是否创建了新版本', 'description' => '是否创建了新版本', 'type' => 'boolean', 'example' => 'true'],
'DefaultVersion' => ['title' => '默认版本号', 'description' => '当前使用的默认版本号', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
'GmtModifyTime' => ['title' => '更新时间', 'description' => '模板的最后修改时间', 'type' => 'string', 'format' => 'iso8601', 'example' => '2021-01-12T14:36:00Z'],
'RequestId' => ['title' => '请求 ID', 'description' => '本次请求的 ID,用于诊断和答疑。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-xxxxxxx'],
],
'description' => '',
],
],
],
'title' => '更新任务模板',
'summary' => '更新任务模板。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'paidlc:UpdateJobTemplate',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Version\\": 2,\\n \\"VersionCreated\\": true,\\n \\"DefaultVersion\\": 2,\\n \\"GmtModifyTime\\": \\"2021-01-12T14:36:00Z\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-xxxxxxx\\"\\n}","type":"json"}]',
],
'UpdateTensorboard' => [
'path' => '/api/v1/tensorboards/{TensorboardId}',
'methods' => ['put'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'abilityTreeCode' => '40264',
'abilityTreeNodes' => ['FEATURElearnWA9VRC'],
],
'parameters' => [
[
'name' => 'WorkspaceId',
'in' => 'query',
'schema' => ['title' => '工作空间ID', 'description' => '工作空间ID。如何获取工作空间ID,请参见[ListWorkspaces](~~449124~~)。', 'type' => 'string', 'required' => false, 'example' => '380'],
],
[
'name' => 'TensorboardId',
'in' => 'path',
'schema' => ['title' => 'Tensorboad Id', 'description' => 'Tensorboard ID。如何获取Tensorboard ID,请参见[ListTensorboards](~~459689~~)。', 'type' => 'string', 'required' => true, 'example' => 'tensorboard-20210114104214-vf9lowjt3pso', 'maxLength' => 256, 'minLength' => 1],
],
[
'name' => 'MaxRunningTimeMinutes',
'in' => 'query',
'schema' => ['title' => 'MaxRunningTimeMinutes', 'description' => '最长运行时长,单位为:分钟。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '300'],
],
[
'name' => 'Accessibility',
'in' => 'query',
'schema' => ['description' => '任务的可见性,取值如下:'."\n"
.'- PUBLIC:在此工作空间中,对所有人可见。'."\n"
.'- PRIVATE:在此工作空间中,仅对您和管理员可见。', 'type' => 'string', 'required' => false, 'example' => 'PRIVATE'],
],
[
'name' => 'Priority',
'in' => 'query',
'schema' => ['type' => 'string', 'required' => false, 'description' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'TensorboardId' => ['title' => 'Tensorboad Id', 'description' => 'Tensorboard ID。', 'type' => 'string', 'example' => 'tensorboard-20210114104214-xxxxxxxx'],
'RequestId' => ['title' => '请求Id', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'],
],
'description' => '',
],
],
],
'title' => '更新Tensorboard',
'summary' => '更新一个Tensorboard。',
'changeSet' => [
['createdAt' => '2024-11-18T09:25:05.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2024-08-22T09:59:42.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateTensorboard'],
],
],
'ramActions' => [
[
'operationType' => 'update',
'ramAction' => [
'action' => 'paidlc:UpdateTensorboard',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"TensorboardId\\": \\"tensorboard-20210114104214-xxxxxxxx\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"\\n tensorboard-20210114104214-xxxxxxxx\\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\n","errorExample":""}]',
],
],
'endpoints' => [
['regionId' => 'cn-shenzhen', 'regionName' => '华南1(深圳)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.cn-shenzhen.aliyuncs.com', 'endpoint' => 'pai-dlc.cn-shenzhen.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.cn-shenzhen.aliyuncs.com'],
['regionId' => 'cn-wulanchabu', 'regionName' => '华北6(乌兰察布)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.cn-wulanchabu.aliyuncs.com', 'endpoint' => 'pai-dlc.cn-wulanchabu.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.cn-wulanchabu.aliyuncs.com'],
['regionId' => 'cn-beijing', 'regionName' => '华北2(北京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.cn-beijing.aliyuncs.com', 'endpoint' => 'pai-dlc.cn-beijing.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.cn-beijing.aliyuncs.com'],
['regionId' => 'ap-northeast-1', 'regionName' => '日本(东京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.ap-northeast-1.aliyuncs.com', 'endpoint' => 'pai-dlc.ap-northeast-1.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.ap-northeast-1.aliyuncs.com'],
['regionId' => 'cn-shanghai', 'regionName' => '华东2(上海)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.cn-shanghai.aliyuncs.com', 'endpoint' => 'pai-dlc.cn-shanghai.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.cn-shanghai.aliyuncs.com'],
['regionId' => 'cn-guangzhou', 'regionName' => '华南3(广州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.cn-guangzhou.aliyuncs.com', 'endpoint' => 'pai-dlc.cn-guangzhou.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.cn-guangzhou.aliyuncs.com'],
['regionId' => 'cn-hongkong', 'regionName' => '中国香港', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.cn-hongkong.aliyuncs.com', 'endpoint' => 'pai-dlc.cn-hongkong.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.cn-hongkong.aliyuncs.com'],
['regionId' => 'ap-southeast-1', 'regionName' => '新加坡', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.ap-southeast-1.aliyuncs.com', 'endpoint' => 'pai-dlc.ap-southeast-1.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.ap-southeast-1.aliyuncs.com'],
['regionId' => 'ap-southeast-3', 'regionName' => '马来西亚(吉隆坡)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.ap-southeast-3.aliyuncs.com', 'endpoint' => 'pai-dlc.ap-southeast-3.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.ap-southeast-3.aliyuncs.com'],
['regionId' => 'ap-southeast-5', 'regionName' => '印度尼西亚(雅加达)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.ap-southeast-5.aliyuncs.com', 'endpoint' => 'pai-dlc.ap-southeast-5.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.ap-southeast-5.aliyuncs.com'],
['regionId' => 'ap-southeast-7', 'regionName' => '泰国(曼谷)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.ap-southeast-7.aliyuncs.com', 'endpoint' => 'pai-dlc.ap-southeast-7.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.ap-southeast-7.aliyuncs.com'],
['regionId' => 'cn-hangzhou', 'regionName' => '华东1(杭州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.cn-hangzhou.aliyuncs.com', 'endpoint' => 'pai-dlc.cn-hangzhou.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.cn-hangzhou.aliyuncs.com'],
['regionId' => 'ap-southeast-8', 'regionName' => '马来西亚(柔佛州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'pai-dlc.ap-southeast-8.aliyuncs.com', 'endpoint' => 'pai-dlc.ap-southeast-8.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.ap-southeast-8.aliyuncs.com'],
['regionId' => 'us-west-1', 'regionName' => '美国(硅谷)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'pai-dlc.us-west-1.aliyuncs.com', 'endpoint' => 'pai-dlc.us-west-1.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.us-west-1.aliyuncs.com'],
['regionId' => 'us-east-1', 'regionName' => '美国(弗吉尼亚)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'pai-dlc.us-east-1.aliyuncs.com', 'endpoint' => 'pai-dlc.us-east-1.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.us-east-1.aliyuncs.com'],
['regionId' => 'us-southeast-1', 'regionName' => '美国(亚特兰大)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'pai-dlc.us-southeast-1.aliyuncs.com', 'endpoint' => 'pai-dlc.us-southeast-1.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.us-southeast-1.aliyuncs.com'],
['regionId' => 'eu-central-1', 'regionName' => '德国(法兰克福)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'pai-dlc.eu-central-1.aliyuncs.com', 'endpoint' => 'pai-dlc.eu-central-1.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.eu-central-1.aliyuncs.com'],
['regionId' => 'me-east-1', 'regionName' => '阿联酋(迪拜)', 'areaId' => 'middleEast', 'areaName' => '中东', 'public' => 'pai-dlc.me-east-1.aliyuncs.com', 'endpoint' => 'pai-dlc.me-east-1.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.me-east-1.aliyuncs.com'],
['regionId' => 'cn-shanghai-finance-1', 'regionName' => '华东2 金融云', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'pai-dlc.cn-shanghai-finance-1.aliyuncs.com', 'endpoint' => 'pai-dlc.cn-shanghai-finance-1.aliyuncs.com', 'vpc' => 'pai-dlc-vpc.cn-shanghai-finance-1.aliyuncs.com'],
],
'errorCodes' => [
['code' => 'InternalError', 'message' => 'The request processing has failed due to some unknown error.', 'http_code' => 500, 'description' => '内部错误。建议重试,如果多次重试报错请提交工单。'],
],
'changeSet' => [
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJob'],
],
'createdAt' => '2025-11-18T03:50:52.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'UpdateJob'],
],
'createdAt' => '2025-11-10T06:08:35.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJob'],
],
'createdAt' => '2025-10-23T08:44:46.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListJobs'],
],
'createdAt' => '2025-10-17T07:04:05.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListJobs'],
],
'createdAt' => '2025-01-09T12:43:22.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateJob'],
],
'createdAt' => '2024-12-18T06:03:34.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListJobs'],
],
'createdAt' => '2024-11-21T12:37:00.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'UpdateTensorboard'],
],
'createdAt' => '2024-11-18T09:25:18.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJob'],
],
'createdAt' => '2024-10-23T02:31:53.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'DeleteJob'],
],
'createdAt' => '2024-08-22T10:40:26.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'UpdateTensorboard'],
],
'createdAt' => '2024-08-22T10:01:45.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateJob'],
],
'createdAt' => '2024-08-09T08:19:50.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateTensorboard'],
['description' => '请求参数发生变更', 'api' => 'ListTensorboards'],
],
'createdAt' => '2024-07-11T11:25:05.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJob'],
],
'createdAt' => '2024-07-09T04:18:10.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateJob'],
],
'createdAt' => '2024-07-05T02:28:40.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListTensorboards'],
],
'createdAt' => '2024-06-06T07:48:57.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListJobs'],
],
'createdAt' => '2024-04-09T02:18:50.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateTensorboard'],
['description' => '请求参数发生变更', 'api' => 'ListTensorboards'],
],
'createdAt' => '2024-03-28T07:38:15.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'GetJobSanityCheckResult'],
['description' => '请求参数发生变更', 'api' => 'ListJobSanityCheckResults'],
],
'createdAt' => '2024-02-26T03:31:30.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJob'],
['description' => '请求参数发生变更', 'api' => 'ListEcsSpecs'],
],
'createdAt' => '2024-01-24T10:35:25.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListJobs'],
],
'createdAt' => '2024-01-12T05:44:09.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'GetJobSanityCheckResult'],
],
'createdAt' => '2024-01-08T08:10:08.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJob'],
],
'createdAt' => '2024-01-05T02:50:55.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJob'],
],
'createdAt' => '2024-01-03T08:01:59.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListJobs'],
],
'createdAt' => '2023-12-14T10:35:51.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateJob'],
['description' => '响应参数发生变更、响应参数发生变更', 'api' => 'GetJob'],
],
'createdAt' => '2023-12-08T09:51:35.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'GetWebTerminal'],
],
'createdAt' => '2023-11-08T00:26:31.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateJob'],
],
'createdAt' => '2023-09-11T11:52:13.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'GetTensorboard'],
],
'createdAt' => '2023-08-11T05:55:33.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListTensorboards'],
],
'createdAt' => '2023-08-03T11:01:38.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetWebTerminal'],
],
'createdAt' => '2023-07-21T08:19:30.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJobEvents'],
],
'createdAt' => '2023-03-24T08:20:24.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'DeleteJob'],
],
'createdAt' => '2023-01-06T07:38:55.000Z',
'description' => 'DeleteJob API的文档更新:JobId修改为必选参数',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateJob'],
],
'createdAt' => '2022-12-27T06:55:39.000Z',
'description' => '增加对私有镜像仓库的Username/Password的配置',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListJobs'],
],
'createdAt' => '2022-11-29T12:21:37.000Z',
'description' => 'ListJobs API添加参数JobId,以支持用户通过JobId进行任务搜索的功能',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJob'],
],
'createdAt' => '2022-07-22T03:24:55.000Z',
'description' => '更新一些字段说明',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListCodeSources'],
],
'createdAt' => '2022-07-21T04:27:30.000Z',
'description' => '更新部分字段的描述信息',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'ListImages'],
],
'createdAt' => '2022-07-05T06:35:28.000Z',
'description' => 'Improve CreateJob and ListImages API',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'CreateSmartCache'],
['description' => 'OpenAPI 下线', 'api' => 'DeleteSmartCache'],
['description' => 'OpenAPI 下线', 'api' => 'GetSmartCache'],
['description' => 'OpenAPI 下线', 'api' => 'ListSmartCaches'],
['description' => 'OpenAPI 下线', 'api' => 'StopSmartCache'],
],
'createdAt' => '2022-06-16T03:00:19.000Z',
'description' => '上线',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetJob'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetPodEvents'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetPodLogs'],
['description' => '请求参数发生变更', 'api' => 'ListEcsSpecs'],
],
'createdAt' => '2022-05-13T03:11:19.000Z',
'description' => 'api 更新',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'ListDebuggerConfigs'],
['description' => '响应参数发生变更', 'api' => 'ListDebuggerConfigTemplates'],
['description' => '响应参数发生变更', 'api' => 'ListDebuggerJobs'],
],
'createdAt' => '2022-04-13T05:38:58.000Z',
'description' => '变更debugger的listdebuggerconfigtemplate、listdebuggerconfig接口中返回值为array类型',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'DeleteJobs'],
['description' => 'OpenAPI 下线', 'api' => 'StopJobs'],
],
'createdAt' => '2022-03-22T07:11:16.000Z',
'description' => '批量删除作业、批量停止作业',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'ListDebuggerConfigs'],
['description' => 'OpenAPI 下线', 'api' => 'ListDebuggerConfigTemplates'],
['description' => 'OpenAPI 下线', 'api' => 'ListDebuggerJobs'],
],
'createdAt' => '2022-03-21T01:35:07.000Z',
'description' => '上线原因为:debugger相关业务上线。POP接口新增接口:GetJobDebuggerConfigCreateDebuggerConfigCreateDebuggerJobIssueStopDebuggerJobsListDebuggerJobPodsGetDebuggerJobListDebuggerJobsGetDebuggerResultDeleteDebuggerConfigUpdateDebuggerConfigGetDebuggerConfigListDebuggerConfigsListDebuggerConfigTemplates新增结构体:DebuggerJobJobDebuggerConfigDebuggerJobIssueDebuggerResultDebuggerConfig修改接口:GetJob增加EnabledDebugger属性CreateJob增加非必填DebuggerConfigContent字段修改结构体:JobItem结构体增加EnabledDebugger属性',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'GetJobWorkflow'],
],
'createdAt' => '2022-02-15T03:27:09.000Z',
'description' => '离线混部ev_predict任务支持,获取执行flow',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'JobDispatchQuery'],
['description' => 'OpenAPI 下线', 'api' => 'JobDispatchSubmit'],
],
'createdAt' => '2022-01-11T07:47:31.000Z',
'description' => '1. DLC Quota/Job支持 潮汐资源 配置',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'GetAuthorization'],
],
'createdAt' => '2021-04-25T07:57:37.000Z',
'description' => 'API上线:RAM角色授权校验',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'GetJobMetrics'],
],
'createdAt' => '2021-04-25T07:56:39.000Z',
'description' => '已上线:作业资源监控API',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateDataSource'],
['description' => '响应参数发生变更', 'api' => 'GetDataSource'],
],
'createdAt' => '2021-04-14T07:07:20.000Z',
'description' => '在 DataSource 中添加可选参数,支持 OSS 所需的 Path、Endpoint 等信息。',
],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetJobSanityCheckResult'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetJobMetrics'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetJob'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPodEvents'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTensorboards'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWebTerminal'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPodLogs'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateJob'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteTensorboard'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StopTensorboard'],
['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StopJob'],
['threshold' => '150', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateJob'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetJobEvents'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteJob'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEcsSpecs'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTensorboardSharedUrl'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListJobSanityCheckResults'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StartTensorboard'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTensorboard'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetToken'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateTensorboard'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateTensorboard'],
['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListJobs'],
],
],
'ram' => [
'productCode' => 'PAI',
'productName' => '人工智能平台 PAI',
'ramCodes' => ['paiplugin', 'eas', 'pai', 'datasetacc', 'featurestore', 'paidlc', 'paiitag', 'paidesigner', 'paitraining', 'paiartlab', 'paicomponentmanagement'],
'ramLevel' => '操作级',
'ramConditions' => [],
'ramActions' => [
[
'apiName' => 'UpdateJobTemplate',
'description' => '更新任务模板',
'operationType' => 'update',
'ramAction' => [
'action' => 'paidlc:UpdateJobTemplate',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'DeleteTensorboard',
'description' => '删除Tensorboard',
'operationType' => 'delete',
'ramAction' => [
'action' => 'paidlc:DeleteTensorboard',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetJob',
'description' => '获取任务详情',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetJobSanityCheckResult',
'description' => '获取任务某次算力健康检测结果',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJobSanityCheckResult',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'ListRayHistoryServers',
'description' => '排列 RayHsitoryServer',
'operationType' => 'list',
'ramAction' => [
'action' => 'paidlc:ListRayHistoryServers',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'ListJobSanityCheckResults',
'description' => '获取任务所有算力健康检测结果',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:ListJobSanityCheckResults',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'StopJob',
'description' => '停止任务',
'operationType' => 'update',
'ramAction' => [
'action' => 'paidlc:StopJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'DeleteJob',
'description' => '删除任务',
'operationType' => 'delete',
'ramAction' => [
'action' => 'paidlc:DeleteJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetToken',
'description' => '获取任务分享令牌',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetToken',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetWebTerminal',
'description' => '获取容器访问HTTP链接',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetWebTerminal',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'CreateJobTemplate',
'description' => '创建任务模板',
'operationType' => 'create',
'ramAction' => [
'action' => 'paidlc:CreateJobTemplate',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetDashboard',
'description' => '获取DLC任务的Dashboard',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'CreateTensorboard',
'description' => '创建Tensorboard',
'operationType' => 'create',
'ramAction' => [
'action' => 'paidlc:CreateTensorboard',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'UpdateTensorboard',
'description' => '更新Tensorboard',
'operationType' => 'update',
'ramAction' => [
'action' => 'paidlc:UpdateTensorboard',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetJobMetrics',
'description' => '获取任务的监控数据',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJobMetrics',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetPodLogs',
'description' => '获取任务中某个节点的日志',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetPodLogs',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'StartTensorboard',
'description' => '启动Tensorboard',
'operationType' => 'update',
'ramAction' => [
'action' => 'paidlc:StartTensorboard',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'DeleteJobTemplate',
'description' => '删除任务模板',
'operationType' => 'delete',
'ramAction' => [
'action' => 'paidlc:DeleteJobTemplate',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetJobTemplate',
'description' => '获取任务模板详情',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJobTemplate',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'ListJobTemplates',
'description' => '列出任务模板',
'operationType' => 'list',
'ramAction' => [
'action' => 'paidlc:ListJobTemplates',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'CreateJob',
'description' => '创建任务',
'operationType' => 'create',
'ramAction' => [
'action' => 'paidlc:CreateJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetRayHistoryServer',
'description' => '获取 RayHistoryServer',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetRayHistoryServer',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetPodEvents',
'description' => '获取任务中某个节点的系统事件',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetPodEvents',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'ListJobs',
'description' => '获取任务列表',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:ListJobs',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetMetrics',
'description' => '获取任务指标',
'operationType' => 'none',
'ramAction' => [
'action' => 'paidlc:GetMetrics',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetJobEvents',
'description' => '获取任务的系统事件',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJobEvents',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'UpdateJob',
'description' => '更新任务配置',
'operationType' => 'update',
'ramAction' => [
'action' => 'paidlc:UpdateJob',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'ListTensorboards',
'description' => '查询Tensorboard列表',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:ListTensorboards',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetTensorboardSharedUrl',
'description' => '获得Tensorboard任务的分享链接',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetTensorboardSharedUrl',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetRayDashboard',
'description' => '获取RayDashboard',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetJob',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
[
'apiName' => 'GetTensorboard',
'description' => '获取Tensorboard详情',
'operationType' => 'get',
'ramAction' => [
'action' => 'paidlc:GetTensorboard',
'authLevel' => 'operate',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'PAI', 'resourceType' => '全部资源', 'arn' => '*'],
],
],
],
],
'resourceTypes' => [
['validationType' => 'always', 'resourceType' => 'RayHistoryServer', 'arn' => 'acs:paiplugin:{#regionId}:{#accountId}:rayhistoryserver/*'],
['validationType' => 'always', 'resourceType' => 'Job', 'arn' => 'acs:paidlc:{#regionId}:{#accountId}:job/{#JobId}'],
],
],
];