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)
매개 변수
Name | Description |
---|---|
experiment
필수
|
단계 실행의 실험 개체입니다. |
step_run_id
필수
|
단계 실행의 실행 ID입니다. |
pipeline_run_id
필수
|
부모 파이프라인 실행의 실행 ID입니다. |
node_id
필수
|
이 단계를 나타내는 그래프의 노드 ID입니다. |
_service_endpoint
|
연결할 엔드포인트입니다. Default value: None
|
_is_reused
|
이 실행이 재사용된 이전 실행인지 여부를 나타냅니다. Default value: False
|
_current_node_id
|
재사용된 노드의 경우 현재 그래프의 노드 ID입니다. Default value: None
|
_reused_run_id
|
재사용된 실행 ID입니다. Default value: None
|
_reused_node_id
|
재사용된 노드 ID입니다. Default value: None
|
_reused_pipeline_run_id
|
재사용된 파이프라인 ID입니다. Default value: None
|
experiment
필수
|
단계 실행의 실험 개체입니다. |
step_run_id
필수
|
단계 실행의 실행 ID입니다. |
pipeline_run_id
필수
|
부모 파이프라인 실행의 실행 ID입니다. |
node_id
필수
|
이 단계를 나타내는 그래프의 노드 ID입니다. |
_service_endpoint
필수
|
연결할 엔드포인트입니다. |
_is_reused
필수
|
이 실행이 재사용된 이전 실행인지 여부를 나타냅니다. |
_current_node_id
필수
|
재사용된 노드의 경우 현재 그래프의 노드 ID입니다. |
_reused_run_id
필수
|
|
_reused_node_id
필수
|
|
_reused_pipeline_run_id
필수
|
|
설명
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 | Description |
---|---|
name
|
자식의 선택적 이름 Default value: None
|
run_id
|
자식에 대한 선택적 실행 ID입니다. 그렇지 않으면 기본값을 사용합니다. Default value: None
|
outputs
|
자식에 대해 추적할 선택적 출력 디렉터리입니다. Default value: None
|
반환
형식 | Description |
---|---|
자식 실행 |
예외
형식 | Description |
---|---|
complete
fail
get_details_with_logs
로그 파일 콘텐츠를 포함한 실행의 상태 세부 정보를 반환합니다.
get_details_with_logs()
반환
형식 | Description |
---|---|
로그 파일 콘텐츠를 포함한 실행 상태 반환 |
예외
형식 | Description |
---|---|
get_job_log
단계 실행에 대한 현재 작업 로그를 덤프합니다.
get_job_log()
반환
형식 | Description |
---|---|
로그 문자열입니다. |
예외
형식 | Description |
---|---|
get_output
지정된 이름의 노드 출력을 가져옵니다.
get_output(name)
매개 변수
Name | Description |
---|---|
name
필수
|
출력의 이름입니다. |
반환
형식 | Description |
---|---|
지정된 이름의 StepRunOutput입니다. |
예외
형식 | Description |
---|---|
get_output_data
지정된 출력에서 출력 데이터를 가져옵니다.
get_output_data(name)
매개 변수
Name | Description |
---|---|
name
필수
|
출력의 이름입니다. |
반환
형식 | Description |
---|---|
단계 출력 데이터를 나타내는 PortDataReference입니다. |
예외
형식 | Description |
---|---|
get_outputs
단계 출력을 가져옵니다.
get_outputs()
반환
형식 | Description |
---|---|
출력 이름을 키로 사용하는 StepRunOutputs 사전입니다. |
예외
형식 | Description |
---|---|
get_status
서비스에서 파이프라인 실행의 최신 상태를 가져옵니다.
일반적으로 반환되는 값은 "Running", "Finished" 및 "Failed"입니다.
get_status()
반환
형식 | Description |
---|---|
문자열로 나타낸 최신 상태 |
예외
형식 | Description |
---|---|
설명
NotStarted - 클라우드 제출 전에 임시 상태 클라이언트 쪽 실행 개체입니다.
Running - 작업이 큐에 대기됩니다.
Running - 컴퓨팅 대상에서 작업이 실행되기 시작했습니다.
Failed - 실행이 실패했습니다. 일반적으로 실행의 오류 속성은 이유에 대한 세부 정보를 제공합니다.
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()
반환
형식 | 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)
매개 변수
Name | Description |
---|---|
show_output
|
show_output=True는 sys.stdout의 파이프라인 실행 상태를 보여 줍니다. Default value: True
|
timeout_seconds
|
시간이 초과되기 전에 대기하는 시간(초)입니다. Default value: 9223372036854775807
|
raise_on_error
|
실행이 실패한 상태일 때 오류를 발생할지 여부를 나타냅니다. Default value: True
|
반환
형식 | Description |
---|---|
최종 상태입니다. |
예외
형식 | Description |
---|---|