Module Classe
Representa uma unidade de computação usada em um pipeline do Azure Machine Learning.
Um 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 ser script, binários ou quaisquer outros arquivos necessários para serem executados no destino de computação. A interface do módulo descreve entradas, saídas e definições de parâmetros. Ele não os vincula a valores ou dados específicos. Um módulo tem um instantâneo associado a ele, que captura a coleção de arquivos definidos para o módulo.
Inicializar módulo.
Construtor
Module(workspace, module_id, name, description, status, default_version, module_version_list, _module_provider=None, _module_version_provider=None)
Parâmetros
| Name | Description |
|---|---|
|
workspace
Necessário
|
O objeto de espaço de trabalho ao qual este módulo pertence. |
|
module_id
Necessário
|
O ID do módulo. |
|
name
Necessário
|
O nome do módulo. |
|
description
Necessário
|
A descrição do módulo. |
|
status
Necessário
|
O novo status do módulo: 'Ativo', 'Preterido' ou 'Desativado'. |
|
default_version
Necessário
|
A versão padrão do módulo. |
|
module_version_list
Necessário
|
Uma lista de ModuleVersionDescriptor objetos. |
|
_module_provider
|
<xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>
(Apenas para uso interno.) O provedor do módulo. Default value: None
|
|
_module_version_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
(Apenas para uso interno.) O provedor ModuleVersion. Default value: None
|
|
workspace
Necessário
|
O objeto de espaço de trabalho ao qual este módulo pertence. |
|
module_id
Necessário
|
O ID do módulo. |
|
name
Necessário
|
O nome do módulo. |
|
description
Necessário
|
A descrição do módulo. |
|
status
Necessário
|
O novo status do módulo: 'Ativo', 'Preterido' ou 'Desativado'. |
|
default_version
Necessário
|
A versão padrão do módulo. |
|
module_version_list
Necessário
|
Uma lista de ModuleVersionDescriptor objetos. |
|
_module_provider
Necessário
|
<xref:<xref:_AevaMlModuleProvider object>>
O provedor do módulo. |
|
_module_version_provider
Necessário
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
O provedor ModuleVersion. |
Observações
Um módulo atua como um contêiner de suas versões. No exemplo a seguir, um ModuleVersion é criado a partir do publish_python_script método e tem duas entradas e duas saídas. O create 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")
A amostra completa 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
Este módulo pode ser usado ao definir um pipeline, em diferentes etapas, usando um ModuleSteparquivo .
O exemplo a seguir mostra como conectar 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}
A amostra completa 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])
A amostra completa 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 de qual versão do módulo usar acontece no momento do envio, e segue o seguinte processo:
- Remover todas as versões desativadas
- Se uma versão específica foi declarada, use isso, caso contrário
- Se uma versão padrão foi definida para o módulo, use isso, caso contrário
- Se todas as versões seguirem o controle de versão semântico sem letras, pegue o valor mais alto, caso contrário
- Pegue a versão do módulo que foi 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 na criação do Pipeline, se a versão resolvida no envio tiver uma interface diferente daquela que é resolvida na criação do pipeline, o envio do pipeline falhará.
O módulo subjacente pode ser atualizado com novas versões, mantendo a versão padrão a mesma.
Os módulos são nomeados exclusivamente dentro de um espaço de trabalho.
Métodos
| create |
Crie o módulo. |
| deprecate |
Defina o módulo como 'Preterido'. |
| disable |
Defina o módulo como 'Desativado'. |
| enable |
Defina o módulo como 'Ativo'. |
| get |
Obter o Módulo por nome ou por ID; lança uma exceção se uma delas não for fornecida. |
| get_default |
Obtenha a versão padrão do módulo. |
| get_default_version |
Obtenha a versão padrão do módulo. |
| get_versions |
Obtenha todas as versões do módulo. |
| module_def_builder |
Crie o objeto de definição de 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 para a etapa e verifique se o script existe. |
| publish |
Crie um ModuleVersion e adicione-o ao módulo atual. |
| publish_adla_script |
Crie uma ModuleVersion com base no Azure Data Lake Analytics (ADLA) e adicione-a ao Módulo atual. |
| publish_azure_batch |
Crie um ModuleVersion que use 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 padrão ModuleVersion do módulo. |
| set_description |
Defina a descrição do módulo. |
| set_name |
Defina o nome do módulo. |
create
Crie o módulo.
static create(workspace, name, description, _workflow_provider=None)
Parâmetros
| Name | Description |
|---|---|
|
workspace
Necessário
|
O espaço de trabalho no qual criar o módulo. |
|
name
Necessário
|
O nome do módulo. |
|
description
Necessário
|
A descrição do módulo. |
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Apenas para uso interno.) O provedor de fluxo de trabalho. Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
|
Objeto do módulo |
deprecate
Defina o módulo como 'Preterido'.
deprecate()
disable
Defina o módulo como 'Desativado'.
disable()
enable
Defina o módulo como 'Ativo'.
enable()
get
Obter o Módulo por nome ou por ID; lança uma exceção se uma delas não for fornecida.
static get(workspace, module_id=None, name=None, _workflow_provider=None)
Parâmetros
| Name | Description |
|---|---|
|
workspace
Necessário
|
O espaço de trabalho no qual criar o módulo. |
|
module_id
|
O ID do módulo. Default value: None
|
|
name
|
O nome do módulo. Default value: None
|
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Apenas para uso interno.) O provedor de fluxo de trabalho. Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
|
Objeto do módulo |
get_default
Obtenha a versão padrão do módulo.
get_default()
Devoluções
| Tipo | Description |
|---|---|
|
A versão padrão do módulo. |
get_default_version
Obtenha a versão padrão do módulo.
get_default_version()
Devoluções
| Tipo | Description |
|---|---|
|
A versão padrão do módulo. |
get_versions
Obtenha todas as versões do módulo.
static get_versions(workspace, name, _workflow_provider=None)
Parâmetros
| Name | Description |
|---|---|
|
workspace
Necessário
|
O espaço de trabalho no qual o módulo foi criado. |
|
name
Necessário
|
O nome do módulo. |
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Apenas para uso interno.) O provedor de fluxo de trabalho. Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
|
A lista de ModuleVersionDescriptor |
module_def_builder
Crie o objeto de definição de 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
| Name | Description |
|---|---|
|
name
Necessário
|
O nome do módulo. |
|
description
Necessário
|
A descrição do módulo. |
|
execution_type
Necessário
|
O tipo de execução do módulo. |
|
input_bindings
Necessário
|
As ligações de entrada do módulo. |
|
output_bindings
Necessário
|
As ligações de saída do módulo. |
|
param_defs
|
As definições de param Module. Default value: None
|
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o módulo. Default value: True
|
|
allow_reuse
|
Indica se o Módulo estará disponível para ser reutilizado. Default value: True
|
|
version
|
A versão do módulo. Default value: None
|
|
module_type
|
O tipo de módulo. Default value: None
|
|
step_type
|
Tipo de passo associado a este módulo, por exemplo, "PythonScriptStep", "HyperDriveStep", etc. Default value: None
|
|
arguments
|
Lista de argumentos anotados a serem usados ao chamar este módulo Default value: None
|
|
runconfig
|
Runconfig que será usado para python_script_step Default value: None
|
|
cloud_settings
|
Configurações que serão usadas para nuvens Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
|
O objeto Module def. |
Exceções
| Tipo | Description |
|---|---|
module_version_list
Obtenha a lista de versões do módulo.
module_version_list()
Devoluções
| Tipo | Description |
|---|---|
|
A lista de ModuleVersionDescriptor |
process_source_directory
Processe o diretório de origem para a etapa e verifique se o script existe.
static process_source_directory(name, source_directory, script_name)
Parâmetros
| Name | Description |
|---|---|
|
name
Necessário
|
O nome da etapa. |
|
source_directory
Necessário
|
O diretório de origem da etapa. |
|
script_name
Necessário
|
O nome do script para a etapa. |
Devoluções
| 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
| Name | Description |
|---|---|
|
description
Necessário
|
A descrição do módulo. |
|
execution_type
Necessário
|
O tipo de execução do módulo.
Os valores aceitáveis são |
|
inputs
Necessário
|
As entradas do módulo. |
|
outputs
Necessário
|
As saídas do módulo. |
|
param_defs
|
As definições do parâmetro Module. Default value: None
|
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o módulo. Default value: True
|
|
version
|
A versão do módulo. Default value: None
|
|
is_default
|
Indica se a versão publicada deve ser a padrão. Default value: False
|
|
content_path
|
directório Default value: None
|
|
hash_paths
|
Uma lista de caminhos para hash ao verificar alterações no conteúdo da etapa. Se não forem detetadas alterações, o pipeline reutilizará o conteúdo da etapa de uma execução anterior. Por padrão, o Default value: None
|
|
category
|
A categoria da versão do módulo Default value: None
|
|
arguments
|
Argumentos a serem usados ao chamar o módulo. Os argumentos podem ser strings, referências de entrada (InputPortDef), referências de saída (OutputPortDef) e parâmetros de pipeline (PipelineParameter). Default value: None
|
|
runconfig
|
Um RunConfiguration opcional. Um RunConfiguration pode ser usado para especificar requisitos adicionais para a execução, como dependências conda e uma imagem do Docker. Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
Exceções
| Tipo | Description |
|---|---|
publish_adla_script
Crie uma ModuleVersion com base no Azure Data Lake Analytics (ADLA) e adicione-a 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
| Name | Description |
|---|---|
|
script_name
Necessário
|
O nome de um script ADLA, relativo a |
|
description
Necessário
|
A descrição da versão do módulo. |
|
inputs
Necessário
|
As ligações de entrada do módulo. |
|
outputs
Necessário
|
As ligações de saída do módulo. |
|
params
|
O ModuleVersion params, como pares de default_value nome. Default value: None
|
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o módulo. Default value: True
|
|
degree_of_parallelism
|
O grau de paralelismo a utilizar para este trabalho. Default value: None
|
|
priority
|
O valor de prioridade a ser usado para o trabalho atual. Default value: None
|
|
runtime_version
|
A versão de tempo de execução do mecanismo do Azure Data Lake Analytics (ADLA). Default value: None
|
|
compute_target
|
O cálculo ADLA a ser usado para este trabalho. Default value: None
|
|
version
|
A versão do módulo. Default value: None
|
|
is_default
|
Indica se a versão publicada deve ser a padrão. Default value: False
|
|
source_directory
|
directório Default value: None
|
|
hash_paths
|
hash_paths Default value: None
|
|
category
|
A categoria da versão do módulo Default value: None
|
|
arguments
|
Argumentos a serem usados ao chamar o módulo. Os argumentos podem ser strings, referências de entrada (InputPortDef), referências de saída (OutputPortDef) e parâmetros de pipeline (PipelineParameter). Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
publish_azure_batch
Crie um ModuleVersion que use 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
| Name | Description |
|---|---|
|
description
Necessário
|
A descrição da versão do módulo. |
|
compute_target
Necessário
|
BatchCompute ou
str
O destino de computação BatchCompute. |
|
inputs
Necessário
|
As ligações de entrada do módulo. |
|
outputs
Necessário
|
As ligações de saída do módulo. |
|
params
|
O ModuleVersion params, como pares de default_value nome. Default value: None
|
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o módulo. Default value: True
|
|
version
|
A versão do módulo. Default value: None
|
|
is_default
|
Indica se a versão publicada deve ser a padrão. Default value: False
|
|
create_pool
|
Indica se o pool deve ser criado antes de executar os trabalhos. Default value: False
|
|
pool_id
|
(Obrigatório) A ID do Pool onde o trabalho será executado. Default value: None
|
|
delete_batch_job_after_finish
|
Indica se o trabalho deve ser excluído da conta em lote após sua conclusão. Default value: False
|
|
delete_batch_pool_after_finish
|
Indica se o pool deve ser excluído após a conclusão do trabalho. Default value: False
|
|
is_positive_exit_code_failure
|
Indica se o trabalho falha se a tarefa existir com um código positivo. Default value: True
|
|
vm_image_urn
|
Se Default value: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
|
|
run_task_as_admin
|
Indica se a tarefa deve ser executada com privilégios de administrador. Default value: False
|
|
target_compute_nodes
|
Se Default value: 1
|
|
vm_size
|
Se Default value: standard_d1_v2
|
|
executable
|
O nome do comando/executável que será executado como parte do trabalho. Default value: None
|
|
source_directory
|
O diretório de origem. Default value: None
|
|
category
|
A categoria da versão do módulo Default value: None
|
|
arguments
|
Argumentos a serem usados ao chamar o módulo. Os argumentos podem ser strings, referências de entrada (InputPortDef), referências de saída (OutputPortDef) e parâmetros de pipeline (PipelineParameter). Default value: None
|
Devoluções
| 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
| Name | Description |
|---|---|
|
script_name
Necessário
|
O nome de um script Python, relativo a |
|
description
Necessário
|
A descrição da versão do módulo. |
|
inputs
Necessário
|
As ligações de entrada do módulo. |
|
outputs
Necessário
|
As ligações de saída do módulo. |
|
params
|
O ModuleVersion params, como pares de default_value nome. Default value: None
|
|
create_sequencing_ports
|
Indica se as portas de sequenciamento serão criadas para o módulo. Default value: True
|
|
version
|
A versão do módulo. Default value: None
|
|
is_default
|
Indica se a versão publicada deve ser a padrão. Default value: False
|
|
source_directory
|
directório Default value: None
|
|
hash_paths
|
Uma lista de caminhos para hash ao verificar alterações no conteúdo da etapa. Se não forem detetadas alterações, o pipeline reutilizará o conteúdo da etapa de uma execução anterior. Por padrão, o Default value: None
|
|
category
|
A categoria da versão do módulo Default value: None
|
|
arguments
|
Argumentos a serem usados ao chamar o módulo. Os argumentos podem ser strings, referências de entrada (InputPortDef), referências de saída (OutputPortDef) e parâmetros de pipeline (PipelineParameter). Default value: None
|
|
runconfig
|
Um RunConfiguration opcional. Um RunConfiguration pode ser usado para especificar requisitos adicionais para a execução, como dependências conda e uma imagem do Docker. Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
resolve
Resolva e retorne o ModuleVersion correto.
resolve(version=None)
Parâmetros
| Name | Description |
|---|---|
|
version
|
Default value: None
|
Devoluções
| Tipo | Description |
|---|---|
|
A versão do módulo a ser usada. |
set_default_version
set_description
set_name
Atributos
default_version
Obtenha a versão padrão do módulo.
Devoluções
| Tipo | Description |
|---|---|
|
A cadeia de caracteres de versão padrão. |