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
必需

步骤运行的试验对象。

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 检索步骤输出的 dict,或使用 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 - 这是客户端运行对象在云提交之前所处的临时状态

  • Queued - 作业已排队。

  • 正在运行 - 作业已开始在计算目标中运行。

  • 失败 - 运行失败。 通常,运行上的 Error 属性会提供有关原因的详细信息。

  • Finished - 运行已成功完成。

  • 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

show_output=True 显示 sys.databases 上的管道运行状态。

默认值: True
timeout_seconds
int

超时之前等待的秒数。

默认值: 9223372036854775807
raise_on_error

指示当运行处于失败状态时是否引发错误

默认值: True

返回

类型 说明
str

最终状态。

例外

类型 说明

属性

pipeline_run_id

返回与此步骤运行对应的管道运行的 ID。

返回

类型 说明
str

PipelineRun ID。