创建算法-九游平台
功能介绍
创建一个算法。
调试
您可以在中调试该接口,支持自动认证鉴权。api explorer可以自动生成sdk代码示例,并提供sdk代码示例调试功能。
uri
post /v2/{project_id}/algorithms
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
string |
用户项目id。获取方法请参见获取项目id和名称。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
metadata |
否 |
algorithmmetadata object |
算法的元数据,描述算法基本信息。 |
job_config |
否 |
algorithmjobconfig object |
算法配置信息,如启动文件等。 |
resource_requirements |
否 |
array of resourcerequirement objects |
算法资源约束。可不设置。设置后,在算法使用于训练作业时,控制台会过滤可用的公共资源池。 |
advanced_config |
否 |
algorithmadvancedconfig object |
算法高级策略:
|
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
否 |
integer |
算法uuid,创建算法时无需填写。 |
name |
是 |
string |
算法名称。限制为1-64位只含数字、字母、下划线和中划线的名称。 |
description |
否 |
string |
对算法的描述,默认为“null”,字符串的长度限制为[0, 256]。 |
workspace_id |
否 |
string |
指定算法所处的工作空间,默认值为“0”。“0” 为默认的工作空间。 |
ai_project |
否 |
string |
指定算法所属的ai项目,默认值为"default-ai-project"。ai项目已下线,无需关注。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
code_dir |
否 |
string |
算法的代码目录。如:“/usr/app/”。应与boot_file一同出现。 |
boot_file |
否 |
string |
算法的代码启动文件,需要在代码目录下。如:“/usr/app/boot.py”。应与code_dir一同出现。 |
command |
否 |
string |
自定义镜像算法的容器启动命令。 |
parameters |
否 |
array of parameters objects |
算法的运行参数。 |
inputs |
否 |
array of algorithmcreateinput objects |
算法的数据输入。 |
outputs |
否 |
array of algorithmcreateoutput objects |
算法的数据输出。 |
engine |
否 |
algorithmcreateengine object |
算法的引擎。 |
parameters_customization |
否 |
boolean |
算法是否允许创建训练作业时自定义超参。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
string |
参数名称。 |
value |
否 |
string |
参数值。 |
description |
否 |
string |
参数描述信息。 |
constraint |
否 |
parametersconstraint object |
参数属性。 |
i18n_description |
否 |
i18ndescription object |
国际化描述。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
否 |
string |
参数种类。 |
editable |
否 |
boolean |
是否可编辑。 |
required |
否 |
boolean |
是否必须。 |
sensitive |
否 |
boolean |
是否敏感。该功能暂未实现。 |
valid_type |
否 |
string |
有效种类。 |
valid_range |
否 |
array of strings |
有效范围。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
language |
否 |
string |
国际语种。 |
description |
否 |
string |
描述信息。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
string |
数据输入通道名称。 |
description |
否 |
string |
数据输入通道描述信息。 |
remote_constraints |
否 |
array of remoteconstraint objects |
数据输入约束。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
data_type |
否 |
string |
数据输入类型,支持数据存储位置(obs)、modelarts数据集两种方式。 |
attributes |
否 |
array of map |
数据输入为数据集时的相关属性。枚举值:
|
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
是 |
string |
数据输出通道名称。 |
description |
否 |
string |
数据输出通道描述信息。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
engine_id |
否 |
string |
算法选择的引擎规格id。 |
engine_name |
否 |
string |
算法选择的引擎版本名称。若填入engine_id则无需填写。 |
engine_version |
否 |
string |
算法选择的引擎版本名称。若填入engine_id则无需填写。 |
image_url |
否 |
string |
算法选择的自定义镜像地址。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
key |
否 |
string |
资源约束,可选键值如:
|
values |
否 |
array of strings |
资源约束键对应值。 |
operator |
否 |
string |
键与值关系,当前只支持in。例如flavor_type in [cpu,gpu]。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
auto_search |
否 |
autosearch object |
超参搜索策略。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
skip_search_params |
否 |
string |
需要排除的超参组合。 |
reward_attrs |
否 |
array of rewardattrs objects |
搜索指标列表。 |
search_params |
否 |
array of searchparams objects |
搜索参数。 |
algo_configs |
否 |
array of algoconfigs objects |
搜索算法配置。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
string |
指标名称。 |
mode |
否 |
string |
搜索方向。 - max指定时表示指标值越大越好; - min指定时表示指标值越小越好。 |
regex |
否 |
string |
指标正则表达式。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
string |
超参名称。 |
param_type |
否 |
string |
参数类型。 - continuous:指定时表示这个超参是连续类型的。连续类型的超参在算法使用于训练作业时,控制台显示为输入框。 - discrete:指定时表示这个超参是离散类型的。离散类型的超参在算法使用于训练作业时,控制台显示为下拉选择框架。 |
lower_bound |
否 |
string |
超参下界。 |
upper_bound |
否 |
string |
超参上界。 |
discrete_points_num |
否 |
string |
连续型超参离散化取值个数。 |
discrete_values |
否 |
array of strings |
离散型超参的取值列表。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
string |
搜索算法名称。 |
params |
否 |
array of autosearchalgoconfigparameter objects |
搜索算法参数。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
key |
否 |
string |
参数键。 |
value |
否 |
string |
参数值。 |
type |
否 |
string |
参数种类。 |
响应参数
状态码:201
参数 |
参数类型 |
描述 |
---|---|---|
metadata |
metadata object |
算法的元数据,描述算法基本信息。 |
job_config |
job_config object |
算法配置信息,如启动文件等。 |
resource_requirements |
array of resource_requirements objects |
算法资源约束,可不设置。设置后,在算法使用于训练作业时,控制台会过滤可用的公共资源池。 |
advanced_config |
advanced_config object |
算法高级策略:
|
参数 |
参数类型 |
描述 |
---|---|---|
id |
integer |
算法uuid,创建算法时无需填写。 |
name |
string |
算法名称。限制为1-64位只含数字、字母、下划线和中划线的名称。 |
description |
string |
对算法的描述,默认为“null”,字符串的长度限制为[0, 256]。 |
workspace_id |
string |
指定算法所处的工作空间,默认值为“0”。“0” 为默认的工作空间。 |
ai_project |
string |
指定算法所属的ai项目,默认值为"default-ai-project"。ai项目已下线,无需关注。 |
user_name |
string |
用户名称。 |
domain_id |
string |
用户的domainid。 |
source |
string |
算法来源类型。 |
api_version |
string |
算法api版本,标识新旧版。 |
is_valid |
string |
算法可用性。 |
state |
string |
算法状态。 |
tags |
array of map |
算法标签。 |
attr_list |
array of strings |
算法属性列表。 |
version_num |
integer |
算法版本数量,默认为0。 |
size |
integer |
算法大小。 |
create_time |
long |
算法创建时间戳。 |
update_time |
long |
算法更新时间戳。 |
参数 |
参数类型 |
描述 |
---|---|---|
code_dir |
string |
算法的代码目录。如:“/usr/app/”。应与boot_file一同出现。 |
boot_file |
string |
算法的代码启动文件,需要在代码目录下。如:“/usr/app/boot.py”。应与code_dir一同出现。 |
command |
string |
自定义镜像算法的容器启动命令。 |
parameters |
array of parameter objects |
算法的运行参数。 |
inputs |
array of inputs objects |
算法的数据输入。 |
outputs |
array of outputs objects |
算法的数据输出。 |
engine |
engine object |
算法的引擎。 |
code_tree |
array of code_tree objects |
算法的目录结构树。 |
parameters_customization |
boolean |
算法是否允许创建训练作业时自定义超参。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
string |
参数名称。 |
value |
string |
参数值。 |
description |
string |
参数描述信息。 |
constraint |
constraint object |
参数属性。 |
i18n_description |
i18n_description object |
国际化描述。 |
参数 |
参数类型 |
描述 |
---|---|---|
type |
string |
参数种类。 |
editable |
boolean |
是否可编辑。 |
required |
boolean |
是否必须。 |
sensitive |
boolean |
是否敏感。该功能暂未实现。 |
valid_type |
string |
有效种类。 |
valid_range |
array of strings |
有效范围。 |
参数 |
参数类型 |
描述 |
---|---|---|
language |
string |
国际语种,可选值如下:
|
description |
string |
国际化语种的描述信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
string |
数据输入通道名称。 |
description |
string |
数据输入通道描述信息。 |
remote_constraints |
array of remote_constraints objects |
数据输入约束。 |
参数 |
参数类型 |
描述 |
---|---|---|
data_type |
string |
数据输入类型,包括数据存储位置、数据集两种方式。 |
attributes |
array of map |
数据输入为数据集时的相关属性。枚举值:
|
参数 |
参数类型 |
描述 |
---|---|---|
name |
string |
数据输出通道名称。 |
description |
string |
数据输出通道描述信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
engine_id |
string |
算法选择的引擎规格id。 |
engine_name |
string |
算法选择的引擎版本名称。若填入engine_id则无需填写。 |
engine_version |
string |
算法选择的引擎版本名称。若填入engine_id则无需填写。 |
image_url |
string |
算法选择的自定义镜像地址。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
string |
算法目录树当前层级目录名。 |
children |
object |
算法目录树当前层级目录下子文件和子目录。 |
参数 |
参数类型 |
描述 |
---|---|---|
key |
string |
资源约束,可选值如下:
|
value |
array of strings |
资源约束键对应值。 |
operator |
string |
键与值关系,当前只支持in。例如flavor_type in [cpu,gpu]。 |
参数 |
参数类型 |
描述 |
---|---|---|
auto_search |
auto_search object |
超参搜索策略。 |
参数 |
参数类型 |
描述 |
---|---|---|
skip_search_params |
string |
需要排除的超参组合。 |
reward_attrs |
array of reward_attrs objects |
搜索指标列表。 |
search_params |
array of search_params objects |
搜索参数。 |
algo_configs |
array of algo_configs objects |
搜索算法配置。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
string |
指标名称。 |
mode |
string |
搜索方向。
|
regex |
string |
指标正则表达式。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
string |
超参名称。 |
param_type |
string |
参数类型。
|
lower_bound |
string |
超参下界。 |
upper_bound |
string |
超参上界。 |
discrete_points_num |
string |
连续型超参离散化取值个数。 |
discrete_values |
string |
离散型超参的取值列表。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
string |
搜索算法名称。 |
params |
array of autosearchalgoconfigparameter objects |
搜索算法参数。 |
参数 |
参数类型 |
描述 |
---|---|---|
key |
string |
参数键。 |
value |
string |
参数值。 |
type |
string |
参数种类。 |
请求示例
创建算法。设置算法名称为“testmodelartsalgorithm”,描述为“this is a modelarts algorithm”。
post https://endpoint/v2/{project_id}/algorithms { "metadata" : { "name" : "testmodelartsalgorithm", "description" : "this is a modelarts algorithm" }, "advanced_config" : { "auto_search" : { "algo_configs" : [ { "name" : "bayes_opt_search", "params" : [ { "key" : "kind", "value" : "ucb", "type" : "string" }, { "key" : "kappa", "value" : "2.5", "type" : "float" }, { "key" : "xi", "value" : "0.0", "type" : "float" }, { "key" : "num_samples", "value" : "20", "type" : "integer" }, { "key" : "seed", "value" : "1", "type" : "integer" } ] } ], "reward_attrs" : [ { "name" : "max_search", "mode" : "max", "regex" : "10.0" } ], "search_params" : [ { "name" : "test_search", "lower_bound" : "1", "upper_bound" : "10" } ] } }, "job_config" : { "code_dir" : "/algo-test/pytorch/work1/code/", "boot_file" : "/algo-test/pytorch/work1/code/test-pytorch.py", "parameters" : [ { "name" : "test-parameter", "value" : "10", "constraint" : { "type" : "string", "editable" : true, "required" : false, "sensitive" : false, "valid_type" : "none", "valid_range" : [ ] } } ], "parameters_customization" : true, "inputs" : [ { "name" : "data_url", "description" : "data source." } ], "outputs" : [ { "name" : "train_url", "description" : "model output." } ], "engine" : { "engine_name" : "pytorch", "engine_version" : "pytorch-1.3.0-python3.6" } } }
响应示例
状态码:201
ok
{ "metadata" : { "id" : "2e5451fe-913f-4492-821a-2981031382f7", "name" : "testmodelartsalgorithm", "description" : "this is a modelarts algorithm", "create_time" : 1636600721742, "workspace_id" : "0", "ai_project" : "default-ai-project", "user_name" : "", "domain_id" : "xxxxxxxxxxxxxxxxxxxxxxxxxx", "source" : "custom", "api_version" : "", "is_valid" : true, "state" : "", "size" : 4791, "tags" : null, "attr_list" : null, "version_num" : 0, "update_time" : 0 }, "job_config" : { "code_dir" : "/algo-test/pytorch/work1/code/", "boot_file" : "/algo-test/pytorch/work1/code/test-pytorch.py", "command" : "", "parameters" : [ { "name" : "test-parameter", "description" : "", "i18n_description" : null, "value" : "10", "constraint" : { "type" : "string", "editable" : true, "required" : false, "sensitive" : false, "valid_type" : "none", "valid_range" : [ ] } } ], "parameters_customization" : true, "inputs" : [ { "name" : "data_url", "description" : "name to translate" } ], "outputs" : [ { "name" : "train_url", "description" : "name to translate" } ], "engine" : { "engine_id" : "pytorch-cp36-1.3.0", "engine_name" : "pytorch", "engine_version" : "pytorch-1.3.0-python3.6" }, "code_tree" : { "name" : "code/", "children" : [ { "name" : "test-pytorch.py" } ] } }, "resource_requirements" : null, "advanced_config" : { } }
状态码
状态码 |
描述 |
---|---|
201 |
ok |
错误码
请参见。
相关文档
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