ModuleStep クラス
特定のバージョンのモジュールを実行する Azure Machine Learning パイプライン ステップを作成します。
Module オブジェクトは、スクリプトや実行可能ファイルなどの再利用可能な評価を定義し、これはさまざまな機械学習シナリオで使用したり、さまざまなユーザーが使用したりできます。 パイプラインで特定のバージョンのモジュールを使用するには、ModuleStep を作成します。 ModuleStep は、既存の ModuleVersion を使用するパイプライン内のステップです。
ModuleStep の使用例については、ノートブック https://aka.ms/pl-modulestep を参照してください。
Azure ML パイプライン ステップを作成して、特定のバージョンのモジュールを実行します。
- 継承
-
ModuleStep
コンストラクター
ModuleStep(module=None, version=None, module_version=None, inputs_map=None, outputs_map=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, arguments=None, params=None, name=None, _workflow_provider=None)
パラメーター
名前 | 説明 |
---|---|
module
|
ステップで使用されるモジュール。
規定値: None
|
version
|
ステップで使用されるモジュールのバージョン。 規定値: None
|
module_version
|
ステップで使用されるモジュールの ModuleVersion。
規定値: None
|
inputs_map
|
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputAbstractDataset, DatasetConsumptionConfig]]
ModuleVersion のポート定義の名前をステップの入力にマップする辞書。 規定値: None
|
outputs_map
|
dict[str, Union[OutputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputAbstractDataset]]
ModuleVersion のポート定義の名前をステップの出力にマップする辞書。 規定値: None
|
compute_target
|
使用するコンピューティング先。 指定されなかった場合は、runconfig のターゲットが使用されます。 コンピューティング先オブジェクト、または、ワークスペース上のコンピューティング先の文字列名を指定できます。 必要に応じて、パイプラインの作成時にコンピューティング先が使用できない場合は、('コンピューティング先の名前'、'コンピューティング先の型') のタプルを指定することにより、コンピューティング先オブジェクトがフェッチされないようにすることもできます (AmlCompute の型は 'AmlCompute' で、RemoteCompute の型は 'VirtualMachine' です)。 規定値: None
|
runconfig
|
使用する RunConfiguration (省略可能)。 RunConfiguration を使用すると、conda 依存関係や Docker イメージなどの、実行に関する追加の要件を指定できます。 規定値: None
|
runconfig_pipeline_params
|
キーに runconfig プロパティの名前、値にそのプロパティの PipelineParameter を持つキーと値のペアを使用して、実行時に runconfig プロパティをオーバーライドするものです。 サポートされる値は、'NodeCount'、'MpiProcessCountPerNode'、'TensorflowWorkerCount'、'TensorflowParameterServerCount' です。 規定値: None
|
arguments
|
Python スクリプト ファイルのコマンド ライン引数のリスト。 引数は、RunConfiguration の引数を介してコンピューティング先に提供されます。 特殊なシンボルなどの引数を処理する方法の詳細については、RunConfiguration の引数を参照してください 規定値: None
|
params
|
名前と値の組の辞書。 規定値: None
|
name
|
ステップの名前。 規定値: None
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(内部使用のみ)。ワークフロー プロバイダー。 規定値: None
|
module
必須
|
ステップで使用されるモジュール。
|
version
必須
|
ステップで使用されるモジュールのバージョン。 |
module_version
必須
|
手順で使用したモジュールの ModuleVersion。
|
inputs_map
必須
|
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, DatasetConsumptionConfig]]
ModuleVersion のポート定義の名前をステップの入力にマップする辞書。 |
outputs_map
必須
|
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>]]
ModuleVersion のポート定義の名前をステップの出力にマップする辞書。 |
compute_target
必須
|
使用するコンピューティング先。 指定されなかった場合は、runconfig のターゲットが使用されます。 コンピューティング先オブジェクト、または、ワークスペース上のコンピューティング先の文字列名を指定できます。 必要に応じて、パイプラインの作成時にコンピューティング先が使用できない場合は、('コンピューティング先の名前'、'コンピューティング先の型') のタプルを指定することにより、コンピューティング先オブジェクトがフェッチされないようにすることもできます (AmlCompute の型は 'AmlCompute' で、RemoteCompute の型は 'VirtualMachine' です)。 |
runconfig
必須
|
使用する RunConfiguration (省略可能)。 RunConfiguration を使用すると、conda 依存関係や Docker イメージなどの、実行に関する追加の要件を指定できます。 |
runconfig_pipeline_params
必須
|
キーに runconfig プロパティの名前、値にそのプロパティの PipelineParameter を持つキーと値のペアを使用して、実行時に runconfig プロパティをオーバーライドするものです。 サポートされる値は、'NodeCount'、'MpiProcessCountPerNode'、'TensorflowWorkerCount'、'TensorflowParameterServerCount' です。 |
arguments
必須
|
Python スクリプト ファイルのコマンド ライン引数のリスト。 引数は、RunConfiguration の引数を介してコンピューティング先に提供されます。 特殊なシンボルなどの引数を処理する方法の詳細については、RunConfiguration の引数を参照してください |
params
必須
|
名前と値の組の辞書。 |
name
必須
|
ステップの名前。 |
_wokflow_provider
必須
|
(内部使用のみ)。ワークフロー プロバイダー。 |
注釈
Module は、Azure Machine Learning パイプラインの再利用可能なコンピューティング単位を作成し、管理するために使用されます。 ModuleStep は、モジュールの使用に利用される Azure Machine Learning の組み込みステップです。 使用する ModuleVersion を具体的に定義するか、Module クラスの「注釈」セクションで定義されている解決プロセスに従って、使用する ModuleVersion をAzure Machine Learning に解決させることができます。 送信されたパイプラインで使用される ModuleVersion を定義するには、ModuleStep を作成するときに次のいずれかを定義します。
ModuleVersion オブジェクト。
Module オブジェクトとバージョン値。
バージョン値のない Module オブジェクト。 この場合、バージョンの解決は、送信ごとに異なる場合があります。
また、ModuleStep の入力と出力から ModuleVersion の入力と出力へのマッピングも定義する必要があります。
次の例は、複数の ModuleStep オブジェクトを含むパイプラインの一部として ModuleStep を作成する方法を示しています。
middle_step = ModuleStep(module=module,
inputs_map= middle_step_input_wiring,
outputs_map= middle_step_output_wiring,
runconfig=RunConfiguration(), compute_target=aml_compute,
arguments = ["--file_num1", first_sum, "--file_num2", first_prod,
"--output_sum", middle_sum, "--output_product", middle_prod])
メソッド
create_node |
ModuleStep ステップからノードを作成し、指定したグラフに追加します。 このメソッドは直接使用するためのものではありません。 このステップでパイプラインがインスタンス化されると、Azure ML は、ワークフローを表すパイプライン グラフにステップを追加できるように、このメソッドで必要なパラメーターを自動的に渡します。 |
create_node
ModuleStep ステップからノードを作成し、指定したグラフに追加します。
このメソッドは直接使用するためのものではありません。 このステップでパイプラインがインスタンス化されると、Azure ML は、ワークフローを表すパイプライン グラフにステップを追加できるように、このメソッドで必要なパラメーターを自動的に渡します。
create_node(graph, default_datastore, context)
パラメーター
名前 | 説明 |
---|---|
graph
必須
|
ノードを追加するグラフ オブジェクト。 |
default_datastore
必須
|
既定のデータストア。 |
context
必須
|
<xref:azureml.pipeline.core._GraphContext>
グラフ コンテキスト。 |
戻り値
型 | 説明 |
---|---|
ノード オブジェクト。 |