Share via


AzureBatchStep 클래스

Azure Batch에 작업을 제출하기 위한 Azure ML 파이프라인 단계를 만듭니다.

참고: 이 단계는 디렉터리 및 해당 콘텐츠의 업로드/다운로드를 지원하지 않습니다.

AzureBatchStep 사용 예제는 Notebook https://aka.ms/pl-azbatch를 참조하세요.

Azure Batch 작업을 제출하기 위한 Azure ML Pipeline 단계를 만듭니다.

상속
azureml.pipeline.core._azurebatch_step_base._AzureBatchStepBase
AzureBatchStep

생성자

AzureBatchStep(name, create_pool=False, pool_id=None, delete_batch_job_after_finish=True, delete_batch_pool_after_finish=False, is_positive_exit_code_failure=True, vm_image_urn='urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter', run_task_as_admin=False, target_compute_nodes=1, vm_size='standard_d1_v2', source_directory=None, executable=None, arguments=None, inputs=None, outputs=None, allow_reuse=True, compute_target=None, version=None)

매개 변수

Name Description
name
필수
str

[필수] 단계의 이름입니다.

create_pool

작업을 실행하기 전에 풀을 만들지 여부를 나타냅니다.

기본값: False
pool_id
str

[필수] 작업이 실행되는 풀의 ID입니다. ID는 기존 풀이거나 작업이 제출될 때 만들어질 풀일 수 있습니다.

기본값: None
delete_batch_job_after_finish

작업이 완료된 후 배치 계정에서 작업을 삭제할지 여부를 나타냅니다.

기본값: True
delete_batch_pool_after_finish

작업이 완료된 후 풀을 삭제할지 여부를 나타냅니다.

기본값: False
is_positive_exit_code_failure

작업이 양수 코드와 함께 존재하는 경우 작업이 실패하는지 여부를 나타냅니다.

기본값: True
vm_image_urn
str

create_pool이 True이면 VM이 VirtualMachineConfiguration을 사용합니다. 값 형식: urn:publisher:offer:sku. 예: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter.

기본값: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
run_task_as_admin

작업을 관리자 권한으로 실행해야 하는지 여부를 나타냅니다.

기본값: False
target_compute_nodes
int

create_pool이 True이면 풀에 추가할 컴퓨팅 노드 수를 나타냅니다.

기본값: 1
vm_size
str

create_pool이 True이면 컴퓨팅 노드의 가상 머신 크기를 나타냅니다.

기본값: standard_d1_v2
source_directory
str

모듈 이진 파일, 실행 파일, 어셈블리 등이 포함된 로컬 폴더입니다.

기본값: None
executable
str

[필수] 작업의 일부로 실행될 명령/실행 파일의 이름입니다.

기본값: None
arguments
str

명령/실행 파일에 대한 인수입니다.

기본값: None
inputs

입력 포트 바인딩 목록입니다. 작업이 실행되기 전에 각 입력에 대한 폴더가 만들어집니다. 각 입력에 대한 파일은 스토리지에서 컴퓨팅 노드의 해당 폴더로 복사됩니다. 예를 들어 입력 이름이 input1이고 스토리지의 상대 경로가 some/relative/path/that/can/be/really/long/inputfile.txt인 경우 컴퓨팅의 파일 경로는 ./input1/inputfile.txt입니다. 입력 이름이 32자보다 길면 폴더 이름이 컴퓨팅 대상에서 성공적으로 만들어질 수 있도록 잘리고 고유한 접미사가 추가됩니다.

기본값: None
outputs

출력 포트 바인딩 목록입니다. 입력과 유사하게 작업이 실행되기 전에 각 출력에 대한 폴더가 만들어집니다. 폴더 이름은 출력 이름과 동일합니다. 작업은 해당 폴더에 출력을 저장한다고 가정합니다.

기본값: None
allow_reuse

동일한 설정으로 다시 실행할 때 단계가 이전 결과를 재사용해야 하는지 여부를 나타냅니다. 기본적으로 재사용하도록 설정됩니다. 단계 내용(스크립트/종속성)과 입력 및 매개 변수가 변경되지 않은 상태로 유지되면 이 단계의 이전 실행 결과가 재사용됩니다. 단계를 재사용할 때, 컴퓨팅할 작업을 제출하는 대신 이전 실행의 결과를 후속 단계에 즉시 사용할 수 있습니다. Azure Machine Learning 데이터 세트를 입력으로 사용하는 경우 재사용은 기본 데이터가 변경되었는지 여부가 아니라 데이터 세트의 정의가 변경되었는지 여부에 따라 결정됩니다.

기본값: True
compute_target

[필수] 작업이 실행되는 BatchCompute 컴퓨팅입니다.

기본값: None
version
str

모듈의 기능 변경을 나타내는 선택적 버전 태그입니다.

기본값: None
name
필수
str

[필수] 단계의 이름입니다.

create_pool
필수

작업을 실행하기 전에 풀을 만들지 여부를 나타냅니다.

pool_id
필수
str

[필수] 작업이 실행되는 풀의 ID입니다. ID는 기존 풀이거나 작업이 제출될 때 만들어질 풀일 수 있습니다.

