云服务器内容精选

  • 请求示例 如下以创建名为“testConfig”,描述为“This is config”的训练作业参数为例。 POST https://endpoint/v1/{project_id}/training-job-configs { "config_name": "testConfig", "config_desc": "This is config", "worker_server_num": 1, "app_url": "/usr/app/", "boot_file_url": "/usr/app/boot.py", "parameter": [ { "label": "learning_rate", "value": "0.01" }, { "label": "batch_size", "value": "32" } ], "spec_id": 1, "dataset_id": "38277e62-9e59-48f4-8d89-c8cf41622c24", "dataset_version_id": "2ff0d6ba-c480-45ae-be41-09a8369bfc90", "engine_id": 1, "train_url": "/usr/train/", "log_url": "/usr/log/", "model_id": 1 }
  • 参数说明 表1 Estimator请求参数说明 参数 是否必选 参数类型 描述 modelarts_session 是 Object 会话对象,初始化方法见Session鉴权。 train_instance_count 是 Long 训练作业worker的个数。 code_dir 否 String 训练作业的代码目录,如“/bucket/src/”。当填入model_name时不需要填写。 boot_file 否 String 训练作业的代码启动文件,需要在代码目录下,如“/bucket/src/boot.py”。当填入model_name时不需要填写。 model_name 否 Long 训练作业的内置算法模型名称。填入model_name后app_url与boot_file_url不需填写,framework_type和framework_version也不需要填写。 output_path 是 String 训练作业的输出位置。 hyperparameters 否 JSON Array 训练作业的运行参数,为label-value格式;当为 自定义镜像 训练作业的时候,此参数为容器环境变量。 log_url 否 String 训练作业的日志OBS输出路径URL,默认为空。如:“/usr/log/”。 train_instance_type 是 Long 训练作业选择的资源规格。若选择在训练平台训练,请从查询资源规格列表接口获取。 framework_type 否 String 训练作业选择的引擎规格。请从查询引擎规格列表接口获取引擎规格。当填入model_name时不需要填写。 framework_version 否 String 训练作业选择的引擎版本。请从查询引擎规格列表接口获取引擎版本。当填入model_name时不需要填写。 job_description 否 String 训练作业的描述。 user_image_url 否 String 自定义镜像训练作业的自定义镜像的SWR-URL。如:“100.125.5.235:20202/jobmng/custom-cpu-base:1.0”。 user_command 否 String 自定义镜像训练作业的自定义镜像的容器的启动命令。形式为:“bash /home/work/run_train.sh python /home/work/user-job-dir/app/train.py {python_file_parameter}”。 表2 update_job_configs请求参数说明 参数 是否必选 参数类型 描述 config_name 是 String 训练作业参数名称。限制为1-20位只含数字、字母、下划线或者中划线的名称。当不填写时,默认会按日期动态生成。 config_desc 否 String 对训练作业的描述,默认为空,字符串的长度限制为[0,256]。 inputs 否 String 训练作业的OBS数据存储位置。 dataset_id 否 String 训练作业的数据集ID。应与dataset_version_id同时出现,但不可与inputs同时出现。 dataset_version_id 否 String 训练作业的数据集版本ID。应与dataset_id同时出现,但不可与inputs同时出现。 data_source 否 JSON Array 训练作业使用的数据集。不可与inputs、dataset_id、dataset_version_id同时使用。 表3 data_source属性列表 参数 是否必选 参数类型 描述 dataset_id 否 String 训练作业的数据集ID。 dataset_version 否 String 训练作业的数据集版本ID。 type 是 String 数据集类型。可选值:“obs”、“dataset”。 data_url 否 String obs的桶路径,不可与dataset_id/dataset_version同时出现。 表4 update_job_configs返回参数说明 参数 参数类型 描述 error_msg String 调用失败时的错误信息。 调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。 调用成功时无此字段。 is_success Boolean 接口调用是否成功。
  • 示例代码 在ModelArts notebook平台,Session鉴权无需输入鉴权参数。其它平台的Session鉴权请参见Session鉴权。 示例一:使用OBS存储位置更新训练作业参数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 from modelarts.session import Session from modelarts.estimator import Estimator session = Session() estimator = Estimator( modelarts_session=session, framework_type='PyTorch', # AI引擎名称 framework_version='PyTorch-1.0.0-python3.6', # AI引擎版本 code_dir='/bucket/src/', # 训练脚本目录 boot_file='/bucket/src/pytorch_sentiment.py', # 训练启动脚本目录 log_url='/bucket/log/', # 训练日志目录 hyperparameters=[ {"label":"classes", "value": "10"}, {"label":"lr", "value": "0.001"} ], output_path='/bucket/output/', # 训练输出目录 train_instance_type='modelarts.vm.gpu.p100', # 训练环境规格 train_instance_count=1) # 训练节点个数 update_info = estimator.update_job_configs(config_name='my_job_config', inputs='/bucket/dataset/', config_desc='update') 示例二:使用数据集更新训练作业参数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 from modelarts.session import Session from modelarts.estimator import Estimator session = Session() estimator = Estimator( modelarts_session=session, framework_type='PyTorch', # AI引擎名称 framework_version='PyTorch-1.0.0-python3.6', # AI引擎版本 code_dir='/bucket/src/', # 训练脚本目录 boot_file='/bucket/src/pytorch_sentiment.py', # 训练启动脚本目录 log_url='/bucket/log/', # 训练日志目录 hyperparameters=[ {"label":"classes", "value": "10"}, {"label":"lr", "value": "0.001"} ], output_path='/bucket/output/', # 训练输出目录 train_instance_type='modelarts.vm.gpu.p100', # 训练环境规格 train_instance_count=1) # 训练节点个数 update_info = estimator.update_job_configs(config_name='my_job_config', dataset_id='4AZNvFkN7KYr5EdhFkH', dataset_version_id='UOF9BIeSGArwVt0oI6T', config_desc='update')