Partilhar via


MpiStep Classe

Cria uma etapa de pipeline do Azure ML para executar um trabalho MPI.

Para obter um exemplo de utilização do MpiStep, consulte o bloco de notas https://aka.ms/pl-style-trans.

Crie uma etapa de pipeline do Azure ML para executar um trabalho MPI.

PRETERIDO. Use o CommandStep em vez disso. Para obter um exemplo , consulte Como executar treinamento distribuído em pipelines com CommandStep.

Construtor

MpiStep(name=None, source_directory=None, script_name=None, arguments=None, compute_target=None, node_count=None, process_count_per_node=None, inputs=None, outputs=None, allow_reuse=True, version=None, hash_paths=None, **kwargs)

Parâmetros

Name Description
name
str

[Obrigatório] O nome do módulo.

Default value: None
source_directory
str

[Obrigatório] Uma pasta que contém script Python, conda env e outros recursos usados na etapa.

Default value: None
script_name
str

[Obrigatório] O nome de um script Python relativo a source_directory.

Default value: None
arguments

[Obrigatório] Uma lista de argumentos de linha de comando.

Default value: None
compute_target

[Obrigatório] Um destino de computação a ser usado.

Default value: None
node_count
int

[Obrigatório] O número de nós no destino de computação usado para treinamento. Se maior que 1, um trabalho distribuído mpi será executado. Somente o destino de computação AmlCompute é suportado para trabalhos distribuídos. Os valores PipelineParameter são suportados.

Default value: None
process_count_per_node
int

[Obrigatório] O número de processos por nó. Se maior que 1, um trabalho distribuído mpi será executado. Somente o destino de computação AmlCompute é suportado para trabalhos distribuídos. Os valores PipelineParameter são suportados.

Default value: None
inputs

Uma lista de ligações de porta de entrada.

Default value: None
outputs

Uma lista de ligações de porta de saída.

Default value: None
params
Necessário

Um dicionário de pares nome-valor registrados como variáveis de ambiente com "AML_PARAMETER_".

allow_reuse

