使用PyCharm ToolKit创建并调试训练作业
由于AI开发者会使用PyCharm工具开发算法或模型,为方便快速将本地代码提交到ModelArts的训练环境,ModelArts提供了一个PyCharm插件工具PyCharm ToolKit,协助用户完成SSH远程连接Notebook、代码上传、提交训练作业、将训练日志获取到本地展示等,用户只需要专注于本地的代码开发即可。
本章节介绍如何使用PyCharm ToolKit插件创建训练作业并调试。
前提条件
- 在本地PyCharm中已有训练代码工程。
- 已在OBS中创建桶和文件夹,用于存放数据集和训练输出模型。 例如:创建命名为“test-modelarts2”的桶,创建文件夹“dataset-mnist”和“mnist-output”。训练作业使用的数据已上传至OBS,且OBS与ModelArts在同一区域。
注意事项: 当前插件仅支持 PyCharm 版本 低于 2024.3.2。在 2024.3.2 及以上版本中,插件可能无法正常创建作业。
推荐使用版本: 请使用 PyCharm 2024.1.4 以获得最佳兼容性和稳定性。
计费影响
在ModelArts进行模型训练时,会产生计算资源和存储资源的累计值计费。计算资源为训练作业运行的费用。存储资源包括数据存储到OBS或SFS的费用。详见模型训练计费项。
配置训练作业参数
- 在PyCharm中,打开训练代码工程和训练启动文件,然后在菜单栏中选择“ModelArts > 训练 > 提交训练作业”。 图1 选择作业配置
- 在弹出的对话框中,设置训练作业相关参数,详细参数说明请参见表1。
表1 训练作业配置参数说明 参数
说明
作业名称
训练作业的名称。
系统会自动生成一个名称,您可以根据业务需求重新命名,命名规则如下:
- 支持1~64位字符。
- 并包含大小写字母、数字、中划线(-)或下划线(_)。
描述
训练作业的简要描述。
作业模式
训练作业模式,分为“生产模式”和“调试模式”两种,二者选一项即可。
其中调试模式支持通过SSH连接进入容器的功能,以及支持设置自动停止时间
自定义镜像
SWR镜像的URL地址,例如swr.cn-north-4.myhuaweicloud.com/image-org/image-name:version。关于自定义镜像的说明,请参见自定义镜像介绍。
启动命令
启动本次训练作业的运行命令。例如“bash /home/work/run_train.sh python {python启动文件及参数}”。如果是需要进行调试、或者保持容器状态,可以使用命令“sleep {小时数}h”。
中转目录
设置为存储训练数据的OBS路径,例如“/test-modelarts2/mnist/dataset-mnist/”,其中“test-modelarts2”为桶名称。
单击提交训练作业之后,会将本地的工作目录,上传至该中转目录上。
超参
运行参数。如果您的代码需要添加一些运行参数,可以在此处单击右侧的“编辑超参”按钮进行添加。此参数也可以不设置,即保持为空。
图2 配置训练作业参数
- 参数填写完成后,单击“保存并提交”,即自动上传本地代码至云端并启动训练,在工具下方的Training Log区域,会实时展示训练作业运行情况。当训练日志中出现“Current training job status: Successful”类似信息时,表示训练作业运行成功。
- 在单击“Apply and Run”按钮后,系统将自动开始执行训练作业。如果您想停止此作业,可以选择菜单栏中的停止此作业。
- 如果单击“Apply”,不会直接启动运行,只是保存训练作业的设置,如果需要启动作业,可以单击“Apply and Run”。
图3 训练日志展示样例
停止作业
当训练作业在运行过程中时,您可以在训练作业详情页面中中,单击“停止”按钮停止训练作业。
查看训练日志
提交训练作业时,系统将自动在您配置的OBS Path中,使用作业名称创建一个新的文件夹,用于存储训练输出的模型、日志和代码。
test-modelarts2
|---train-job-01
|---output
|---V0001
|---V0002
|---...
|---log
|---code 查看训练日志有2种方式,在OBS查看和在PyCharm ToolKit工具中查看。
- 在PyCharm ToolKit工具中查看训练日志
在PyCharm ToolKit工具中,单击页面右下角的ModelArts Training Log,展示训练日志。
图6 查看训练日志
同时,训练作业运行结束后,系统将自动在工程目录创建一个命名为“MA_LOG”的文件夹,用于保存训练作业日志文件。
图7 工程目录下的日志文件
也可以在作业详情中,单击“查看日志”按钮,打开历史作业的日志

