Share via


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

module
Module
valor padrão: None

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

version
str
valor padrão: None

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

module_version
ModuleVersion
valor padrão: None

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

inputs_map
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputAbstractDataset, DatasetConsumptionConfig]]
valor padrão: None

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

outputs_map
dict[str, Union[OutputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputAbstractDataset]]
valor padrão: None

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

compute_target
Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
valor padrão: None

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
RunConfiguration
valor padrão: None

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
dict[str, PipelineParameter]
valor padrão: None

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
list[str]
valor padrão: None

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
dict[str, str]
valor padrão: None

Dicionário de pares nome-valor.

name
str
valor padrão: None

O nome da etapa.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
valor padrão: None

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

module
Module
Obrigatório

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

version
str
Obrigatório

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

module_version
ModuleVersion
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
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, DatasetConsumptionConfig]]
Obrigatório

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

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

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

compute_target
Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
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
RunConfiguration
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
dict[str, PipelineParameter]
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
list[str]
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
dict[str, str]
Obrigatório

Dicionário de pares nome-valor.

name
str
Obrigatório

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

graph
Graph
Obrigatório

O objeto de grafo ao qual adicionar o nó.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Obrigatório

O armazenamento de dados padrão.

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

O contexto do grafo.

Retornos

O objeto de nó.

Tipo de retorno