delete_batch_job_after_finish
필수

작업이 완료된 후 배치 계정에서 작업을 삭제할지 여부를 나타냅니다.

delete_batch_pool_after_finish
필수

작업이 완료된 후 풀을 삭제할지 여부를 나타냅니다.

is_positive_exit_code_failure
필수

작업이 양수 코드와 함께 존재하는 경우 작업이 실패하는지 여부를 나타냅니다.

vm_image_urn
필수
str

create_pool이 True이면 VM이 VirtualMachineConfiguration을 사용합니다. 값 형식: urn:publisher:offer:sku. 예: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter.

run_task_as_admin
필수

작업을 관리자 권한으로 실행해야 하는지 여부를 나타냅니다.

target_compute_nodes
필수
int

create_pool이 True이면 풀에 추가할 컴퓨팅 노드 수를 나타냅니다.

vm_size
필수
str

가 True이면 create_pool 컴퓨팅 노드의 가상 머신 크기를 나타냅니다.

source_directory
필수
str

모듈 이진 파일, 실행 파일, 어셈블리 등을 포함하는 로컬 폴더입니다.

executable
필수
str

[필수] 작업의 일부로 실행될 명령/실행 파일의 이름입니다.

arguments
필수

명령/실행 파일에 대한 인수입니다.

inputs
필수

입력 포트 바인딩 목록입니다. 작업이 실행되기 전에 각 입력에 대한 폴더가 만들어집니다. 각 입력에 대한 파일은 스토리지에서 컴퓨팅 노드의 해당 폴더로 복사됩니다. 예를 들어 입력 이름이 input1이고 스토리지의 상대 경로가 some/relative/path/that/can/be/really/long/inputfile.txt인 경우 컴퓨팅의 파일 경로는 ./input1/inputfile.txt입니다. 입력 이름이 32자보다 긴 경우 고유 접미사를 사용하여 잘리고 추가되므로 컴퓨팅에서 폴더 이름을 성공적으로 만들 수 있습니다.

outputs
필수

출력 포트 바인딩 목록입니다. 입력과 유사하게 작업이 실행되기 전에 각 출력에 대한 폴더가 만들어집니다. 폴더 이름은 출력 이름과 동일합니다. 작업에 해당 폴더에 대한 출력이 있다고 가정합니다.

allow_reuse
필수

동일한 설정으로 다시 실행할 때 단계에서 이전 결과를 재사용해야 하는지 여부를 나타냅니다. 기본적으로 재사용하도록 설정됩니다. 단계 내용(스크립트/종속성)과 입력 및 매개 변수가 변경되지 않은 상태로 유지되면 이 단계의 이전 실행 결과가 재사용됩니다. 단계를 재사용할 때, 컴퓨팅할 작업을 제출하는 대신 이전 실행의 결과를 후속 단계에 즉시 사용할 수 있습니다. Azure Machine Learning 데이터 세트를 입력으로 사용하는 경우 재사용은 기본 데이터가 변경되었는지 여부가 아니라 데이터 세트의 정의가 변경되었는지 여부에 따라 결정됩니다.

compute_target
필수

[필수] 작업이 실행되는 BatchCompute 컴퓨팅입니다.

version
필수
str

모듈의 기능 변경을 나타내는 선택적 버전 태그입니다.

설명

다음 예에서는 Azure Machine Learning 파이프라인에서 AzureBatchStep을 사용하는 방법을 보여 줍니다.


   step = AzureBatchStep(
               name="Azure Batch Job",
               pool_id="MyPoolName", # Replace this with the pool name of your choice
               inputs=[testdata],
               outputs=[outputdata],
               executable="azurebatch.cmd",
               arguments=[testdata, outputdata],
               compute_target=batch_compute,
               source_directory=binaries_folder,
   )

전체 샘플은 https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-azurebatch-to-run-a-windows-executable.ipynb에서 사용할 수 있습니다.

메서드

create_node

AzureBatch 단계에서 노드를 만들고 지정된 그래프에 추가합니다.

이 메서드는 직접 사용할 수 없습니다. 이 단계에서 파이프라인이 인스턴스화되면 Azure ML은 이 메서드를 통해 필요한 매개 변수를 자동으로 전달하므로 워크플로를 나타내는 파이프라인 그래프에 단계를 추가할 수 있습니다.

create_node

AzureBatch 단계에서 노드를 만들고 지정된 그래프에 추가합니다.

이 메서드는 직접 사용할 수 없습니다. 이 단계에서 파이프라인이 인스턴스화되면 Azure ML은 이 메서드를 통해 필요한 매개 변수를 자동으로 전달하므로 워크플로를 나타내는 파이프라인 그래프에 단계를 추가할 수 있습니다.

create_node(graph, default_datastore, context)

매개 변수

Name Description
graph
필수

노드를 추가할 그래프 개체입니다.

default_datastore
필수

기본 데이터 저장소입니다.

context
필수
<xref:azureml.pipeline.core._GraphContext>

그래프 컨텍스트입니다.

반환

형식 Description

만들어진 노드입니다.