Module Classe
Representa uma unidade de computação usada em um pipeline do Azure Machine Learning.
Módulo é uma coleção de arquivos que serão executados em um destino de computação e uma descrição de uma interface. A coleção de arquivos pode incluir script, binários ou quaisquer outros arquivos necessários para execução no destino de computação. A interface do módulo descreve as entradas, saídas e definições de parâmetro. Ela não os associa a valores ou dados específicos. Um módulo tem um instantâneo associado, que captura a coleção de arquivos definidos para o módulo.
Inicializar Módulo.
- Herança
-
builtins.objectModule
Construtor
Module(workspace, module_id, name, description, status, default_version, module_version_list, _module_provider=None, _module_version_provider=None)
Parâmetros
Nome | Description |
---|---|
workspace
Obrigatório
|
O objeto de workspace ao qual este Módulo pertence. |
module_id
Obrigatório
|
A ID do Módulo. |
name
Obrigatório
|
O nome do Módulo. |
description
Obrigatório
|
A descrição do Módulo. |
status
Obrigatório
|
O novo status do Módulo: 'Ativo', 'Preterido' ou 'Desabilitado'. |
default_version
Obrigatório
|
A versão padrão do Módulo. |
module_version_list
Obrigatório
|
Uma lista de objetos ModuleVersionDescriptor. |
_module_provider
|
<xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>
(Somente uso interno.) O provedor de módulos. Valor padrão: None
|
_module_version_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
(Somente uso interno.) O provedor ModuleVersion. Valor padrão: None
|
workspace
Obrigatório
|
O objeto de workspace ao qual este Módulo pertence. |
module_id
Obrigatório
|
A ID do Módulo. |
name
Obrigatório
|
O nome do Módulo. |
description
Obrigatório
|
A descrição do Módulo. |
status
Obrigatório
|
O novo status do Módulo: 'Ativo', 'Preterido' ou 'Desabilitado'. |
default_version
Obrigatório
|
A versão padrão do Módulo. |
module_version_list
Obrigatório
|
Uma lista de objetos ModuleVersionDescriptor. |
_module_provider
Obrigatório
|
<xref:<xref:_AevaMlModuleProvider object>>
O provedor do Módulo. |
_module_version_provider
Obrigatório
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
O provedor do ModuleVersion. |
Comentários
Um Módulo atua como contêiner de suas versões. No exemplo a seguir, um ModuleVersion é criado no método publish_python_script e tem duas entradas e duas saídas. O ModuleVersion é a versão padrão (is_default
está definido como 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")
O exemplo completo está disponível em https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Esse módulo pode ser usado ao definir um pipeline, em etapas diferentes, usando um ModuleStep.
O exemplo a seguir mostra como transferir os dados usados no pipeline para entradas e saídas de um ModuleVersion usando PipelineData:
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}
O exemplo completo está disponível em https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
O mapeamento pode ser usado ao criar o 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])
O exemplo completo está disponível em https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
A resolução da versão do módulo a ser usada ocorre após o envio e segue este processo:
- Remover todas as versões desabilitadas
- Se uma versão específica foi indicada, use-a, senão
- Se uma versão padrão foi definida para o Módulo, use-a, senão
- Se todas as versões seguirem o controle de versão semântico sem letras, pegue o valor mais alto, senão
- Pegar a versão do Módulo atualizada por último
Observe que, como o mapeamento de entradas e saídas de um nó para a entrada e saída de um módulo é definido após a criação do Pipeline, se a versão resolvida após o envio tiver uma interface diferente da que é resolvida após a criação do pipeline, o envio do pipeline falhará.
O módulo subjacente pode ser atualizado com novas versões, mantendo a mesma versão padrão.
Os módulos são nomeados exclusivamente em um workspace.
Métodos
create |
Criar o Módulo. |
deprecate |
Definir o Módulo como 'Preterido'. |
disable |
Definir o Módulo como 'Desabilitado'. |
enable |
Definir o Módulo como 'Ativo'. |
get |
Obtenha o Módulo por nome ou por ID; lança uma exceção se nenhum dos dois for informado. |
get_default |
Obter a versão padrão do módulo. |
get_default_version |
Obter a versão padrão do Módulo. |
get_versions |
Obter todas as versões do Módulo. |
module_def_builder |
Crie o objeto de definição do módulo que descreve a etapa. |
module_version_list |
Obtenha a lista de versões do Módulo. |
process_source_directory |
Processe o diretório de origem da etapa e verifique se o script existe. |
publish |
Crie um ModuleVersion e adicione-o ao Módulo atual. |
publish_adla_script |
Crie um ModuleVersion com base no ADLA (Azure Data Lake Analytics) e adicione-o ao Módulo atual. |
publish_azure_batch |
Crie um ModuleVersion que usa o lote do Azure e adicione-o ao Módulo atual. |
publish_python_script |
Crie um ModuleVersion baseado em um script Python e adicione-o ao Módulo atual. |
resolve |
Resolva e retorne o ModuleVersion correto. |
set_default_version |
Defina o ModuleVersion padrão do Módulo. |
set_description |
Defina a descrição do Módulo. |
set_name |
Defina o nome do Módulo. |
create
Criar o Módulo.
static create(workspace, name, description, _workflow_provider=None)
Parâmetros
Nome | Description |
---|---|
workspace
Obrigatório
|
O workspace em que o Módulo deve ser criado. |
name
Obrigatório
|
O nome do Módulo. |
description
Obrigatório
|
A descrição do Módulo. |
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Somente uso interno.) O provedor de fluxo de trabalho. Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Objeto do módulo |
deprecate
Definir o Módulo como 'Preterido'.
deprecate()
disable
Definir o Módulo como 'Desabilitado'.
disable()
enable
Definir o Módulo como 'Ativo'.
enable()
get
Obtenha o Módulo por nome ou por ID; lança uma exceção se nenhum dos dois for informado.
static get(workspace, module_id=None, name=None, _workflow_provider=None)
Parâmetros
Nome | Description |
---|---|
workspace
Obrigatório
|
O workspace em que o Módulo deve ser criado. |
module_id
|
A ID do Módulo. Valor padrão: None
|
name
|
O nome do Módulo. Valor padrão: None
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Somente uso interno.) O provedor de fluxo de trabalho. Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Objeto do módulo |
get_default
Obter a versão padrão do módulo.
get_default()
Retornos
Tipo | Description |
---|---|
A versão padrão do módulo. |
get_default_version
Obter a versão padrão do Módulo.
get_default_version()
Retornos
Tipo | Description |
---|---|
A versão padrão do Módulo. |
get_versions
Obter todas as versões do Módulo.
static get_versions(workspace, name, _workflow_provider=None)
Parâmetros
Nome | Description |
---|---|
workspace
Obrigatório
|
O workspace em que o Módulo foi criado. |
name
Obrigatório
|
O nome do Módulo. |
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Somente uso interno.) O provedor de fluxo de trabalho. Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
A lista de ModuleVersionDescriptor |
module_def_builder
Crie o objeto de definição do módulo que descreve a etapa.
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)
Parâmetros
Nome | Description |
---|---|
name
Obrigatório
|
O nome do Módulo. |
description
Obrigatório
|
A descrição do Módulo. |
execution_type
Obrigatório
|
O tipo de execução do Módulo. |
input_bindings
Obrigatório
|
As associações de entrada do Módulo. |
output_bindings
Obrigatório
|
As associações de saída do Módulo. |
param_defs
|
As definições de parâmetro do Módulo. Valor padrão: None
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o Módulo. Valor padrão: True
|
allow_reuse
|
Indica se o Módulo estará disponível para ser reutilizado. Valor padrão: True
|
version
|
A versão do Módulo. Valor padrão: None
|
module_type
|
O tipo de Módulo. Valor padrão: None
|
step_type
|
Tipo de etapa associada a esse módulo, por exemplo, "PythonScriptStep", "HyperDriveStep" etc. Valor padrão: None
|
arguments
|
Lista de argumentos anotados a ser usada ao chamar esse módulo Valor padrão: None
|
runconfig
|
Runconfig que será usado para python_script_step Valor padrão: None
|
cloud_settings
|
Configurações que serão usadas para nuvens Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
O objeto padrão do Módulo. |
Exceções
Tipo | Description |
---|---|
module_version_list
Obtenha a lista de versões do Módulo.
module_version_list()
Retornos
Tipo | Description |
---|---|
A lista de ModuleVersionDescriptor |
process_source_directory
Processe o diretório de origem da etapa e verifique se o script existe.
static process_source_directory(name, source_directory, script_name)
Parâmetros
Nome | Description |
---|---|
name
Obrigatório
|
O nome da etapa. |
source_directory
Obrigatório
|
O diretório de origem da etapa. |
script_name
Obrigatório
|
O nome do script da etapa. |
Retornos
Tipo | Description |
---|---|
O diretório de origem e os caminhos de hash. |
Exceções
Tipo | Description |
---|---|
publish
Crie um ModuleVersion e adicione-o ao Módulo atual.
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)
Parâmetros
Nome | Description |
---|---|
description
Obrigatório
|
A descrição do Módulo. |
execution_type
Obrigatório
|
O tipo de execução do Módulo.
Os valores aceitáveis são |
inputs
Obrigatório
|
As entradas do Módulo. |
outputs
Obrigatório
|
As saídas do Módulo. |
param_defs
|
As definições de parâmetro do Módulo. Valor padrão: None
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o Módulo. Valor padrão: True
|
version
|
A versão do Módulo. Valor padrão: None
|
is_default
|
Indica se a versão publicada deve ser o padrão. Valor padrão: False
|
content_path
|
directory Valor padrão: None
|
hash_paths
|
Uma lista de caminhos para hash ao verificar alterações no conteúdo da etapa. Se não houver alterações detectadas, o pipeline reutilizará o conteúdo da etapa de uma execução anterior. Por padrão, o conteúdo do Valor padrão: None
|
category
|
A categoria da versão do módulo Valor padrão: None
|
arguments
|
Argumentos que devem ser usados ao chamar o módulo. Os argumentos podem ser cadeias de caracteres, referências de entrada (InputPortDef), referências de saída (OutputPortDef) e parâmetros de pipeline (PipelineParameter). Valor padrão: None
|
runconfig
|
Um RunConfiguration opcional. Um RunConfiguration pode ser usado para especificar requisitos adicionais para a execução, como as dependências do Conda e uma imagem do Docker. Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Exceções
Tipo | Description |
---|---|
publish_adla_script
Crie um ModuleVersion com base no ADLA (Azure Data Lake Analytics) e adicione-o ao Módulo atual.
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)
Parâmetros
Nome | Description |
---|---|
script_name
Obrigatório
|
O nome de um script ADLA, relativo para |
description
Obrigatório
|
A descrição da versão do Módulo. |
inputs
Obrigatório
|
As associações de entrada do Módulo. |
outputs
Obrigatório
|
As associações de saída do Módulo. |
params
|
Os parâmetros ModuleVersion, como pares name-default_value. Valor padrão: None
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o Módulo. Valor padrão: True
|
degree_of_parallelism
|
O grau de paralelismo a ser usado para este trabalho. Valor padrão: None
|
priority
|
O valor da prioridade a ser usado para o trabalho atual. Valor padrão: None
|
runtime_version
|
A versão do runtime do mecanismo de ADLA (Azure Data Lake Analytics). Valor padrão: None
|
compute_target
|
A computação de ADLA que deve ser usada para esse trabalho. Valor padrão: None
|
version
|
A versão do módulo. Valor padrão: None
|
is_default
|
Indica se a versão publicada deve ser o padrão. Valor padrão: False
|
source_directory
|
directory Valor padrão: None
|
hash_paths
|
hash_paths Valor padrão: None
|
category
|
A categoria da versão do módulo Valor padrão: None
|
arguments
|
Argumentos que devem ser usados ao chamar o módulo. Os argumentos podem ser cadeias de caracteres, referências de entrada (InputPortDef), referências de saída (OutputPortDef) e parâmetros de pipeline (PipelineParameter). Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
publish_azure_batch
Crie um ModuleVersion que usa o lote do Azure e adicione-o ao Módulo atual.
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)
Parâmetros
Nome | Description |
---|---|
description
Obrigatório
|
A descrição da versão do Módulo. |
compute_target
Obrigatório
|
BatchCompute ou
str
O destino de computação do BatchCompute. |
inputs
Obrigatório
|
As associações de entrada do Módulo. |
outputs
Obrigatório
|
As associações de saída do Módulo. |
params
|
Os parâmetros ModuleVersion, como pares name-default_value. Valor padrão: None
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o Módulo. Valor padrão: True
|
version
|
A versão do Módulo. Valor padrão: None
|
is_default
|
Indica se a versão publicada deve ser o padrão. Valor padrão: False
|
create_pool
|
Indica se o pool deve ou não ser criado antes da execução do trabalho. Valor padrão: False
|
pool_id
|
(Obrigatório) A ID do pool em que o trabalho será executado. Valor padrão: None
|
delete_batch_job_after_finish
|
Indica se o trabalho deve ser excluído da conta do Lote depois de concluído. Valor padrão: False
|
delete_batch_pool_after_finish
|
Indica se o pool deve ser excluído após a conclusão do trabalho. Valor padrão: False
|
is_positive_exit_code_failure
|
Indica se o trabalho falhará caso a tarefa exista com um código positivo. Valor padrão: True
|
vm_image_urn
|
Se Valor padrão: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
|
run_task_as_admin
|
Indica se a tarefa deve ser executada com privilégios de Administrador. Valor padrão: False
|
target_compute_nodes
|
Se Valor padrão: 1
|
vm_size
|
Se Valor padrão: standard_d1_v2
|
executable
|
O nome do comando/executável que será executado como parte do trabalho. Valor padrão: None
|
source_directory
|
O diretório de origem. Valor padrão: None
|
category
|
A categoria da versão do módulo Valor padrão: None
|
arguments
|
Argumentos que devem ser usados ao chamar o módulo. Os argumentos podem ser cadeias de caracteres, referências de entrada (InputPortDef), referências de saída (OutputPortDef) e parâmetros de pipeline (PipelineParameter). Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Exceções
Tipo | Description |
---|---|
publish_python_script
Crie um ModuleVersion baseado em um script Python e adicione-o ao Módulo atual.
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)
Parâmetros
Nome | Description |
---|---|
script_name
Obrigatório
|
O nome do script Python, relativo para |
description
Obrigatório
|
A descrição da versão do Módulo. |
inputs
Obrigatório
|
As associações de entrada do Módulo. |
outputs
Obrigatório
|
As associações de saída do Módulo. |
params
|
Os parâmetros ModuleVersion, como pares name-default_value. Valor padrão: None
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o Módulo. Valor padrão: True
|
version
|
A versão do Módulo. Valor padrão: None
|
is_default
|
Indica se a versão publicada deve ser o padrão. Valor padrão: False
|
source_directory
|
directory Valor padrão: None
|
hash_paths
|
Uma lista de caminhos para hash ao verificar alterações no conteúdo da etapa. Se não houver alterações detectadas, o pipeline reutilizará o conteúdo da etapa de uma execução anterior. Por padrão, o conteúdo do Valor padrão: None
|
category
|
A categoria da versão do módulo Valor padrão: None
|
arguments
|
Argumentos que devem ser usados ao chamar o módulo. Os argumentos podem ser cadeias de caracteres, referências de entrada (InputPortDef), referências de saída (OutputPortDef) e parâmetros de pipeline (PipelineParameter). Valor padrão: None
|
runconfig
|
Um RunConfiguration opcional. Um RunConfiguration pode ser usado para especificar requisitos adicionais para a execução, como as dependências do Conda e uma imagem do Docker. Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
resolve
Resolva e retorne o ModuleVersion correto.
resolve(version=None)
Parâmetros
Nome | Description |
---|---|
version
|
Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
A versão do módulo a ser usada. |
set_default_version
Defina o ModuleVersion padrão do Módulo.
set_default_version(version_id)
Parâmetros
Nome | Description |
---|---|
version_id
Obrigatório
|
|
Retornos
Tipo | Description |
---|---|
A versão padrão. |
Exceções
Tipo | Description |
---|---|
set_description
Defina a descrição do Módulo.
set_description(description)
Parâmetros
Nome | Description |
---|---|
description
Obrigatório
|
A descrição a ser definida. |
Exceções
Tipo | Description |
---|---|
set_name
Defina o nome do Módulo.
set_name(name)
Parâmetros
Nome | Description |
---|---|
name
Obrigatório
|
O nome a ser definido. |
Exceções
Tipo | Description |
---|---|
Atributos
default_version
Obter a versão padrão do Módulo.
Retornos
Tipo | Description |
---|---|
A cadeia de caracteres de versão padrão. |