Indica se a etapa deve reutilizar os resultados anteriores ao ser executada novamente com as mesmas configurações. A reutilização está ativada por predefinição. Se o conteúdo da etapa (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados, a saída da execução anterior desta etapa será reutilizada. Ao reutilizar a etapa, em vez de enviar o trabalho para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer etapas subsequentes. Se você usar conjuntos de dados do Aprendizado de Máquina do Azure como entradas, a reutilização será determinada se a definição do conjunto de dados foi alterada, não se os dados subjacentes foram alterados.

Default value: True
version
str

Uma tag de versão opcional para indicar uma alteração na funcionalidade do módulo.

Default value: None
hash_paths

DEPRECATED: não é mais necessário.

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 conteúdo do source_directory é colocado em hash, exceto para arquivos listados em .amlignore ou .gitignore.

Default value: None
use_gpu
Necessário

Indica se o ambiente para executar o experimento deve suportar GPUs. Se True, uma imagem padrão do Docker baseada em GPU será usada no ambiente. Se False, uma imagem baseada em CPU será usada. As imagens docker padrão (CPU ou GPU) serão usadas somente se o custom_docker_image parâmetro não estiver definido. Essa configuração é usada somente em destinos de computação habilitados para Docker.

use_docker
Necessário

Indica se o ambiente para executar o experimento deve ser baseado no Docker.

custom_docker_image
Necessário
str

O nome da imagem do Docker a partir da qual a imagem a ser usada para treinamento será construída. Se não estiver definida, uma imagem padrão baseada em CPU será usada como imagem base.

image_registry_details
Necessário

Os detalhes do registro de imagem do Docker.

user_managed
Necessário

Indica se o Azure ML reutiliza um ambiente Python existente; False significa que o Azure ML criará um ambiente Python com base na especificação de dependências conda.

conda_packages
Necessário

Uma lista de strings que representam pacotes conda a serem adicionados ao ambiente Python.

pip_packages
Necessário

Uma lista de strings que representam pacotes pip a serem adicionados ao ambiente Python.

pip_requirements_file_path
Necessário
str

O caminho relativo para o arquivo de texto de requisitos pip. Este parâmetro pode ser especificado em combinação com o pip_packages parâmetro.

environment_definition
Necessário

O EnvironmentDefinition para o experimento. Inclui PythonSection e DockerSection e variáveis de ambiente. Qualquer opção de ambiente não exposta diretamente através de outros parâmetros à construção MpiStep pode ser definida usando environment_definition parâmetro. Se esse parâmetro for especificado, ele terá precedência sobre outros parâmetros relacionados ao ambiente, como use_gpu, custom_docker_image, conda_packages ou pip_packages e erros serão relatados nessas combinações inválidas.

name
Necessário
str

[Obrigatório] O nome do módulo.

source_directory
Necessário
str

[Obrigatório] Uma pasta que contém script Python, conda env e outros recursos usados na etapa.

script_name
Necessário
str

[Obrigatório] O nome de um script Python relativo a source_directory.

arguments
Necessário

[Obrigatório] Uma lista de argumentos de linha de comando.

compute_target
Necessário
<xref:azureml.core.compute.AmlComputeCompute>, str

[Obrigatório] Um destino de computação a ser usado.

node_count
Necessário
int

[Obrigatório] Número de nós no destino de computação usado para treinamento. Se maior que 1, o trabalho distribuído mpi será executado. Somente o destino de computação AmlCompute é suportado para trabalhos distribuídos. Os valores PipelineParameter são suportados.

process_count_per_node
Necessário
int

[Obrigatório] Número de processos por nó. Se maior que 1, o trabalho distribuído mpi será executado. Somente o destino de computação AmlCompute é suportado para trabalhos distribuídos. Os valores PipelineParameter são suportados.

inputs
Necessário

Uma lista de ligações de porta de entrada.

outputs
Necessário

Uma lista de ligações de porta de saída.

params
Necessário

Um dicionário de pares nome-valor registrados como variáveis de ambiente com ">>AML_PARAMETER_<<".

allow_reuse
Necessário

Indica se a etapa deve reutilizar os resultados anteriores quando a execução repetida com os mesmos parâmetros permanece inalterada, a saída da execução anterior desta etapa é reutilizada. Ao reutilizar a etapa, em vez de enviar o trabalho para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer etapas subsequentes. Se você usar conjuntos de dados do Aprendizado de Máquina do Azure como entradas, a reutilização será determinada se a definição do conjunto de dados foi alterada, não se os dados subjacentes foram alterados.

version
Necessário
str

Tag de versão opcional para indicar uma alteração na funcionalidade do módulo

hash_paths
Necessário

DEPRECATED: não é mais necessário.

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 conteúdo do source_directory é colocado em hash, exceto para arquivos listados em .amlignore ou .gitignore.

use_gpu
Necessário

Indica se o ambiente para executar o experimento deve suportar GPUs. Se True, uma imagem padrão do Docker baseada em GPU será usada no ambiente. Se False, uma imagem baseada em CPU será usada. As imagens docker padrão (CPU ou GPU) serão usadas somente se o custom_docker_image parâmetro não estiver definido. Essa configuração é usada somente em destinos de computação habilitados para Docker.

use_docker
Necessário

Indica se o ambiente para executar o experimento deve ser baseado no Docker. custom_docker_image (str): O nome da imagem docker a partir da qual a imagem a ser usada para o trabalho mpi será construída. Se não estiver definida, uma imagem padrão baseada em CPU será usada como imagem base.

custom_docker_image
Necessário
str

O nome da imagem do Docker a partir da qual a imagem a ser usada para treinamento será construída. Se não estiver definida, uma imagem padrão baseada em CPU será usada como imagem base.

image_registry_details
Necessário

Os detalhes do registro de imagem do Docker.

user_managed
Necessário

Indica se o Azure ML reutiliza um ambiente Python existente; False significa que o Azure ML criará um ambiente Python com base na especificação de dependências conda.

conda_packages
Necessário

Uma lista de strings que representam pacotes conda a serem adicionados ao ambiente Python.

pip_packages
Necessário

Uma lista de strings que representam pacotes pip a serem adicionados ao ambiente Python.

pip_requirements_file_path
Necessário
str

O caminho relativo para o arquivo de texto de requisitos pip. Este parâmetro pode ser especificado em combinação com o pip_packages parâmetro.

environment_definition
Necessário

O EnvironmentDefinition para o experimento. Inclui PythonSection e DockerSection e variáveis de ambiente. Qualquer opção de ambiente não exposta diretamente através de outros parâmetros à construção MpiStep pode ser definida usando environment_definition parâmetro. Se esse parâmetro for especificado, ele terá precedência sobre outros parâmetros relacionados ao ambiente, como use_gpu, custom_docker_image, conda_packages ou pip_packages e erros serão relatados nessas combinações inválidas.