Compartilhar via


ModuleStep Classe

Cria uma etapa de pipeline do Azure Machine Learning para executar uma versão específica de um Módulo.

Module os objetos definem cálculos reutilizáveis, como scripts ou executáveis, que podem ser usados em diferentes cenários de machine learning e por usuários diferentes. Para usar uma versão específica de um módulo em um pipeline, crie um ModuleStep. Um ModuleStep é uma etapa no pipeline que usa um existente ModuleVersion.

Para obter um exemplo de como usar ModuleStep, consulte o bloco de anotações https://aka.ms/pl-modulestep.

Crie uma etapa de pipeline do Azure ML para executar uma versão específica de um Módulo.

Construtor

ModuleStep(module=None, version=None, module_version=None, inputs_map=None, outputs_map=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, arguments=None, params=None, name=None, _workflow_provider=None)

Parâmetros

Nome Description
module

O módulo usado na etapa. Forneça o module parâmetro ou o module_version parâmetro, mas não ambos.

Valor padrão: None
version
str

A versão do módulo usada na etapa.

Valor padrão: None
module_version

Um ModuleVersion do módulo usado na etapa. Forneça o module parâmetro ou o module_version parâmetro, mas não ambos.

Valor padrão: None
inputs_map

Um dicionário que mapeia os nomes das definições de porta do ModuleVersion para as entradas da etapa.

Valor padrão: None
outputs_map

Um dicionário que mapeia os nomes das definições de porta do ModuleVersion para as saídas da etapa.

Valor padrão: None
compute_target

O destino de computação a ser usado. Se não for especificado, o destino da configuração de execução será usado. Pode ser um objeto de destino de computação ou o nome da cadeia de caracteres de um destino de computação no workspace. Opcionalmente, se o destino de computação não estiver disponível no momento da criação do pipeline, você poderá especificar uma tupla ('nome de destino de computação', 'tipo de destino de computação') para evitar buscar o objeto de destino de computação (o tipo AmlCompute é 'AmlCompute' e o tipo RemoteCompute é 'VirtualMachine').

Valor padrão: None
runconfig

Um RunConfiguration opcional a ser usado. Um RunConfiguration pode ser usado para especificar requisitos adicionais para a execução, como dependências conda e uma imagem do Docker.

Valor padrão: None
runconfig_pipeline_params

Uma substituição das propriedades de runconfig no runtime usando pares chave-valor cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade.

Valores com suporte: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount'

Valor padrão: None
arguments

Uma lista de argumentos de linha de comando para o arquivo de script Python. Os argumentos serão entregues ao destino de computação por meio de argumentos em RunConfiguration. Para obter mais detalhes sobre como lidar com argumentos como símbolos especiais, consulte os argumentos em RunConfiguration

Valor padrão: None
params

Um dicionário de pares nome-valor.

Valor padrão: None
name
str

O nome da etapa.

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
module
Obrigatório

O módulo usado na etapa. Forneça o module parâmetro ou o module_version parâmetro, mas não ambos.

version
Obrigatório
str

A versão do módulo usada na etapa.

module_version
Obrigatório

O ModuleVersion do módulo usado na etapa. Forneça o module parâmetro ou o module_version parâmetro, mas não ambos.

inputs_map
Obrigatório
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, DatasetConsumptionConfig]]

Um dicionário que mapeia os nomes das definições de porta do ModuleVersion para as entradas da etapa.

outputs_map
Obrigatório
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>]]

Um dicionário que mapeia os nomes das definições de porta do ModuleVersion para as saídas da etapa.

compute_target
Obrigatório

O destino de computação a ser usado. Se não for especificado, o destino da configuração de execução será usado. Pode ser um objeto de destino de computação ou o nome da cadeia de caracteres de um destino de computação no workspace. Opcionalmente, se o destino de computação não estiver disponível no momento da criação do pipeline, você poderá especificar uma tupla ('nome de destino de computação', 'tipo de destino de computação') para evitar buscar o objeto de destino de computação (o tipo AmlCompute é 'AmlCompute' e o tipo RemoteCompute é 'VirtualMachine').

runconfig
Obrigatório

Um RunConfiguration opcional a ser usado. Um RunConfiguration pode ser usado para especificar requisitos adicionais para a execução, como dependências conda e uma imagem do Docker.

runconfig_pipeline_params
Obrigatório

Uma substituição das propriedades de runconfig no runtime usando pares chave-valor cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade.

Valores com suporte: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount'

arguments
Obrigatório

Uma lista de argumentos de linha de comando para o arquivo de script Python. Os argumentos serão entregues ao destino de computação por meio de argumentos em RunConfiguration. Para obter mais detalhes sobre como lidar com argumentos como símbolos especiais, consulte os argumentos em RunConfiguration

params
Obrigatório

Um dicionário de pares nome-valor.

name
Obrigatório
str

O nome da etapa.

_wokflow_provider
Obrigatório

(Somente uso interno.) O provedor de fluxo de trabalho.

Comentários

Um Module é usado para criar e gerenciar uma unidade computacional reutilizável de um pipeline do Azure Machine Learning. ModuleStep é a etapa interna no Azure Machine Learning usada para consumir um módulo. Você pode definir especificamente qual ModuleVersion usar ou permitir que o Azure Machine Learning resolva qual ModuleVersion usar após o processo de resolução definido na seção de comentários da Module classe. Para definir qual ModuleVersion é usado em um pipeline enviado, defina um dos seguintes ao criar um ModuleStep:

  • Um ModuleVersion objeto.

  • Um Module objeto e um valor de versão.

  • Um Module objeto sem um valor de versão. Nesse caso, a resolução de versão pode variar entre os envios.

Você deve definir o mapeamento entre as entradas e saídas do ModuleStep para as entradas e saídas do ModuleVersion.

O exemplo a seguir mostra como criar um ModuleStep como parte do pipeline com vários objetos 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

Métodos

create_node

Crie um nó a partir da etapa ModuleStep e adicione-o ao grafo especificado.

Esse método não se destina a ser usado diretamente. Quando um pipeline é instanciado com essa etapa, o Azure ML passa automaticamente os parâmetros necessários por meio desse método para que essa etapa possa ser adicionada a um grafo de pipeline que representa o fluxo de trabalho.

create_node

Crie um nó a partir da etapa ModuleStep e adicione-o ao grafo especificado.

Esse método não se destina a ser usado diretamente. Quando um pipeline é instanciado com essa etapa, o Azure ML passa automaticamente os parâmetros necessários por meio desse método para que essa etapa possa ser adicionada a um grafo de pipeline que representa o fluxo de trabalho.

create_node(graph, default_datastore, context)

Parâmetros

Nome Description
graph
Obrigatório

O objeto de grafo ao qual adicionar o nó.

default_datastore
Obrigatório

O armazenamento de dados padrão.

context
Obrigatório
<xref:azureml.pipeline.core._GraphContext>

O contexto do grafo.

Retornos

Tipo Description

O objeto do nó.