配置Workflow参数
功能介绍
参数相关的配置使用Placeholder对象来表示,以占位符的形式实现用户数据运行时配置的能力,当前支持的数据类型包括:int、str、bool、float、Enum、dict、list。开发者可根据场景需要,将节点中的相关字段(如算法超参)通过Placeholder的形式透出,支持设置默认值,供用户修改配置使用。
属性总览(Placeholder)
属性 |
描述 |
是否必填 |
数据类型 |
---|---|---|---|
name |
参数名称,需要保证全局唯一。 |
是 |
str |
placeholder_type |
参数类型,与真实数据类型的映射关系如下: PlaceholderType.INT -> int PlaceholderType.STR -> str PlaceholderType.BOOL -> bool PlaceholderType.FLOAT -> float PlaceholderType.ENUM -> Enum PlaceholderType.JSON -> dict PlaceholderType.LIST -> list
|
是 |
PlaceholderType |
default |
参数默认值,数据类型需要与placeholder_type一致。 |
否 |
Any |
placeholder_format |
支持的format格式数据,当前支持obs、flavor、train_flavor、swr、pacific。 |
否 |
str |
delay |
参数是否运行时输入,默认为“False”,在工作流启动运行前进行配置。设置为“True”,则在使用的相应节点运行时卡点配置。 |
否 |
bool |
description |
参数描述信息。 |
否 |
str |
enum_list |
参数枚举值列表,只有当参数类型为PlaceholderType.ENUM时才需要填写。 |
否 |
list |
constraint |
参数相关的约束配置,当前该字段仅支持训练规格的约束,且用户不感知。 |
否 |
dict |
required |
参数是否必填标记。
运行时前端可以不填此参数。 |
否 |
bool |
使用案例
- int类型参数
from modelarts import workflow as wf wf.Placeholder(name="placeholder_int", placeholder_type=wf.PlaceholderType.INT, default=1, description="这是一个int类型的参数")
- str类型参数
from modelarts import workflow as wf wf.Placeholder(name="placeholder_str", placeholder_type=wf.PlaceholderType.STR, default="default_value", description="这是一个str类型的参数")
- bool类型参数
from modelarts import workflow as wf wf.Placeholder(name="placeholder_bool", placeholder_type=wf.PlaceholderType.BOOL, default=True, description="这是一个bool类型的参数")
- float类型参数
from modelarts import workflow as wf wf.Placeholder(name="placeholder_float", placeholder_type=wf.PlaceholderType.FLOAT, default=0.1, description="这是一个float类型的参数")
- Enum类型参数
from modelarts import workflow as wf wf.Placeholder(name="placeholder_enum", placeholder_type=wf.PlaceholderType.ENUM, default="a", enum_list=["a", "b"], description="这是一个enum类型的参数")
- dict类型参数
from modelarts import workflow as wf wf.Placeholder(name="placeholder_dict", placeholder_type=wf.PlaceholderType.JSON, default={"key": "value"}, description="这是一个dict类型的参数")
- list类型参数
from modelarts import workflow as wf wf.Placeholder(name="placeholder_list", placeholder_type=wf.PlaceholderType.LIST, default=[1, 2], placeholder_format="int", description="这是一个list类型的参数,并且value类型为int")