次の方法で共有


ModuleStep クラス

モジュールの特定のバージョンを実行する Azure Machine Learning パイプライン ステップを作成します。

Module オブジェクトは、さまざまな機械学習シナリオや異なるユーザーが使用できる再利用可能な計算 (スクリプトや実行可能ファイルなど) を定義します。 パイプラインで特定のバージョンのモジュールを使用するには、ModuleStep を作成します。 ModuleStep は、既存の ModuleVersionを使用するパイプラインのステップです。

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

モジュールの特定のバージョンを実行する Azure ML パイプライン ステップを作成します。

コンストラクター

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

手順で使用するモジュール。 moduleまたは module_version パラメーターのいずれかを指定しますが、両方は指定しないでください。

規定値: None
version
str

手順で使用したモジュールのバージョン。

規定値: None
module_version

手順で使用するモジュールの ModuleVersion。 moduleまたは module_version パラメーターのいずれかを指定しますが、両方は指定しないでください。

規定値: None
inputs_map

ModuleVersion のポート定義の名前をステップの入力にマップするディクショナリ。

規定値: None
outputs_map

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
str

ステップの名前。

規定値: None
_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>

(内部使用のみ)。ワークフロー プロバイダー。

規定値: None
module
必須

手順で使用するモジュール。 moduleまたは module_version パラメーターのいずれかを指定しますが、両方は指定しないでください。

version
必須
str

手順で使用したモジュールのバージョン。

module_version
必須

手順で使用したモジュールの ModuleVersion。 moduleまたは module_version パラメーターのいずれかを指定しますが、両方は指定しないでください。

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
必須
str

ステップの名前。

_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])

完全なサンプルは次から入手できます https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb

メソッド

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>

グラフ コンテキスト。

戻り値

説明

ノード オブジェクト。