다음을 통해 공유


Module 클래스

Azure Machine Learning 파이프라인에 사용되는 계산 단위를 나타냅니다.

모듈은 컴퓨팅 대상에서 실행되는 파일의 컬렉션이며 인터페이스에 대한 설명입니다. 파일 컬렉션은 스크립트, 이진 파일 또는 컴퓨팅 대상에서 실행하는 데 필요한 기타 파일일 수 있습니다. 모듈 인터페이스는 입력, 출력, 매개 변수 정의를 설명합니다. 특정 값이나 데이터에 바인딩하지 않습니다. 모듈에는 모듈에 대해 정의된 파일 컬렉션을 캡처하는 스냅샷이 연결되어 있습니다.

모듈을 초기화합니다.

상속
builtins.object
Module

생성자

Module(workspace, module_id, name, description, status, default_version, module_version_list, _module_provider=None, _module_version_provider=None)

매개 변수

workspace
Workspace
필수

이 모듈이 속한 작업 영역 개체입니다.

module_id
str
필수

모듈의 ID입니다.

name
str
필수

모듈의 이름입니다.

description
str
필수

모듈에 대한 설명입니다.

status
str
필수

모듈의 새 상태(‘활성’, ‘사용되지 않음’ 또는 ‘사용 안 함’)입니다.

default_version
str
필수

모듈의 기본 버전입니다.

module_version_list
list
필수

ModuleVersionDescriptor 개체의 목록입니다.

_module_provider
<xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>
기본값: None

(내부용으로만 사용) 모듈 공급자입니다.

_module_version_provider
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
기본값: None

(내부용으로만 사용) ModuleVersion 공급자입니다.

workspace
Workspace
필수

이 모듈이 속한 작업 영역 개체입니다.

module_id
str
필수

모듈의 ID입니다.

name
str
필수

모듈의 이름입니다.

description
str
필수

모듈에 대한 설명입니다.

status
str
필수

모듈의 새 상태(‘활성’, ‘사용되지 않음’ 또는 ‘사용 안 함’)입니다.

default_version
str
필수

모듈의 기본 버전입니다.

module_version_list
list
필수

ModuleVersionDescriptor 개체의 목록입니다.

_module_provider
<xref:<xref:_AevaMlModuleProvider object>>
필수

모듈 공급자입니다.

_module_version_provider
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
필수

ModuleVersion 공급자입니다.

설명

모듈은 해당 버전의 컨테이너 역할을 합니다. 다음 예제에서 ModuleVersion은 publish_python_script 메서드에서 만들어지고 두 개의 입력과 두 개의 출력이 있습니다. create ModuleVersion이 기본 버전입니다(is_default는 True로 설정됨).


   out_sum = OutputPortDef(name="out_sum", default_datastore_name=datastore.name, default_datastore_mode="mount",
                           label="Sum of two numbers")
   out_prod = OutputPortDef(name="out_prod", default_datastore_name=datastore.name, default_datastore_mode="mount",
                            label="Product of two numbers")
   entry_version = module.publish_python_script("calculate.py", "initial",
                                                inputs=[], outputs=[out_sum, out_prod], params = {"initialNum":12},
                                                version="1", source_directory="./calc")

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

이 모듈은 다른 단계에서 파이프라인을 정의할 때 ModuleStep을 사용하여 사용할 수 있습니다.

다음 샘플은 PipelineData를 사용하여 파이프라인에 사용되는 데이터를 ModuleVersion의 입력 및 출력에 연결하는 방법을 보여 줍니다.


   middle_step_input_wiring = {"in1":first_sum, "in2":first_prod}
   middle_sum = PipelineData("middle_sum", datastore=datastore, output_mode="mount",is_directory=False)
   middle_prod = PipelineData("middle_prod", datastore=datastore, output_mode="mount",is_directory=False)
   middle_step_output_wiring = {"out_sum":middle_sum, "out_prod":middle_prod}

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

