다음을 통해 공유


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)

매개 변수

Name Description
workspace
필수

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

module_id
필수
str

모듈의 ID입니다.

name
필수
str

모듈의 이름입니다.

description
필수
str

모듈에 대한 설명입니다.

status
필수
str

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

default_version
필수
str

모듈의 기본 버전입니다.

module_version_list
필수

ModuleVersionDescriptor 개체의 목록입니다.

_module_provider
<xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>

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

Default value: None
_module_version_provider
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>

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

Default value: None
workspace
필수

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

module_id
필수
str

모듈의 ID입니다.

name
필수
str

모듈의 이름입니다.

description
필수
str

모듈에 대한 설명입니다.

status
필수
str

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

default_version
필수
str

모듈의 기본 버전입니다.

module_version_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)

매개 변수

Name Description
workspace
필수

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

name
필수
str

모듈의 이름입니다.

description
필수
str

모듈에 대한 설명입니다.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>

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

Default value: None

반환

형식 Description

모듈 개체

deprecate

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

deprecate()

disable

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

disable()

enable

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

enable()

get

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

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

매개 변수

Name Description
workspace
필수

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

module_id
str

모듈의 ID입니다.

Default value: None
name
str

모듈의 이름입니다.

Default value: None
_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>

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

Default value: None

반환

형식 Description

모듈 개체

get_default

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

get_default()

반환

형식 Description

기본 모듈 버전입니다.

get_default_version

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

get_default_version()

반환

형식 Description
str

모듈의 기본 버전입니다.

get_versions

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

static get_versions(workspace, name, _workflow_provider=None)

매개 변수

Name Description
workspace
필수

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

name
필수
str

모듈의 이름입니다.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>

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

Default value: None

반환

형식 Description

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 Description
name
필수
str

모듈의 이름입니다.

description
필수
str

모듈에 대한 설명입니다.

execution_type
필수
str

모듈의 실행 유형입니다.

input_bindings
필수

모듈 입력 바인딩입니다.

output_bindings
필수

모듈 출력 바인딩입니다.

param_defs

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

Default value: None
create_sequencing_ports

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

Default value: True
allow_reuse

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

Default value: True
version
str

모듈의 버전입니다.

Default value: None
module_type
str

모듈 유형입니다.

Default value: None
step_type
str

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

Default value: None
arguments

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

Default value: None
runconfig
str

python_script_step에 사용할 Runconfig

Default value: None
cloud_settings
str

클라우드에 사용할 설정

Default value: None

반환

형식 Description

모듈 정의 개체입니다.

예외

형식 Description

module_version_list

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

module_version_list()

반환

형식 Description

ModuleVersionDescriptor의 목록

process_source_directory

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

static process_source_directory(name, source_directory, script_name)

매개 변수

Name Description
name
필수
str

단계의 이름입니다.

source_directory
필수
str

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

script_name
필수
str

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

반환

형식 Description

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

예외

형식 Description

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)

매개 변수

Name Description
description
필수
str

모듈에 대한 설명입니다.

execution_type
필수
str

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

inputs
필수

모듈 입력입니다.

outputs
필수

모듈 출력입니다.

param_defs

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

Default value: None
create_sequencing_ports

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

Default value: True
version
str

모듈의 버전입니다.

Default value: None
is_default

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

Default value: False
content_path
str

directory

Default value: None
hash_paths

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

Default value: None
category
str

모듈 버전의 범주

Default value: None
arguments

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

Default value: None
runconfig

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

Default value: None

반환

형식 Description

예외

형식 Description

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)

매개 변수

Name Description
script_name
필수
str

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

description
필수
str

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

inputs
필수

모듈 입력 바인딩입니다.

outputs
필수

모듈 출력 바인딩입니다.

params

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

Default value: None
create_sequencing_ports

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

Default value: True
degree_of_parallelism
int

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

Default value: None
priority
int

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

Default value: None
runtime_version
str

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

Default value: None
compute_target

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

Default value: None
version
str

모듈의 버전입니다.

Default value: None
is_default

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

Default value: False
source_directory
str

directory

Default value: None
hash_paths

hash_paths

Default value: None
category
str

모듈 버전의 범주

Default value: None
arguments

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

Default value: None

반환

형식 Description

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)

매개 변수

Name Description
description
필수
str

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

compute_target
필수
BatchCompute 또는 str

BatchCompute 컴퓨팅 대상입니다.

inputs
필수

모듈 입력 바인딩입니다.

outputs
필수

모듈 출력 바인딩입니다.

params

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

Default value: None
create_sequencing_ports

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

Default value: True
version
str

모듈의 버전입니다.

Default value: None
is_default

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

Default value: False
create_pool

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

Default value: False
pool_id
str

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

Default value: None
delete_batch_job_after_finish

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

Default value: False
delete_batch_pool_after_finish

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

Default value: False
is_positive_exit_code_failure

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

Default value: True
vm_image_urn
str

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

Default value: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
run_task_as_admin

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

Default value: False
target_compute_nodes
int

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

Default value: 1
vm_size
str

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

Default value: standard_d1_v2
executable
str

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

Default value: None
source_directory
str

소스 디렉터리입니다.

Default value: None
category
str

모듈 버전의 범주

Default value: None
arguments

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

Default value: None

반환

형식 Description

예외

형식 Description

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)

매개 변수

Name Description
script_name
필수
str

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

description
필수
str

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

inputs
필수

모듈 입력 바인딩입니다.

outputs
필수

모듈 출력 바인딩입니다.

params

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

Default value: None
create_sequencing_ports

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

Default value: True
version
str

모듈의 버전입니다.

Default value: None
is_default

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

Default value: False
source_directory
str

directory

Default value: None
hash_paths

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

Default value: None
category
str

모듈 버전의 범주

Default value: None
arguments

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

Default value: None
runconfig

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

Default value: None

반환

형식 Description

resolve

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

resolve(version=None)

매개 변수

Name Description
version
Default value: None

반환

형식 Description

사용할 모듈 버전입니다.

set_default_version

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

set_default_version(version_id)

매개 변수

Name Description
version_id
필수

반환

형식 Description
str

기본 버전입니다.

예외

형식 Description

set_description

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

set_description(description)

매개 변수

Name Description
description
필수
str

설정할 설명입니다.

예외

형식 Description

set_name

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

set_name(name)

매개 변수

Name Description
name
필수
str

설정할 이름입니다.

예외

형식 Description

특성

default_version

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

반환

형식 Description
str

기본 버전 문자열입니다.

description

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

반환

형식 Description
str

설명 문자열입니다.

id

모듈의 ID를 가져옵니다.

반환

형식 Description
str

ID입니다.

name

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

반환

형식 Description
str

이름입니다.

status

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

반환

형식 Description
str

상태입니다.