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)
參數
名稱 | Description |
---|---|
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
|
experiment
必要
|
步驟執行的實驗物件。 |
step_run_id
必要
|
步驟回合的執行識別碼。 |
pipeline_run_id
必要
|
父管線執行的執行識別碼。 |
node_id
必要
|
圖形中代表此步驟之節點的識別碼。 |
_service_endpoint
必要
|
要連線的端點。 |
_is_reused
必要
|
指出此執行是否為重複使用的先前執行。 |
_current_node_id
必要
|
針對重複使用的節點,目前圖形上的節點識別碼。 |
_reused_run_id
必要
|
|
_reused_node_id
必要
|
|
_reused_pipeline_run_id
必要
|
|
備註
StepRun 會建立為提交 PipelineRun 之 的子執行。 擷取 PipelineRun 中的所有 StepRuns,如下所示:
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)
參數
名稱 | Description |
---|---|
name
|
子系的選擇性名稱 預設值: None
|
run_id
|
子系的選擇性run_id,否則會使用預設值 預設值: None
|
outputs
|
要追蹤子系的選擇性輸出目錄 預設值: None
|
傳回
類型 | Description |
---|---|
子執行 |
例外狀況
類型 | Description |
---|---|
complete
fail
get_details_with_logs
使用記錄檔內容傳回執行的狀態詳細資料。
get_details_with_logs()
傳回
類型 | Description |
---|---|
使用記錄檔內容傳回執行的狀態 |
例外狀況
類型 | Description |
---|---|
get_job_log
get_output
取得具有指定名稱的節點輸出。
get_output(name)
參數
名稱 | Description |
---|---|
name
必要
|
輸出的名稱。 |
傳回
類型 | Description |
---|---|
具有指定名稱的 StepRunOutput。 |
例外狀況
類型 | Description |
---|---|
get_output_data
從指定的輸出取得輸出資料。
get_output_data(name)
參數
名稱 | Description |
---|---|
name
必要
|
輸出的名稱。 |
傳回
類型 | Description |
---|---|
代表步驟輸出資料的 PortDataReference。 |
例外狀況
類型 | Description |
---|---|
get_outputs
取得步驟輸出。
get_outputs()
傳回
類型 | Description |
---|---|
具有輸出名稱做為索引鍵之 StepRunOutputs 的字典。 |
例外狀況
類型 | Description |
---|---|
get_status
從服務擷取管線執行的最新狀態。
傳回的常見值包括 「Running」、「Finished」 和 「Failed」。
get_status()
傳回
類型 | Description |
---|---|
字串的最新狀態 |
例外狀況
類型 | Description |
---|---|
備註
NotStarted - 這是雲端提交之前,用戶端 Run 物件的暫存狀態
已排入佇列 - 作業已排入佇列。
執行 - 作業已開始在計算目標中執行。
失敗 - 執行失敗。 執行上的 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()
傳回
類型 | Description |
---|---|
記錄字串。 |
例外狀況
類型 | Description |
---|---|
get_stdout_log
傾印步驟執行的目前 stdout 記錄檔。
get_stdout_log()
傳回
類型 | Description |
---|---|
記錄字串。 |
例外狀況
類型 | Description |
---|---|
wait_for_completion
等候此步驟執行完成。
傳回等候之後的狀態。
wait_for_completion(show_output=True, timeout_seconds=9223372036854775807, raise_on_error=True)
參數
名稱 | Description |
---|---|
show_output
|
show_output=True 會顯示 sys.stdout 上的管線執行狀態。 預設值: True
|
timeout_seconds
|
逾時前等待的秒數。 預設值: 9223372036854775807
|
raise_on_error
|
指出當 Run 處於失敗狀態時,是否引發錯誤 預設值: True
|
傳回
類型 | Description |
---|---|
最終狀態。 |
例外狀況
類型 | Description |
---|---|