그런 다음, ModuleStep을 만들 때 매핑을 사용할 수 있습니다.


   middle_step = ModuleStep(module=module,
                            inputs_map= middle_step_input_wiring,
                            outputs_map= middle_step_output_wiring,
                            runconfig=RunConfiguration(), compute_target=aml_compute,
                            arguments = ["--file_num1", first_sum, "--file_num2", first_prod,
                                         "--output_sum", middle_sum, "--output_product", middle_prod])

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

제출할 때 사용할 모듈의 버전을 확인하고 다음 프로세스를 따릅니다.

  • 사용할 수 없는 모든 버전 제거
  • 특정 버전이 명시된 경우 해당 버전을 사용합니다.
  • 기본 버전이 모듈에 정의된 경우 해당 버전을 사용합니다.
  • 모든 버전이 문자 없이 유의적 버전 관리를 따르는 경우 최곳값을 사용합니다.
  • 마지막으로 업데이트된 모듈의 버전을 가져옵니다.

파이프라인 생성 시 모듈의 입력 및 출력에 대한 노드의 입력 및 출력 매핑이 정의되기 때문에 제출 시 확인된 버전의 인터페이스가 파이프라인 생성 시 확인된 것과 다른 경우 파이프라인 제출에 실패합니다.

기본 모듈은 기본 버전을 동일하게 유지하면서 새 버전으로 업데이트할 수 있습니다.

모듈은 작업 영역 내에서 고유하게 이름이 지정됩니다.

메서드

create

모듈을 만듭니다.

deprecate

모듈을 ‘사용되지 않음’으로 설정합니다.

disable

모듈을 ‘사용 안 함’으로 설정합니다.

enable

모듈을 ‘활성’으로 설정합니다.

get

이름 또는 ID를 기준으로 모듈을 가져옵니다. 둘 다 제공되지 않으면 예외를 throw합니다.

get_default

기본 모듈 버전을 가져옵니다.

get_default_version

모듈의 기본 버전을 가져옵니다.

get_versions

모듈의 모든 버전을 가져옵니다.

module_def_builder

단계를 설명하는 모듈 정의 개체를 만듭니다.

module_version_list

모듈 버전 목록을 가져옵니다.

process_source_directory

단계의 소스 디렉터리를 처리하고 스크립트가 있는지 확인합니다.

publish

ModuleVersion을 만들고 현재 모듈에 추가합니다.

publish_adla_script

ADLA(Azure Data Lake Analytics)를 기반으로 ModuleVersion을 만들고 현재 모듈에 추가합니다.

publish_azure_batch

Azure Batch를 사용하는 ModuleVersion을 만들고 현재 모듈에 추가합니다.

publish_python_script

Python 스크립트를 기반으로 하는 ModuleVersion을 만들고 현재 모듈에 추가합니다.

resolve

올바른 ModuleVersion을 확인하고 반환합니다.

set_default_version

모듈의 기본 ModuleVersion을 설정합니다.

set_description

모듈에 대한 설명을 설정합니다.

set_name

모듈의 이름을 설정합니다.

create

모듈을 만듭니다.

static create(workspace, name, description, _workflow_provider=None)

매개 변수

workspace
Workspace
필수

모듈을 만들 작업 영역입니다.

name
str
필수

모듈의 이름입니다.

description
str
필수

모듈에 대한 설명입니다.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
기본값: None

(내부용으로만 사용) 워크플로 공급자입니다.

반환

모듈 개체

반환 형식

deprecate

모듈을 ‘사용되지 않음’으로 설정합니다.

deprecate()

disable

모듈을 ‘사용 안 함’으로 설정합니다.

disable()

enable

모듈을 ‘활성’으로 설정합니다.

enable()

get

이름 또는 ID를 기준으로 모듈을 가져옵니다. 둘 다 제공되지 않으면 예외를 throw합니다.

static get(workspace, module_id=None, name=None, _workflow_provider=None)

매개 변수

workspace
Workspace
필수

모듈을 만들 작업 영역입니다.

module_id
str
기본값: None

모듈의 ID입니다.

name
str
기본값: None

모듈의 이름입니다.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
기본값: None

(내부용으로만 사용) 워크플로 공급자입니다.

반환

모듈 개체

반환 형식

get_default

기본 모듈 버전을 가져옵니다.

