Share via


MpiStep クラス

MPI ジョブを実行する Azure ML パイプライン ステップを作成します。

MpiStep の使用例については、ノートブック https://aka.ms/pl-style-trans を参照してください。

MPI ジョブを実行する Azure ML パイプライン ステップを作成します。

非推奨。 代わりに CommandStep を使用してください。 例については、「 CommandStep を使用してパイプラインで分散トレーニングを実行する方法」を参照してください。

継承

コンストラクター

MpiStep(name=None, source_directory=None, script_name=None, arguments=None, compute_target=None, node_count=None, process_count_per_node=None, inputs=None, outputs=None, allow_reuse=True, version=None, hash_paths=None, **kwargs)

パラメーター

name
str
既定値: None

[必須] モジュールの名前。

source_directory
str
既定値: None

[必須] ステップで使用される Python スクリプト、conda env、その他のリソースを含むフォルダー。

script_name
str
既定値: None

[必須] source_directory を基準にした Python スクリプトの名前。

arguments
list
既定値: None

[必須] コマンドライン引数の一覧。

compute_target
AmlCompute, str
既定値: None

[必須] 使用するコンピューティング先。

node_count
int
既定値: None

[必須] トレーニングに使用するコンピューティング先のノードの数。 1 より大きい場合は、MPI 分散ジョブが実行されます。 分散ジョブでは、AmlCompute コンピューティング先のみがサポートされます。 PipelineParameter 値がサポートされています。

process_count_per_node
int
既定値: None

[必須] ノードあたりのプロセスの数。 1 より大きい場合は、MPI 分散ジョブが実行されます。 分散ジョブでは、AmlCompute コンピューティング先のみがサポートされます。 PipelineParameter 値がサポートされています。

inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputAbstractDataset, DatasetConsumptionConfig]]
既定値: None

入力ポート バインドの一覧。

outputs
list[Union[PipelineData, PipelineOutputAbstractDataset, OutputPortBinding]]
既定値: None

出力ポート バインドのリスト。

params
dict
必須

"AML_PARAMETER_" を使用して環境変数として登録された名前と値のペアのディクショナリ。

allow_reuse
bool
既定値: True

同じ設定で再実行されたときに、ステップで前の結果を再利用するかどうかを示します。 再利用は既定で有効になっています。 ステップの内容 (スクリプトや依存関係) だけでなく、入力とパラメーターも変更されていない場合は、このステップの前の実行からの出力が再利用されます。 ステップを再利用する場合、計算するジョブを送信する代わりに、前の実行の結果を後続のステップですぐに利用できるようにします。 Azure Machine Learning データセットを入力として使用する場合、再利用は、基になるデータが変更されたかどうかではなく、データセットの定義が変更されたかどうかによって決まります。

version
str
既定値: None

モジュールの機能変更を示すオプションのバージョン タグ。

hash_paths
list
既定値: None

非推奨: 不要になりました。

ステップの内容の変更を確認するときにハッシュするパスのリスト。 変更が検出されない場合、パイプラインは以前の実行のステップの内容を再利用します。 既定では、source_directory の内容は .amlignore または .gitignore に示されているファイルを除いてハッシュされます。

use_gpu
bool
必須

実験を実行する環境で GPU をサポートする必要があるかどうかを指定します。 True の場合、GPU ベースの既定の Docker イメージが環境で使用されます。 False の場合、CPU ベースのイメージが使用されます。 既定の Docker イメージ (CPU または GPU) は、custom_docker_image パラメーターが設定されていない場合にのみ使用されます。 この設定は、Docker 対応のコンピューティング先でのみ使用されます。

use_docker
bool
必須

実験を実行する環境を Docker ベースにするかどうかを指定します。

custom_docker_image
str
必須

トレーニングに使用するイメージのビルド元に指定する Docker イメージの名前。 設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。

image_registry_details
ContainerRegistry
必須

Docker イメージ レジストリの詳細。

user_managed
bool
必須

Azure ML が既存の Python 環境を再利用するかどうかを指定します。False の場合、Azure ML は conda 依存関係の仕様に基づいて Python 環境を作成します。

conda_packages
list
必須

Python 環境に追加される conda パッケージを表す文字列のリスト。

pip_packages
list
必須

Python 環境に追加される pip パッケージを表す文字列のリスト。

pip_requirements_file_path
str
必須

pip 要件テキスト ファイルへの相対パス。 このパラメーターは、pip_packages パラメーターと組み合わせて指定できます。

environment_definition
EnvironmentDefinition
必須

