ALIYUN::PAIDLC::Job は、クラスター内で実行する Machine Learning Platform for AI (PAI) ジョブを作成するために使用されます。
構文
{
"Type": "ALIYUN::PAIDLC::Job",
"Properties": {
"ThirdpartyLibs": List,
"Options": String,
"Priority": Integer,
"Envs": String,
"JobMaxRunningTimeMinutes": Integer,
"WorkspaceId": String,
"CodeSource": Map,
"UserVpc": Map,
"JobSpecs": List,
"UserCommand": String,
"DataSources": List,
"JobType": String,
"ResourceId": String,
"ThirdpartyLibDir": String,
"DisplayName": String,
"SuccessPolicy": String,
"Settings": Map
}
}プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
ThirdpartyLibs | List | いいえ | いいえ | サードパーティの Python ライブラリとそのバージョン。 | 例: |
Options | String | いいえ | いいえ | ジョブの追加構成。 | このプロパティを使用して、アタッチされたデータソースの動作を調整できます。たとえば、ジョブにアタッチされたデータソースが Object Storage Service (OSS) タイプの場合、このプロパティを使用して次の構成を追加し、 |
Priority | Integer | いいえ | はい | ジョブの優先度。 | デフォルト値: 1. 有効な値: 1 ~ 9。各値は異なる優先度を指定します。
|
Envs | String | いいえ | いいえ | 環境変数の構成。 | なし。 |
JobMaxRunningTimeMinutes | Integer | いいえ | いいえ | ジョブの最大実行時間。 | 単位: 分。 |
WorkspaceId | String | はい | いいえ | ワークスペース ID。 | なし。 |
CodeSource | Map | いいえ | いいえ | ジョブのコードソース。 | ジョブのノードが実行を開始する前に、Deep Learning Containers (DLC) はコードソースから構成済みのコードを自動的にダウンロードし、コンテナーのオンプレミス パスにマウントします。詳細については、「CodeSource プロパティ」をご参照ください。 |
UserVpc | Map | いいえ | いいえ | ユーザー VPC (Virtual Private Cloud) の構成。 | 詳細については、「UserVpc 構文」をご参照ください。 |
JobSpecs | List | はい | いいえ | ジョブの実行構成。 | 詳細については、「JobSpecs プロパティ」をご参照ください。 |
UserCommand | String | はい | いいえ | ジョブのすべてのノードの起動コマンド。 | なし。 |
DataSources | List | いいえ | いいえ | ジョブのすべてのデータソース。 | データソースは、データソースの構成に基づいて、各ノードで実行されているコンテナーのオンプレミス パスにマウントされます。 DataSources の MountPath プロパティは、オンプレミス パスを指定します。 ジョブの起動コマンドのプロセスは、MountPath で指定されたパスにある分散ファイルシステムに直接アクセスします。各データソースは、分散ファイルシステムを表します。 詳細については、「DataSources プロパティ」をご参照ください。 |
JobType | String | はい | いいえ | ジョブタイプ。 | 値は大文字と小文字が区別されます。次のジョブタイプがサポートされています。
|
ResourceId | String | いいえ | いいえ | ジョブが属するリソースグループの ID。 | このプロパティはオプションです。
|
ThirdpartyLibDir | String | いいえ | いいえ | Python サードパーティ ライブラリの requirements.txt ファイルが存在するフォルダーの名前。 | 各ノードが UserCommand で指定された起動コマンドを実行する前に、DLC はフォルダーから |
DisplayName | String | はい | いいえ | ジョブの名前。 | 名前は次の要件を満たしている必要があります。
|
SuccessPolicy | String | いいえ | いいえ | 分散マルチノード ジョブが成功したかどうかを確認するために使用されるポリシー。 | TensorFlow 分散マルチノード ジョブのみがサポートされています。 有効な値:
|
Settings | Map | いいえ | いいえ | ジョブの追加パラメーター構成。 | なし。 |
CodeSource 構文
"CodeSource": {
"MountPath": String,
"Commit": String,
"Branch": String,
"CodeSourceId": String
}CodeSource プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
MountPath | String | いいえ | いいえ | ジョブをマウントするパス。 | デフォルトでは、データソースに構成されているマウントパスが使用されます。 |
Commit | String | いいえ | いいえ | ジョブ用にダウンロードする必要があるコードのコミット ID。 | デフォルトでは、コードソースに構成されているコミット ID が使用されます。 |
Branch | String | いいえ | いいえ | ジョブの実行時に参照されるコードリポジトリのブランチ。 | デフォルトでは、コードソースに構成されているブランチが使用されます。 |
CodeSourceId | String | はい | いいえ | コードソースの ID。 | なし。 |
UserVpc 構文
"UserVpc": {
"VpcId": String,
"SecurityGroupId": String,
"SwitchId": String,
"ExtendedCIDRs": List
}UserVpc プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
VpcId | String | はい | いいえ | VPC ID。 | なし。 |
SecurityGroupId | String | いいえ | いいえ | セキュリティグループの ID。 | なし。 |
SwitchId | String | いいえ | いいえ | vSwitch ID。 | このプロパティはオプションです。
|
ExtendedCIDRs | List | いいえ | いいえ | 拡張 CIDR ブロック。 | 有効な値:
|
JobSpecs 構文
"JobSpecs": [
{
"PodCount": Integer,
"ImageConfig": Map,
"UseSpotInstance": Boolean,
"Type": String,
"EcsSpec": String,
"ResourceConfig": Map,
"Image": String,
"ExtraPodSpec": Map
}
]JobSpecs プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
PodCount | Integer | はい | いいえ | レプリカ数。 | なし。 |
ImageConfig | Map | いいえ | いいえ | 非公開イメージの構成。 | なし。 |
UseSpotInstance | Boolean | はい | いいえ | プリエンプティブル インスタンスを使用するかどうかを指定します。 | 有効な値:
|
Type | String | はい | いいえ | ノードタイプ。 | Type は JobType と密接に関連しています。 Type の有効な値は、JobType の値によって異なります。
PyTorch または XGBoost ジョブのマスターノードはオプションです。 PyTorch または XGBoost ジョブのマスターノードを指定しない場合、システムは最初のワーカーノードをマスターノードとして自動的に使用します。 |
EcsSpec | String | はい | いいえ | ワーカーノードの Elastic Compute Service (ECS) インスタンスの仕様。 | 価格はインスタンスの仕様によって異なります。詳細については、「DLC の課金」をご参照ください。 |
ResourceConfig | Map | いいえ | いいえ | リソース構成。 | なし。 |
Image | String | はい | いいえ | ワーカーノードによって実行されるイメージのアドレス。 | ListImages 操作を呼び出して、PAI によって提供されるコミュニティ イメージと PAI によって最適化されたイメージをクエリできます。サードパーティのパブリック イメージを指定することもできます。 |
ExtraPodSpec | Map | いいえ | いいえ | 追加のポッド構成。 | なし。 |
DataSources 構文
"DataSources": [
{
"MountPath": String,
"DataSourceId": String
}
]DataSources プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
MountPath | String | いいえ | いいえ | ジョブをマウントするパス。 | デフォルトでは、データソースに構成されているマウント パスが使用されます。 |
DataSourceId | String | はい | いいえ | データソースの ID。 | なし。 |
戻り値
Fn::GetAtt
JobId: ジョブ ID。