get_default()

반환

기본 모듈 버전입니다.

반환 형식

get_default_version

모듈의 기본 버전을 가져옵니다.

get_default_version()

반환

모듈의 기본 버전입니다.

반환 형식

str

get_versions

모듈의 모든 버전을 가져옵니다.

static get_versions(workspace, name, _workflow_provider=None)

매개 변수

workspace
Workspace
필수

모듈이 만들어진 작업 영역입니다.

name
str
필수

모듈의 이름입니다.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
기본값: None

(내부용으로만 사용) 워크플로 공급자입니다.

반환

ModuleVersionDescriptor의 목록

반환 형식

module_def_builder

단계를 설명하는 모듈 정의 개체를 만듭니다.

static module_def_builder(name, description, execution_type, input_bindings, output_bindings, param_defs=None, create_sequencing_ports=True, allow_reuse=True, version=None, module_type=None, step_type=None, arguments=None, runconfig=None, cloud_settings=None)

매개 변수

name
str
필수

모듈의 이름입니다.

description
str
필수

모듈에 대한 설명입니다.

execution_type
str
필수

모듈의 실행 유형입니다.

input_bindings
list
필수

모듈 입력 바인딩입니다.

output_bindings
list
필수

모듈 출력 바인딩입니다.

param_defs
list
기본값: None

모듈 매개 변수 정의입니다.

create_sequencing_ports
bool
기본값: True

모듈에 대해 시퀀싱 포트를 만들지 여부를 나타냅니다.

allow_reuse
bool
기본값: True

모듈을 다시 사용할 수 있는지 여부를 나타냅니다.

version
str
기본값: None

모듈의 버전입니다.

module_type
str
기본값: None

모듈 유형입니다.

step_type
str
기본값: None

이 모듈과 연결된 단계 유형(예: “PythonScriptStep”, “HyperDriveStep” 등)입니다.

arguments
list
기본값: None

이 모듈을 호출할 때 사용할 주석이 추가된 인수 목록

runconfig
str
기본값: None

python_script_step에 사용할 Runconfig

cloud_settings
str
기본값: None

클라우드에 사용할 설정

반환

모듈 정의 개체입니다.

반환 형식

예외

module_version_list

모듈 버전 목록을 가져옵니다.

module_version_list()

반환

ModuleVersionDescriptor의 목록

반환 형식

process_source_directory

단계의 소스 디렉터리를 처리하고 스크립트가 있는지 확인합니다.

static process_source_directory(name, source_directory, script_name)

매개 변수

name
str
필수

단계의 이름입니다.

source_directory
str
필수

단계의 원본 디렉터리입니다.

script_name
str
필수

단계의 스크립트 이름입니다.

반환

원본 디렉터리 및 해시 경로입니다.

반환 형식

예외

publish

ModuleVersion을 만들고 현재 모듈에 추가합니다.

publish(description, execution_type, inputs, outputs, param_defs=None, create_sequencing_ports=True, version=None, is_default=False, content_path=None, hash_paths=None, category=None, arguments=None, runconfig=None)

매개 변수

description
str
필수

모듈에 대한 설명입니다.

execution_type
str
필수

모듈의 실행 유형입니다. 허용되는 값은 esCloud, adlcloud, AzureBatchCloud입니다.

inputs
list
필수

모듈 입력입니다.

outputs
list
필수

모듈 출력입니다.

param_defs
list
기본값: None

모듈 매개 변수 정의입니다.

create_sequencing_ports
bool
기본값: True

모듈에 대해 시퀀싱 포트를 만들지 여부를 나타냅니다.

version
str
기본값: None

모듈의 버전입니다.

is_default
bool
기본값: False

게시된 버전이 기본 버전인지 여부를 나타냅니다.

content_path
str
기본값: None

directory

hash_paths
list
기본값: None

단계 내용의 변경 내용을 확인할 때 해시할 경로 목록입니다. 검색된 변경 내용이 없으면 파이프라인은 이전 실행의 단계 내용을 재사용합니다. 기본적으로 source_directory의 콘텐츠가 해시됩니다(.amlignore 또는 .gitignore에 나열된 파일 제외). 사용되지 않음: 더 이상 필요하지 않습니다.

