CommandStep Classe
Crie um passo do Pipeline do Azure ML que execute um comando.
Crie um passo do Pipeline do Azure ML que execute um comando.
- Herança
-
azureml.pipeline.core._python_script_step_base._PythonScriptStepBaseCommandStep
Construtor
CommandStep(command=None, name=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, inputs=None, outputs=None, params=None, source_directory=None, allow_reuse=True, version=None)
Parâmetros
Name | Description |
---|---|
command
|
O comando a executar ou o caminho do executável/script relativo a valor predefinido: None
|
name
|
O nome do passo. Se não for especificado, é utilizada a primeira palavra na valor predefinido: None
|
compute_target
|
O destino de computação a utilizar. Se não for especificado, o destino do valor predefinido: None
|
runconfig
|
O objeto de configuração opcional que encapsula as informações necessárias para submeter uma execução de preparação numa experimentação. valor predefinido: None
|
runconfig_pipeline_params
|
<xref:<xref:{str: PipelineParameter}>>
Substituições de propriedades de runconfig no runtime através de pares chave-valor cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade. Valores suportados: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount" valor predefinido: None
|
inputs
|
list[InputPortBinding ou
DataReference ou
PortDataReference ou
PipelineData ou
<xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> ou
DatasetConsumptionConfig]
Uma lista de enlaces de portas de entrada. valor predefinido: None
|
outputs
|
Uma lista de enlaces de portas de saída. valor predefinido: None
|
params
|
Um dicionário de pares nome-valor registados como variáveis de ambiente com "AML_PARAMETER_". valor predefinido: None
|
source_directory
|
Uma pasta que contém scripts, conda env e outros recursos utilizados no passo. valor predefinido: None
|
allow_reuse
|
Indica se o passo deve reutilizar os resultados anteriores ao executar novamente com as mesmas definições. A reutilização está ativada por predefinição. Se o conteúdo do passo (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados, o resultado da execução anterior deste passo será reutilizado. Ao reutilizar o passo, em vez de submeter a tarefa para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer passos subsequentes. Se utilizar conjuntos de dados do Azure Machine Learning como entradas, a reutilização é determinada se a definição do conjunto de dados foi alterada e não se os dados subjacentes foram alterados. valor predefinido: True
|
version
|
Uma etiqueta de versão opcional para denotar uma alteração na funcionalidade do passo. valor predefinido: None
|
command
Necessário
|
O comando a executar ou o caminho do executável/script relativo a |
name
Necessário
|
O nome do passo. Se não for especificado, é utilizada a primeira palavra na |
compute_target
Necessário
|
O destino de computação a utilizar. Se não for especificado, o destino do |
runconfig
Necessário
|
O objeto de configuração opcional que encapsula as informações necessárias para submeter uma execução de preparação numa experimentação. |
runconfig_pipeline_params
Necessário
|
<xref:<xref:{str: PipelineParameter}>>
Substituições de propriedades de runconfig no runtime através de pares chave-valor cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade. Valores suportados: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount" |
inputs
Necessário
|
list[InputPortBinding ou
DataReference ou
PortDataReference ou
PipelineData ou
<xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> ou
DatasetConsumptionConfig]
Uma lista de enlaces de portas de entrada. |
outputs
Necessário
|
Uma lista de enlaces de portas de saída. |
params
Necessário
|
Um dicionário de pares nome-valor registados como variáveis de ambiente com "AML_PARAMETER_". |
source_directory
Necessário
|
Uma pasta que contém scripts, conda env e outros recursos utilizados no passo. |
allow_reuse
Necessário
|
Indica se o passo deve reutilizar os resultados anteriores ao executar novamente com as mesmas definições. A reutilização está ativada por predefinição. Se o conteúdo do passo (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados, o resultado da execução anterior deste passo será reutilizado. Ao reutilizar o passo, em vez de submeter a tarefa para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer passos subsequentes. Se utilizar conjuntos de dados do Azure Machine Learning como entradas, a reutilização é determinada se a definição do conjunto de dados foi alterada e não se os dados subjacentes foram alterados. |
version
Necessário
|
Uma etiqueta de versão opcional para denotar uma alteração na funcionalidade do passo. |
Observações
Um CommandStep é um passo básico incorporado para executar um comando no destino de computação especificado. Assume um comando como um parâmetro ou a partir de outros parâmetros, como runconfig. Também utiliza outros parâmetros opcionais, como destino de computação, entradas e saídas. Deve utilizar um ScriptRunConfig ou RunConfiguration para especificar requisitos para o CommandStep, como a imagem personalizada do docker.
A melhor prática para trabalhar com CommandStep é utilizar uma pasta separada para o executável ou script para executar quaisquer ficheiros dependentes associados ao passo e especificar essa pasta com o source_directory
parâmetro . Seguir esta melhor prática tem duas vantagens. Em primeiro lugar, ajuda a reduzir o tamanho do instantâneo criado para o passo, porque apenas o que é necessário para o passo é instantâneo.
Em segundo lugar, o resultado do passo de uma execução anterior pode ser reutilizado se não existirem alterações no source_directory
que acionem um novo carregamento do instantâneo.
Para os comandos conhecidos source_directory
pelo sistema não é necessário, mas ainda pode fornecer-lhe quaisquer ficheiros dependentes associados ao passo.
O exemplo de código seguinte mostra como utilizar um CommandStep num cenário de preparação de machine learning. Para listar ficheiros no linux:
from azureml.pipeline.steps import CommandStep
trainStep = CommandStep(name='list step',
command='ls -lrt',
compute_target=compute_target)
Para executar um script python:
from azureml.pipeline.steps import CommandStep
trainStep = CommandStep(name='train step',
command='python train.py arg1 arg2',
source_directory=project_folder,
compute_target=compute_target)
Para executar um script python através de ScriptRunConfig:
from azureml.core import ScriptRunConfig
from azureml.pipeline.steps import CommandStep
train_src = ScriptRunConfig(source_directory=script_folder,
command='python train.py arg1 arg2',
environment=my_env)
trainStep = CommandStep(name='train step',
runconfig=train_src)
Veja https://aka.ms/pl-first-pipeline para obter mais detalhes sobre como criar pipelines em geral.
Métodos
create_node |
Crie um nó para CommandStep e adicione-o ao gráfico especificado. Este método não se destina a ser utilizado diretamente. Quando um pipeline é instanciado com este passo, o Azure ML transmite automaticamente os parâmetros necessários através deste método para que esse passo possa ser adicionado a um gráfico de pipeline que representa o fluxo de trabalho. |
create_node
Crie um nó para CommandStep e adicione-o ao gráfico especificado.
Este método não se destina a ser utilizado diretamente. Quando um pipeline é instanciado com este passo, o Azure ML transmite automaticamente os parâmetros necessários através deste método para que esse passo possa ser adicionado 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 de gráfico ao que adicionar o nó. |
default_datastore
Necessário
|
O arquivo de dados predefinido. |
context
Necessário
|
<xref:_GraphContext>
O contexto do gráfico. |
Devoluções
Tipo | Description |
---|---|
O nó criado. |
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários