次の方法で共有


StepRun クラス

Pipelineでのステップの実行。

このクラスは、親パイプラインの実行が送信され、パイプラインがステップ実行を送信した後に、実行の詳細を管理、確認、および取得するために使用できます。

StepRun を初期化します。

コンストラクター

StepRun(experiment, step_run_id, pipeline_run_id, node_id, _service_endpoint=None, _is_reused=False, _current_node_id=None, _reused_run_id=None, _reused_node_id=None, _reused_pipeline_run_id=None, **kwargs)

パラメーター

名前 説明
experiment
必須

ステップ実行の実験オブジェクト。

step_run_id
必須
str

ステップ実行の実行 ID。

pipeline_run_id
必須
str

親パイプライン実行の実行 ID。

node_id
必須
str

このステップを表すグラフ内のノードの ID。

_service_endpoint
str

接続先のエンドポイント。

規定値: None
_is_reused

この実行が再利用された前の実行であるかどうかを示します。

規定値: False
_current_node_id
str

再利用されたノードの場合、現在のグラフ上のノード ID。

規定値: None
_reused_run_id
str

再利用された実行 ID。

規定値: None
_reused_node_id
str

再利用されたノード ID。

規定値: None
_reused_pipeline_run_id
str

再利用されたパイプライン ID。

規定値: None
experiment
必須

ステップ実行の実験オブジェクト。

step_run_id
必須
str

ステップ実行の実行 ID。

pipeline_run_id
必須
str

親パイプライン実行の実行 ID。

node_id
必須
str

このステップを表すグラフ内のノードの ID。

_service_endpoint
必須
str

接続先のエンドポイント。

_is_reused
必須

この実行が再利用された前の実行であるかどうかを示します。

_current_node_id
必須
str

再利用されたノードの場合、現在のグラフ上のノード ID。

_reused_run_id
必須
_reused_node_id
必須
str
_reused_pipeline_run_id
必須
str

注釈

StepRun は、送信された PipelineRunの子実行として作成されます。 PipelineRun 内のすべての StepRun を次のようにフェッチします。


   from azureml.core import Experiment
   from azureml.pipeline.core import PipelineRun

   experiment = Experiment(workspace, "<experiment_name>")
   pipeline_run = PipelineRun(experiment, "<pipeline_run_id>")
   step_runs = pipeline_run.get_steps()

get_details_with_logsを使用して、実行によって作成された実行の詳細とログをフェッチします。

StepRun を使用して、実行の出力をダウンロードすることもできます。 get_outputsを使用してステップ出力のディクテーションを取得するか、get_outputを使用して、指定された名前で出力の単一のStepRunOutput オブジェクトを取得します。 get_output_dataを使用して、指定したステップ出力のPortDataReferenceを直接フェッチすることもできます。

ステップ出力をダウンロードする例を次に示します。


   from azureml.pipeline.core import PipelineRun, StepRun, PortDataReference

   pipeline_run = PipelineRun(experiment, "<pipeline_run_id>")
   step_run = pipeline_run.find_step_run("<step_name>")[0]
   port_data_reference = step_run.get_output_data("<output_name>")
   port_data_reference.download(local_path="path")

メソッド

child_run

ステップ実行の子実行。 このメソッドは、StepRun には実装されていません。

complete

手順の実行を完了します。 このメソッドは、StepRun には実装されていません。

fail

ステップ実行で失敗します。 このメソッドは、StepRun には実装されていません。

get_details_with_logs

ログ ファイルの内容を含む実行の状態の詳細を返します。

get_job_log

ステップ実行の現在のジョブ ログをダンプします。

get_output

指定された名前のノード出力を取得します。

get_output_data

特定の出力から出力データを取得します。

get_outputs

ステップの出力を取得します。

get_status

パイプライン実行の最新の状態をサービスからフェッチします。

返される一般的な値は、"Running"、"Finished"、"Failed" です。

get_stderr_log

ステップ実行の現在の stderr ログをダンプします。

get_stdout_log

ステップ実行の現在の stdout ログをダンプします。

wait_for_completion

この手順の実行が完了するまで待ちます。

待機後の状態を返します。

child_run

ステップ実行の子実行。 このメソッドは、StepRun には実装されていません。

child_run(name=None, run_id=None, outputs=None)

パラメーター

名前 説明
name
str

子の省略可能な名前

規定値: None
run_id
str

子の省略可能なrun_id。それ以外の場合は既定値を使用します

規定値: None
outputs
str

子を追跡するオプションの出力ディレクトリ

規定値: None

戻り値

説明
Run

子実行

例外

説明

complete

手順の実行を完了します。 このメソッドは、StepRun には実装されていません。

complete()

例外

説明

fail

ステップ実行で失敗します。 このメソッドは、StepRun には実装されていません。

fail()

例外

説明

get_details_with_logs

ログ ファイルの内容を含む実行の状態の詳細を返します。

get_details_with_logs()

戻り値

説明

ログ ファイルの内容を含む実行の状態を返します

get_job_log

ステップ実行の現在のジョブ ログをダンプします。

get_job_log()

戻り値

説明
str

ログ文字列。

get_output

指定された名前のノード出力を取得します。

get_output(name)

パラメーター

名前 説明
name
必須
str

出力の名前。

戻り値

説明

指定された名前の StepRunOutput。

get_output_data

特定の出力から出力データを取得します。

get_output_data(name)

パラメーター

名前 説明
name
必須
str

出力の名前。

戻り値

説明

ステップ出力データを表す PortDataReference。

get_outputs

ステップの出力を取得します。

get_outputs()

戻り値

説明

出力名をキーとして使用する StepRunOutputs のディクショナリ。

get_status

パイプライン実行の最新の状態をサービスからフェッチします。

返される一般的な値は、"Running"、"Finished"、"Failed" です。

get_status()

戻り値

説明
str

文字列としての最新の状態

注釈

  • NotStarted - これは、クラウドの送信前にクライアント側の Run オブジェクトが存在する一時的な状態です

  • Queued - ジョブはキューに登録されます。

  • 実行中 - コンピューティング 先でジョブの実行が開始されました。

  • 失敗 - 実行に失敗しました。 通常、実行の Error プロパティは、理由に関する詳細を提供します。

  • 完了 - 実行が正常に完了しました。

  • キャンセル済み - 取り消し要求の後、実行は正常に取り消されました。


   run = experiment.submit(config)
   while run.get_status() not in ['Finished', 'Failed']: # For example purposes only, not exhaustive
       print('Run {} not in terminal state'.format(run.id))
       time.sleep(10)

get_stderr_log

ステップ実行の現在の stderr ログをダンプします。

get_stderr_log()

戻り値

説明
str

ログ文字列。

get_stdout_log

ステップ実行の現在の stdout ログをダンプします。

get_stdout_log()

戻り値

説明
str

ログ文字列。

wait_for_completion

この手順の実行が完了するまで待ちます。

待機後の状態を返します。

wait_for_completion(show_output=True, timeout_seconds=9223372036854775807, raise_on_error=True)

パラメーター

名前 説明
show_output

show_output=True の場合、sys.stdout のパイプラインの実行状態が表示されます。

規定値: True
timeout_seconds
int

タイムアウトするまでに待機する秒数。

規定値: 9223372036854775807
raise_on_error

実行が失敗した状態のときにエラーを発生させるかどうかを示します

規定値: True

戻り値

説明
str

最終的な状態。

属性

pipeline_run_id

このステップの実行に対応するパイプライン実行の ID を返します。

戻り値

説明
str

PipelineRun ID。