category
str
기본값: None

모듈 버전의 범주

arguments
list
기본값: None

모듈을 호출할 때 사용할 인수입니다. 인수는 문자열, 입력 참조(InputPortDef), 출력 참조(OutputPortDef), 파이프라인 매개 변수(PipelineParameter)일 수 있습니다.

runconfig
RunConfiguration
기본값: None

선택적 RunConfiguration입니다. RunConfiguration을 사용하여 conda 종속성 및 Docker 이미지와 같은 실행에 대한 추가 요구 사항을 지정할 수 있습니다.

반환 형식

예외

publish_adla_script

ADLA(Azure Data Lake Analytics)를 기반으로 ModuleVersion을 만들고 현재 모듈에 추가합니다.

publish_adla_script(script_name, description, inputs, outputs, params=None, create_sequencing_ports=True, degree_of_parallelism=None, priority=None, runtime_version=None, compute_target=None, version=None, is_default=False, source_directory=None, hash_paths=None, category=None, arguments=None)

매개 변수

script_name
str
필수

source_directory를 기준으로 하는 ADLA 스크립트의 이름입니다.

description
str
필수

모듈 버전에 대한 설명입니다.

inputs
list
필수

모듈 입력 바인딩입니다.

outputs
list
필수

모듈 출력 바인딩입니다.

params
dict
기본값: None

name-default_value 쌍으로 표시되는 ModuleVersion 매개 변수입니다.

create_sequencing_ports
bool
기본값: True

모듈에 대해 시퀀싱 포트를 만들지 여부를 나타냅니다.

degree_of_parallelism
int
기본값: None

이 작업에 사용할 병렬 처리 수준입니다.

priority
int
기본값: None

현재 작업에 사용할 우선 순위 값입니다.

runtime_version
str
기본값: None

ADLA(Azure Data Lake Analytics) 엔진의 런타임 버전입니다.

compute_target
AdlaCompute, str
기본값: None

이 작업에 사용할 ADLA 컴퓨팅입니다.

version
str
기본값: None

모듈의 버전입니다.

is_default
bool
기본값: False

게시된 버전이 기본 버전인지 여부를 나타냅니다.

source_directory
str
기본값: None

directory

hash_paths
list
기본값: None

hash_paths

category
str
기본값: None

모듈 버전의 범주

arguments
list
기본값: None

모듈을 호출할 때 사용할 인수입니다. 인수는 문자열, 입력 참조(InputPortDef), 출력 참조(OutputPortDef), 파이프라인 매개 변수(PipelineParameter)일 수 있습니다.

반환 형식

publish_azure_batch

Azure Batch를 사용하는 ModuleVersion을 만들고 현재 모듈에 추가합니다.

