Partilhar 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 aprendizado de máquina e por diferentes usuários. 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 ModuleVersionarquivo .

Para obter um exemplo de como usar o 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

Name Description
module

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

Default value: None
version
str

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

Default value: None
module_version

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

Default value: None
inputs_map

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

Default value: None
outputs_map

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

Default value: 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 espaço de trabalho. Opcionalmente, se o destino de computação não estiver disponível no momento da criação do pipeline, você pode especificar uma tupla de ('nome do 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').

Default value: None
runconfig

Um RunConfiguration opcional para usar. 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
runconfig_pipeline_params

Uma substituição das propriedades runconfig em tempo de execução usando chave-valor emparelha cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade.

Valores suportados: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount'

Default value: 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

Default value: None
params

Um dicionário de pares nome-valor.

Default value: None
name
str

O nome da etapa.

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
module
Necessário

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

version
Necessário
str

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

module_version
Necessário

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

inputs_map
Necessá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
Necessá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
Necessá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 espaço de trabalho. Opcionalmente, se o destino de computação não estiver disponível no momento da criação do pipeline, você pode especificar uma tupla de ('nome do 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
Necessário

Um RunConfiguration opcional para usar. 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
Necessário

Uma substituição das propriedades runconfig em tempo de execução usando chave-valor emparelha cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade.

Valores suportados: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount'

arguments
Necessá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
Necessário

Um dicionário de pares nome-valor.

name
Necessário
str

O nome da etapa.

_wokflow_provider
Necessário

(Apenas para uso interno.) O provedor de fluxo de trabalho.

Observações

A Module é usado para criar e gerenciar uma unidade computacional reutilizável de um pipeline do Azure Machine Learning. ModuleStep é a etapa interna do Azure Machine Learning usada para consumir um módulo. Você pode definir especificamente qual ModuleVersion usar ou permitir que o Aprendizado de Máquina do Azure resolva qual ModuleVersion usar seguindo 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 uma das seguintes opções ao criar um ModuleStep:

  • Um objeto ModuleVersion.

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

  • Um Module objeto sem um valor de versão. Nesse caso, a resolução da 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])

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

Métodos

create_node

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

Este método não se destina a ser utilizado 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 gráfico de pipeline que representa o fluxo de trabalho.

create_node

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

Este método não se destina a ser utilizado 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 gráfico de pipeline que representa o fluxo de trabalho.

create_node(graph, default_datastore, context)

Parâmetros

Name Description
graph
Necessário

O objeto gráfico ao qual adicionar o nó.

default_datastore
Necessário

O armazenamento de dados padrão.

context
Necessário
<xref:azureml.pipeline.core._GraphContext>

O contexto do gráfico.

Devoluções

Tipo Description

O objeto node.