华为云AI开发平台ModelArtsData_云淘科技
数据对象用于节点的输入,主要可分为以下三种类型:
真实的数据对象,在工作流构建时直接指定:
Dataset:用于定义已有的数据集,常用于数据标注,模型训练等场景
LabelTask: 用于定义已有的标注任务,常用于数据标注,数据集版本发布等场景
OBSPath:用于定义指定的OBS路径,常用于模型训练,数据集导入,模型导入等场景
ServiceData:用于定义一个已有的服务,只用于服务更新的场景
SWRImage:用于定义已有的SWR路径,常用于模型注册场景
GalleryModel:用于定义从gallery订阅的模型,常用于模型注册场景
占位符式的数据对象,在工作流运行时指定:
DatasetPlaceholder:用于定义在运行时需要确定的数据集,对应Dataset对象,常用于数据标注,模型训练等场景
LabelTaskPlaceholder:用于定义在运行时需要确定的标注任务,对应LabelTask对象,常用于数据标注,数据集版本发布等场景
OBSPlaceholder:用于定义在运行时需要确定的OBS路径,对应OBSPath对象,常用于模型训练,数据集导入,模型导入等场景
ServiceUpdatePlaceholder:用于定义在运行时需要确定的已有服务,对应ServiceData对象,只用于服务更新的场景
SWRImagePlaceholder:用于定义在运行时需要确定的SWR路径,对应SWRImage对象,常用于模型注册场景
ServiceInputPlaceholder:用于定义在运行时需要确定服务部署所需的模型相关信息,只用于服务部署及服务更新场景
DataSelector:支持多种数据类型的选择,当前仅支持在JobStep节点中使用(仅支持选择OBS或者数据集)
数据选择对象:
DataConsumptionSelector:用于在多个依赖节点的输出中选择一个有效输出作为数据输入,常用于存在条件分支的场景中(在构建工作流时未能确定数据输入来源为哪个依赖节点的输出,需根据依赖节点的实际执行情况进行自动选择)
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
dataset_name |
数据集名称 |
是 |
str |
version_name |
数据集版本名称 |
否 |
str |
示例:
example = Dataset(dataset_name = "**", version_name = "**") # 通过ModelArts的数据集,获取对应的数据集名称及相应的版本名称。
当Dataset对象作为节点的输入时,需根据业务需要自行决定是否填写version_name字段(比如LabelingStep、ReleaseDatasetStep不需要填写,JobStep必须填写)。
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
dataset_name |
数据集名称 |
是 |
str |
task_name |
标注任务名称 |
是 |
str |
示例:
example = LabelTask(dataset_name = "**", task_name = "**") # 通过ModelArts的新版数据集,获取对应的数据集名称及相应的标注任务名称
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
obs_path |
OBS路径 |
是 |
str,Storage |
示例:
example = OBSPath(obs_path = "**") # 通过对象存储服务,获取已存在的OBS路径值
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
service_id |
服务的ID |
是 |
str |
示例:
example = ServiceData(service_id = "**") # 通过ModelArts的在线服务,获取对应服务的服务ID,描述指定的在线服务。用于服务更新的场景。
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
swr_path |
容器镜像的SWR路径 |
是 |
str |
示例:
example = SWRImage(swr_path = "**") # 容器镜像地址,用于模型注册节点的输入
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
subscription_id |
订阅模型的订阅ID |
是 |
str |
version_num |
订阅模型的版本号 |
是 |
str |
示例:
example = GalleryModel(subscription_id="**", version_num="**") # 订阅的模型对象,用于模型注册节点的输入
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
name |
名称 |
是 |
str |
data_type |
数据类型 |
否 |
DataTypeEnum |
delay |
标志数据对象是否在节点运行时配置,默认为False |
否 |
bool |
default |
数据对象的默认值 |
否 |
Dataset |
示例:
example = DatasetPlaceholder(name = "**", data_type = DataTypeEnum.IMAGE_CLASSIFICATION) # 数据集对象的占位符形式,可以通过指定data_type限制数据集的数据类型
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
name |
名称 |
是 |
str |
object_type |
表示OBS对象类型,仅支持”file”或者”directory” |
是 |
str |
delay |
标志数据对象是否在节点运行时配置,默认为False |
否 |
bool |
default |
数据对象的默认值 |
否 |
OBSPath |
示例:
example = OBSPlaceholder(name = "**", object_type = "directory" ) # OBS对象的占位符形式,object_type只支持两种类型, "file" 以及 "directory"
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
name |
名称 |
是 |
str |
task_type |
表示标注任务的类型 |
否 |
LabelTaskTypeEnum |
delay |
标志数据对象是否在节点运行时配置,默认为False |
否 |
bool |
示例:
example = LabelTaskPlaceholder(name = "**") # LabelTask对象的占位符形式
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
name |
名称 |
是 |
str |
delay |
标志数据对象是否在节点运行时配置,默认为False |
否 |
bool |
示例:
example = ServiceUpdatePlaceholder(name = "**") # ServiceData对象的占位符形式,用于服务更新节点的输入
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
name |
名称 |
是 |
str |
delay |
标志数据对象是否在节点运行时配置,默认为False |
否 |
bool |
示例:
example = SWRImagePlaceholder(name = "**" ) # SWRImage对象的占位符形式,用于模型注册节点的输入
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
name |
名称 |
是 |
str |
model_name |
模型名称 |
是 |
str或者Placeholder |
model_version |
模型版本 |
否 |
str |
envs |
环境变量 |
否 |
dict |
delay |
服务部署相关信息是否在节点运行时配置,默认为True |
否 |
bool |
示例:
example = ServiceInputPlaceholder(name = "**" , model_name = "model_name") # 用于服务部署或者服务更新节点的输入
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
name |
名称 |
是 |
str |
data_type_list |
支持的数据类型列表,当前仅支持obs、dataset |
是 |
list |
delay |
标志数据对象是否在节点运行时配置,默认为False |
否 |
bool |
示例:
example = DataSelector(name = "**" ,data_type_list=["obs", "dataset"]) # 用于作业类型节点的输入
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
data_list |
依赖节点的输出数据对象列表 |
是 |
list |
示例:
example = DataConsumptionSelector(data_list=[step1.outputs["step1_output_name"].as_input(), step2.outputs["step2_output_name"].as_input()]) # 从step1以及step2中选择有效输出作为输入,当step1跳过无输出,step2执行有输出时,将step2的有效输出作为输入(需保证data_list中同时只有一个有效输出)
父主题: 核心概念
同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家