publish_azure_batch(description, compute_target, inputs, outputs, params=None, create_sequencing_ports=True, version=None, is_default=False, create_pool=False, pool_id=None, delete_batch_job_after_finish=False, 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', executable=None, source_directory=None, category=None, arguments=None)

매개 변수

description
str
필수

모듈 버전에 대한 설명입니다.

compute_target
BatchCompute 또는 str
필수

BatchCompute 컴퓨팅 대상입니다.

inputs
list
필수

모듈 입력 바인딩입니다.

outputs
list
필수

모듈 출력 바인딩입니다.

params
dict
기본값: None

name-default_value 쌍으로 표시되는 ModuleVersion 매개 변수입니다.

create_sequencing_ports
bool
기본값: True

모듈에 대해 시퀀싱 포트를 만들지 여부를 나타냅니다.

version
str
기본값: None

모듈의 버전입니다.

is_default
bool
기본값: False

게시된 버전이 기본 버전인지 여부를 나타냅니다.

create_pool
bool
기본값: False

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

pool_id
str
기본값: None

(필수) 작업이 실행될 풀의 ID입니다.

delete_batch_job_after_finish
bool
기본값: False

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

delete_batch_pool_after_finish
bool
기본값: False

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

is_positive_exit_code_failure
bool
기본값: True

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

vm_image_urn
str
기본값: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter

create_pool이 True이고 VM이 VirtualMachineConfiguration을 사용하는 경우 이 매개 변수는 사용할 VM 이미지를 나타냅니다. 값 형식: urn:publisher:offer:sku. 예: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter.

run_task_as_admin
bool
기본값: False

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

target_compute_nodes
int
기본값: 1

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

vm_size
str
기본값: standard_d1_v2

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

executable
str
기본값: None

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

source_directory
str
기본값: None

소스 디렉터리입니다.

category
str
기본값: None

모듈 버전의 범주

arguments
list
기본값: None

모듈을 호출할 때 사용할 인수입니다. 인수는 문자열, 입력 참조(InputPortDef), 출력 참조(OutputPortDef), 파이프라인 매개 변수(PipelineParameter)일 수 있습니다.

반환 형식

예외

publish_python_script

Python 스크립트를 기반으로 하는 ModuleVersion을 만들고 현재 모듈에 추가합니다.

publish_python_script(script_name, description, inputs, outputs, params=None, create_sequencing_ports=True, version=None, is_default=False, source_directory=None, hash_paths=None, category=None, arguments=None, runconfig=None)

매개 변수

script_name
str
필수

source_directory를 기준으로 하는 Python 스크립트의 이름입니다.

description
str
필수

모듈 버전에 대한 설명입니다.

inputs
list
필수

모듈 입력 바인딩입니다.

outputs
list
필수

모듈 출력 바인딩입니다.

params
dict
기본값: None

name-default_value 쌍으로 표시되는 ModuleVersion 매개 변수입니다.

create_sequencing_ports
bool
기본값: True

모듈에 대해 시퀀싱 포트를 만들지 여부를 나타냅니다.

version
str
기본값: None

모듈의 버전입니다.

is_default
bool
기본값: False

게시된 버전이 기본 버전인지 여부를 나타냅니다.

source_directory
str
기본값: None

directory

hash_paths
list
기본값: None

단계 내용의 변경 내용을 확인할 때 해시할 경로 목록입니다. 검색된 변경 내용이 없으면 파이프라인은 이전 실행의 단계 내용을 재사용합니다. 기본적으로 source_directory의 콘텐츠가 해시됩니다(.amlignore 또는 .gitignore에 나열된 파일 제외). 사용되지 않음: 더 이상 필요하지 않습니다.

category
str
기본값: None

모듈 버전의 범주

arguments
list
기본값: None

모듈을 호출할 때 사용할 인수입니다. 인수는 문자열, 입력 참조(InputPortDef), 출력 참조(OutputPortDef), 파이프라인 매개 변수(PipelineParameter)일 수 있습니다.

runconfig
RunConfiguration
기본값: None

선택적 RunConfiguration입니다. RunConfiguration을 사용하여 conda 종속성 및 Docker 이미지와 같은 실행에 대한 추가 요구 사항을 지정할 수 있습니다.

반환 형식

resolve

올바른 ModuleVersion을 확인하고 반환합니다.

resolve(version=None)

매개 변수

version
기본값: None

반환

사용할 모듈 버전입니다.

반환 형식

set_default_version

모듈의 기본 ModuleVersion을 설정합니다.

set_default_version(version_id)

매개 변수

version_id
필수

반환

기본 버전입니다.

반환 형식

str

예외

set_description

모듈에 대한 설명을 설정합니다.

set_description(description)

매개 변수

description
str
필수

설정할 설명입니다.

예외

set_name

모듈의 이름을 설정합니다.

set_name(name)

매개 변수

name
str
필수

설정할 이름입니다.

예외

특성

default_version

모듈의 기본 버전을 가져옵니다.

반환

기본 버전 문자열입니다.

반환 형식

str

description

모듈에 대한 설명을 가져옵니다.

반환

설명 문자열입니다.

반환 형식

str

id

모듈의 ID를 가져옵니다.

반환

ID입니다.

반환 형식

str

name

모듈의 이름을 가져옵니다.

반환

이름입니다.

반환 형식

str

status

모듈의 상태를 가져옵니다.

반환

상태입니다.

반환 형식

str