다음을 통해 공유


Module 클래스

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

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

모듈을 초기화합니다.

생성자

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 일괄 처리를 사용하는 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

Module 개체

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

Module 개체

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

Module def 개체입니다.

예외

형식 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 같습니다.adlcloudAzureBatchCloud

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

디렉토리

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

ModuleVersion 매개 변수는 이름 default_value 쌍으로 표시됩니다.

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

디렉토리

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 일괄 처리를 사용하는 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

ModuleVersion 매개 변수는 이름 default_value 쌍으로 표시됩니다.

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

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

Default value: False
delete_batch_pool_after_finish

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

Default value: False
is_positive_exit_code_failure

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

Default value: True
vm_image_urn
str

True이고 VM이 VirtualMachineConfiguration을 사용하는 경우 create_pool 이 매개 변수는 사용할 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

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

Default value: 1
vm_size
str

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

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

ModuleVersion 매개 변수는 이름 default_value 쌍으로 표시됩니다.

Default value: None
create_sequencing_ports

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

Default value: True
version
str

모듈의 버전입니다.

Default value: None
is_default

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

Default value: False
source_directory
str

디렉토리

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

상태입니다.