実験の EnvironmentDefinition。 PythonSection、DockerSection、および環境変数が含まれます。 他のパラメーターを介して MpiStep 構造に直接公開されていない環境オプションは、environment_definition パラメーターを使用して設定できます。 このパラメーターを指定すると、use_gpu、custom_docker_image、conda_packages、pip_packages などの他の環境関連パラメーターよりも優先され、これらの無効な組み合わせによってエラーが報告されます。

name
str
必須

[必須] モジュールの名前。

source_directory
str
必須

[必須] ステップで使用される Python スクリプト、conda env、その他のリソースを含むフォルダー。

script_name
str
必須

[必須] source_directory を基準にした Python スクリプトの名前。

arguments
list
必須

[必須] コマンドライン引数の一覧。

compute_target
<xref:azureml.core.compute.AmlComputeCompute>, str
必須

[必須] 使用するコンピューティング先。

node_count
int
必須

[必須]トレーニングに使用されるコンピューティング ターゲット内のノードの数。 1 より大きい場合は、mpi 分散ジョブが実行されます。 分散ジョブでは、AmlCompute コンピューティング先のみがサポートされます。 PipelineParameter 値がサポートされています。

process_count_per_node
int
必須

[必須]ノードあたりのプロセス数。 1 より大きい場合は、mpi 分散ジョブが実行されます。 分散ジョブでは、AmlCompute コンピューティング先のみがサポートされます。 PipelineParameter 値がサポートされています。

outputs
list[Union[PipelineData, OutputDatasetConfig, PipelineOutputAbstractDataset, OutputPortBinding]]
必須

出力ポート バインドのリスト。

params
dict
必須

">>AML_PARAMETER_<<" を使用して環境変数として登録された名前と値のペアのディクショナリ。

allow_reuse
bool
必須

同じパラメーターを使用して再実行しても、ステップで前の結果を再利用する必要があるかどうかを示します。この手順の前の実行からの出力が再利用されます。 ステップを再利用する場合、計算するジョブを送信する代わりに、前の実行の結果を後続のステップですぐに利用できるようにします。 Azure Machine Learning データセットを入力として使用する場合、再利用は、基になるデータが変更されたかどうかではなく、データセットの定義が変更されたかどうかによって決まります。

version
str
必須

モジュールの機能の変更を示すオプションのバージョン タグ

hash_paths
list
必須

非推奨: 不要になりました。

ステップの内容の変更を確認するときにハッシュするパスのリスト。 変更が検出されない場合、パイプラインは以前の実行のステップの内容を再利用します。 既定では、source_directory の内容は .amlignore または .gitignore に示されているファイルを除いてハッシュされます。

use_gpu
bool
必須

実験を実行する環境で GPU をサポートする必要があるかどうかを指定します。 True の場合、GPU ベースの既定の Docker イメージが環境で使用されます。 False の場合、CPU ベースのイメージが使用されます。 既定の Docker イメージ (CPU または GPU) は、custom_docker_image パラメーターが設定されていない場合にのみ使用されます。 この設定は、Docker 対応のコンピューティング先でのみ使用されます。

use_docker
bool
必須

実験を実行する環境を Docker ベースにするかどうかを指定します。 custom_docker_image (str): mpi ジョブに使用するイメージのビルド元となる Docker イメージの名前。 設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。

custom_docker_image
str
必須

Docker イメージの名前。トレーニングに使用するイメージは、この Docker イメージからビルドされます。 設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。

image_registry_details
ContainerRegistry
必須

Docker イメージ レジストリの詳細。

user_managed
bool
必須

Azure ML が既存の Python 環境を再利用するかどうかを指定します。False の場合、Azure ML は conda 依存関係の仕様に基づいて Python 環境を作成します。

conda_packages
list
必須

Python 環境に追加される conda パッケージを表す文字列のリスト。

pip_packages
list
必須

Python 環境に追加される pip パッケージを表す文字列のリスト。

pip_requirements_file_path
str
必須

pip 要件テキスト ファイルへの相対パス。 このパラメーターは、pip_packages パラメーターと組み合わせて指定できます。

environment_definition
EnvironmentDefinition
必須

実験の EnvironmentDefinition。 PythonSection、DockerSection、および環境変数が含まれます。 他のパラメーターを介して MpiStep 構造に直接公開されていない環境オプションは、environment_definition パラメーターを使用して設定できます。 このパラメーターを指定すると、use_gpu、custom_docker_image、conda_packages、pip_packages などの他の環境関連パラメーターよりも優先され、これらの無効な組み合わせによってエラーが報告されます。