ModuleStep Classe

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

os objetos Module definem cálculos reutilizáveis, como scripts ou executáveis, que podem ser usados em diferentes cenários de aprendizado de máquina 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 ModuleVersion existente.

Para obter um exemplo de como usar o ModuleStep, confira o notebook https://aka.ms/pl-modulestep.

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

Herança
ModuleStep

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 parâmetro module ou module_version, 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 parâmetro module ou module_version, mas não ambos.

Valor padrão: None
inputs_map

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

Valor padrão: None
outputs_map

Um dicionário que mapeia os nomes das definições de porta de 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 do runconfig 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. Se o destino de computação não estiver disponível no momento da criação do pipeline, será possível especificar uma tupla de ('nome de destino de computação' e 'tipo de destino de computação') para evitar o fetch do 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 as dependências do Conda e uma imagem do Docker.

Valor padrão: None
runconfig_pipeline_params

Uma substituição das propriedades runconfig no runtime usando pares chave-valor, em que cada um tem o nome da propriedade runconfig e o PipelineParameter dessa propriedade.

Valores com suporte: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount' e '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

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 parâmetro module ou module_version, 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 parâmetro module ou module_version, 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 de 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 de 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 do runconfig 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. Se o destino de computação não estiver disponível no momento da criação do pipeline, será possível especificar uma tupla de ('nome de destino de computação' e 'tipo de destino de computação') para evitar o fetch do 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 as dependências do Conda e uma imagem do Docker.

runconfig_pipeline_params
Obrigatório

Uma substituição das propriedades runconfig no runtime usando pares chave-valor, em que cada um tem o nome da propriedade runconfig e o PipelineParameter dessa propriedade.

Valores com suporte: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount' e '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

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 Azure Machine Learning pipeline. ModuleStep é a etapa interna no Azure Machine Learning usado para consumir um módulo. VVocê pode definir especificamente qual ModuleVersion usar ou permitir que o Azure Machine Learning resolva qual ModuleVersion usar seguindo o processo de resolução definido na seção de comentários da classe Module. Para definir qual ModuleVersion é usado em um pipeline enviado, defina um dos seguintes ao criar um ModuleStep:

  • Um objeto ModuleVersion.

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

  • Um objeto Module 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ó da etapa ModuleStep e adicione-o ao gráfico 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ó da etapa ModuleStep e adicione-o ao gráfico 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 de nó.