StepRun クラス

Pipeline 内のステップの実行。

親のパイプライン実行が送信され、パイプラインによってステップ実行が送信されると、このクラスを使用して実行の詳細を管理したり、状態確認したり、取得したりできます。

StepRun を初期化します。

継承
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
Experiment
必須

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

step_run_id
str
必須

ステップ実行の実行 ID。

pipeline_run_id
str
必須

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

node_id
str
必須

この手順を表すグラフ内のノードの ID。

_service_endpoint
str
既定値: None

接続するエンドポイント。

_is_reused
bool
既定値: False

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

_current_node_id
str
既定値: None

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

_reused_run_id
str
既定値: None

再利用された実行 ID。

_reused_node_id
str
既定値: None

再利用されたノード ID。

_reused_pipeline_run_id
str
既定値: None

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

experiment
Experiment
必須

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

step_run_id
str
必須

ステップ実行の実行 ID。

pipeline_run_id
str
必須

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

node_id
str
必須

この手順を表すグラフ内のノードの ID。

_service_endpoint
str
必須

接続するエンドポイント。

_is_reused
bool
必須

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

_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
既定値: None

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

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 - ジョブはキューに登録されています。

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

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

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

  • Canceled - 取り消し要求の後、実行は正常に取り消されました。


   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
bool
既定値: True

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

timeout_seconds
int
既定値: 9223372036854775807

タイムアウトするまでに待機する時間 (秒)。

raise_on_error
bool
既定値: True

Run が失敗状態のときにエラーが生成されるかどうかを示します

戻り値

最終的な状態。

の戻り値の型 :

str

例外

属性

pipeline_run_id

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

戻り値

PipelineRun ID。

の戻り値の型 :

str