PipelineStep Classe
Representa um passo de execução num pipeline do Azure Machine Learning.
Os pipelines são construídos a partir de vários passos de pipeline, que são unidades computacionais distintas no pipeline. Cada passo pode ser executado de forma independente e utilizar recursos de computação isolados. Normalmente, cada passo tem as suas próprias entradas, saídas e parâmetros nomeados.
A classe PipelineStep é a classe base a partir da qual outras classes de passos incorporadas concebidas para cenários comuns herdam, como PythonScriptStep, DataTransferStepe HyperDriveStep.
Para obter uma descrição geral da forma como os Pipelines e pipelines se relacionam, veja O que são Pipelines de ML.
Inicializar PipelineStep.
- Herança
-
builtins.objectPipelineStep
Construtor
PipelineStep(name, inputs, outputs, arguments=None, fix_port_name_collisions=False, resource_inputs=None)
Parâmetros
Name | Description |
---|---|
name
Necessário
|
O nome do passo do pipeline. |
inputs
Necessário
|
A lista de entradas de passos. |
outputs
Necessário
|
A lista de saídas de passos. |
arguments
|
Uma lista opcional de argumentos a transmitir para um script utilizado no passo . Default value: None
|
fix_port_name_collisions
|
Especifica se pretende corrigir colisões de nomes. Se Verdadeiro e uma entrada e saída tiverem o mesmo nome, a entrada tem o prefixo "INPUT". A predefinição é Falso. Default value: False
|
resource_inputs
|
Uma lista opcional de entradas a utilizar como recursos. Os recursos são transferidos para a pasta de scripts e fornecem uma forma de alterar o comportamento do script no tempo de execução. Default value: None
|
name
Necessário
|
O nome do passo do pipeline. |
inputs
Necessário
|
A lista de entradas de passos. |
outputs
Necessário
|
A lista de saídas de passos. |
arguments
Necessário
|
Uma lista opcional de argumentos a transmitir para um script utilizado no passo . |
fix_port_name_collisions
Necessário
|
Especifica se pretende corrigir colisões de nomes. Se Verdadeiro e uma entrada e saída tiverem o mesmo nome, a entrada tem o prefixo "INPUT". A predefinição é Falso. |
resource_inputs
Necessário
|
Uma lista opcional de entradas a utilizar como recursos. Os recursos são transferidos para a pasta de scripts e fornecem uma forma de alterar o comportamento do script no tempo de execução. |
Observações
Um PipelineStep é uma unidade de execução que normalmente precisa de um destino de execução (destino de computação), um script para executar com argumentos e entradas de script opcionais e pode produzir saídas. O passo também pode levar vários outros parâmetros específicos ao passo.
Os passos do pipeline podem ser configurados em conjunto para construir um Pipelinefluxo de trabalho do Azure Machine Learning partilhável e reutilizável. Cada passo de um pipeline pode ser configurado para permitir a reutilização dos resultados de execução anteriores se o conteúdo do passo (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados. 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.
O Azure Machine Learning Pipelines fornece passos incorporados para cenários comuns. Para obter exemplos, veja o steps pacote e a AutoMLStep classe . Para obter uma descrição geral sobre a construção de um Pipeline com base em passos pré-criados, consulte https://aka.ms/pl-first-pipeline.
Os passos pré-criados derivados de PipelineStep são passos que são utilizados num pipeline. Se o fluxo de trabalho de machine learning de utilização pedir a criação de passos que podem ser versados e utilizados em pipelines diferentes, utilize a Module classe .
Tenha em atenção o seguinte ao trabalhar com passos de pipeline, dados de entrada/saída e reutilização de passos.
Recomenda-se que utilize localizações source_directory separadas para passos separados. Se todos os scripts nos passos de pipeline estiverem num único diretório, o hash desse diretório será alterado sempre que faz uma alteração num script, o que força uma nova execução de todos os passos. Para obter um exemplo de utilização de diretórios separados para diferentes passos, consulte https://aka.ms/pl-get-started.
Manter pastas separadas para scripts e ficheiros dependentes para cada passo ajuda a reduzir o tamanho do instantâneo criado para cada passo, uma vez que apenas a pasta específica é instantânea. Uma vez que as alterações em quaisquer ficheiros no source_directory acionam um novo carregamento do instantâneo, mantendo pastas separadas em cada passo, ajudam a reutilizar os passos no pipeline, porque se não existirem alterações no source_directory de um passo, a execução anterior do passo é reutilizada.
Se os dados utilizados num passo estiverem num arquivo de dados e allow_reuse for Verdadeiro, as alterações à alteração de dados não serão detetadas. Se os dados forem carregados como parte do instantâneo (no source_directory do passo), apesar de tal não ser recomendado, o hash será alterado e acionará uma nova execução.
Métodos
create_input_output_bindings |
Crie enlaces de entrada e saída a partir das entradas e saídas dos passos. |
create_module_def |
Crie o objeto de definição do módulo que descreve o passo. |
create_node |
Crie um nó para o gráfico de pipeline com base neste passo. |
get_source_directory |
Obtenha o diretório de origem para o passo e verifique se o script existe. |
resolve_input_arguments |
Corresponda entradas e saídas a argumentos para produzir uma cadeia de argumentos. |
run_after |
Execute este passo após o passo especificado. |
validate_arguments |
Confirme que as entradas e saídas de passo fornecidas nos argumentos estão nas listas de entradas e saídas. |
create_input_output_bindings
Crie enlaces de entrada e saída a partir das entradas e saídas dos passos.
create_input_output_bindings(inputs, outputs, default_datastore, resource_inputs=None)
Parâmetros
Name | Description |
---|---|
inputs
Necessário
|
A lista de entradas de passos. |
outputs
Necessário
|
A lista de saídas de passos. |
default_datastore
Necessário
|
O arquivo de dados predefinido. |
resource_inputs
|
A lista de entradas a utilizar como recursos. Os recursos são transferidos para a pasta de scripts e fornecem uma forma de alterar o comportamento do script no tempo de execução. Default value: None
|
Devoluções
Tipo | Description |
---|---|
Cadeia de identificação dos enlaces de entrada e enlaces de saída. |
create_module_def
Crie o objeto de definição do módulo que descreve o passo.
create_module_def(execution_type, input_bindings, output_bindings, param_defs=None, create_sequencing_ports=True, allow_reuse=True, version=None, module_type=None, arguments=None, runconfig=None, cloud_settings=None)
Parâmetros
Name | Description |
---|---|
execution_type
Necessário
|
O tipo de execução do módulo. |
input_bindings
Necessário
|
Os enlaces de entrada de passos. |
output_bindings
Necessário
|
Os enlaces de saída do passo. |
param_defs
|
As definições de parâmetros de passo. Default value: None
|
create_sequencing_ports
|
Especifica se as portas de sequenciação serão criadas para o módulo. Default value: True
|
allow_reuse
|
Especifica se o módulo estará disponível para ser reutilizado em pipelines futuros. Default value: True
|
version
|
A versão do módulo. Default value: None
|
module_type
|
O tipo de módulo para criar o serviço de criação de módulos. Atualmente, só são suportados dois tipos: "None" e "BatchInferencing".
Default value: None
|
arguments
|
Lista de argumentos anotados a utilizar ao chamar este módulo Default value: None
|
runconfig
|
Runconfig que será utilizado para python_script_step Default value: None
|
cloud_settings
|
<xref:azureml.pipeline.core._restclients.aeva.models.CloudSettings>
Definições que serão utilizadas para clouds Default value: None
|
Devoluções
Tipo | Description |
---|---|
O objeto de definição do módulo. |
create_node
Crie um nó para o gráfico de pipeline com base neste passo.
abstract create_node(graph, default_datastore, context)
Parâmetros
Name | Description |
---|---|
graph
Necessário
|
O gráfico ao que pretende adicionar o nó. |
default_datastore
Necessário
|
O arquivo de dados predefinido a utilizar para este passo. |
context
Necessário
|
<xref:azureml.pipeline.core._GraphContext>
O objeto de contexto do gráfico. |
Devoluções
Tipo | Description |
---|---|
O nó criado. |
get_source_directory
Obtenha o diretório de origem para o passo e verifique se o script existe.
get_source_directory(context, source_directory, script_name)
Parâmetros
Name | Description |
---|---|
context
Necessário
|
<xref:azureml.pipeline.core._GraphContext>
O objeto de contexto do gráfico. |
source_directory
Necessário
|
O diretório de origem do passo. |
script_name
Necessário
|
O nome do script do passo. |
hash_paths
Necessário
|
Os caminhos de hash a utilizar ao determinar a impressão digital do módulo. |
Devoluções
Tipo | Description |
---|---|
O diretório de origem e os caminhos de hash. |
resolve_input_arguments
Corresponda entradas e saídas a argumentos para produzir uma cadeia de argumentos.
static resolve_input_arguments(arguments, inputs, outputs, params)
Parâmetros
Name | Description |
---|---|
arguments
Necessário
|
Uma lista de argumentos de passo. |
inputs
Necessário
|
Uma lista de entradas de passos. |
outputs
Necessário
|
Uma lista de saídas de passos. |
params
Necessário
|
Uma lista de parâmetros de passo. |
Devoluções
Tipo | Description |
---|---|
Devolve uma cadeia de identificação de dois itens. A primeira é uma lista simples de itens para os argumentos resolvidos. A segunda é uma lista de argumentos estruturados (_InputArgument, _OutputArgument, _ParameterArgument e _StringArgument) |
run_after
Execute este passo após o passo especificado.
run_after(step)
Parâmetros
Name | Description |
---|---|
step
Necessário
|
O passo do pipeline a executar antes deste passo. |
Observações
Se quiser executar um passo, por exemplo, passo 3 após a conclusão dos passos 1 e 2, pode utilizar:
step3.run_after(step1)
step3.run_after(step2)
validate_arguments
Confirme que as entradas e saídas de passo fornecidas nos argumentos estão nas listas de entradas e saídas.
static validate_arguments(arguments, inputs, outputs)
Parâmetros
Name | Description |
---|---|
arguments
Necessário
|
A lista de argumentos de passo. |
inputs
Necessário
|
A lista de entradas de passos. |
outputs
Necessário
|
A lista de saídas de passos. |