云服务器内容精选

  • 属性总览 您可以使用JobStep来构建作业类型节点,JobStep结构如下 表1 JobStep 属性 描述 是否必填 数据类型 name 作业节点的名称,命名规范:只能包含英文字母、数字、下划线(_)、中划线(-),并且只能以英文字母开头,长度限制为64字符,一个Workflow里的两个step名称不能重复 是 str algorithm 算法对象 是 BaseAlgorithm, Algorithm, AIGalleryAlgorithm spec 作业使用的资源规格相关配置 是 JobSpec inputs 作业节点的输入列表 是 JobInput或者JobInput的列表 outputs 作业节点的输出列表 是 JobOutput或者JobOutput的列表 title title信息,主要用于前端的名称展示 否 str description 作业节点的描述信息 否 str policy 节点执行的policy 否 StepPolicy depend_steps 依赖的节点列表 否 Step或者Step的列表 表2 JobInput 属性 描述 是否必填 数据类型 name 作业类型节点的输入名称,命名规范:只能包含英文字母、数字、下划线(_)、中划线(-),并且只能以英文字母开头,长度限制为64字符。同一个Step的输入名称不能重复 是 str data 作业类型节点的输入数据对象 是 数据集或OBS相关对象,当前仅支持Dataset,DatasetPlaceholder,DatasetConsumption,OBSPath,OBSConsumption,OBSPlaceholder,DataConsumptionSelector 表3 JobOutput 属性 描述 是否必填 数据类型 name 作业类型节点的输出名称,命名规范:只能包含英文字母、数字、下划线(_)、中划线(-),并且只能以英文字母开头,长度限制为64字符。同一个Step的输出名称不能重复 是 str obs_config 输出的OBS相关配置 否 OBSOutputConfig model_config 输出的模型相关配置 否 ModelConfig metrics_config metrics相关配置 否 MetricsConfig 表4 OBSOutputConfig 属性 描述 是否必填 数据类型 obs_path 已存在的OBS目录 是 str、Placeholder、Storage metric_file 存储metric信息的文件名称 否 str、Placeholder 表5 BaseAlgorithm 属性 描述 是否必填 数据类型 id 算法管理的算法ID 否 str subscription_id 订阅算法的订阅ID 否 str item_version_id 订阅算法的版本号 否 str code_dir 代码目录 否 str,Placeholder,Storage boot_file 启动文件 否 str,Placeholder,Storage command 启动命令 否 str,Placeholder parameters 算法超参 否 AlgorithmParameters的列表 engine 作业使用的镜像信息 否 JobEngine environments 环境变量 否 dict 表6 Algorithm 属性 描述 是否必填 数据类型 algorithm_id 算法管理的算法ID 是 str parameters 算法超参 否 AlgorithmParameters的列表 表7 AIGalleryAlgorithm 属性 描述 是否必填 数据类型 subscription_id 订阅算法的订阅ID 是 str item_version_id 订阅算法的版本号 是 str parameters 算法超参 否 AlgorithmParameters的列表 表8 AlgorithmParameters 属性 描述 是否必填 数据类型 name 算法超参的名称 是 str value 算法超参的值 是 int, bool, float, str, Placeholder, Storage 表9 JobEngine 属性 描述 是否必填 数据类型 engine_id 镜像ID 否 str,Placeholder engine_name 镜像名称 否 str,Placeholder engine_version 镜像版本 否 str,Placeholder image_url 镜像url 否 str,Placeholder 表10 JobSpec 属性 描述 是否必填 数据类型 resource 资源信息 是 JobResource log_export_path 日志输出路径 否 LogExportPath schedule_policy 作业调度配置策略 否 SchedulePolicy volumes 作业挂载的文件系统信息 否 list[Volume] 表11 JobResource 属性 描述 是否必填 数据类型 flavor 资源规格 是 Placeholder node_count 节点个数,默认为1,多节点表示支持分布式 否 int,Placeholder 表12 SchedulePolicy 属性 描述 是否必填 数据类型 priority 作业调度的优先级,仅支持配置为1、2、3,分别对应低、中、高三种优先级 是 int,Placeholder 表13 Volume 属性 描述 是否必填 数据类型 nfs NFS文件系统对象 否 NFS 表14 NFS 属性 描述 是否必填 数据类型 nfs_server_path NFS文件系统的服务地址 是 str,Placeholder local_path 挂载到容器里面的路径 是 str,Placeholder read_only 是否只读的方式挂载 否 bool,Placeholder 父主题: 作业类型节点
  • 资源规格查询 您在创建作业类型节点之前可以通过以下操作来获取该账号所支持的训练资源规格列表以及引擎规格列表: 导包 from modelarts.session import Session from modelarts.estimatorV2 import TrainingJob from modelarts.workflow.client.job_client import JobClient session初始化 # 如果您在本地IDEA环境中开发工作流,则Session初始化使用如下方式 # 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; # 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 __AK = os.environ["HUAWEICLOUD_SDK_AK"] __SK = os.environ["HUAWEICLOUD_SDK_SK"] # 如果进行了加密还需要进行解密操作 session = Session( access_key=__AK, # 账号的AK信息 secret_key=__SK, # 账号的SK信息 region_name="***", # 账号所属的region project_id="***" ,# 账号的项目ID ) # 如果您在Notebook环境中开发工作流,则Session初始化使用如下方式 session = Session() 公共池查询 # 公共资源池规格列表查询 spec_list = TrainingJob(session).get_train_instance_types(session) # 返回的类型为list,可按需打印查看 print(spec_list) 专属池查询 # 运行中的专属资源池列表查询 pool_list = JobClient(session).get_pool_list() # 返回专属资源池的详情列表 pool_id_list = JobClient(session).get_pool_id_list() # 返回专属资源池ID列表 专属资源池规格ID列表如下,根据所选资源池的实际规格自行选择: 1. modelarts.pool.visual.xlarge 对应1卡 2. modelarts.pool.visual.2xlarge 对应2卡 3. modelarts.pool.visual.4xlarge 对应4卡 4. modelarts.pool.visual.8xlarge 对应8卡 引擎规格查询 # 引擎规格查询 engine_dict = TrainingJob(session).get_engine_list(session) # 返回的类型为dict,可按需打印查看 print(engine_dict) 父主题: 作业类型节点