Pipeline Classe
Representa uma coleção de passos que podem ser executados como um fluxo de trabalho reutilizável do Azure Machine Learning.
Utilize um Pipeline para criar e gerir fluxos de trabalho que juntam várias fases de machine learning. Cada fase de machine learning, como a preparação de dados e preparação de modelos, pode consistir num ou mais passos num Pipeline.
Para obter uma descrição geral do porquê e quando utilizar Pipelines, consulte https://aka.ms/pl-concept.
Para obter uma descrição geral sobre a construção de um Pipeline, consulte https://aka.ms/pl-first-pipeline.
Inicializar Pipeline.
- Herança
-
builtins.objectPipeline
Construtor
Pipeline(workspace, steps, description=None, default_datastore=None, default_source_directory=None, resolve_closure=True, _workflow_provider=None, _service_endpoint=None, **kwargs)
Parâmetros
- default_datastore
- AbstractAzureStorageDatastore ou AzureDataLakeDatastore
O arquivo de dados predefinido a utilizar para ligações de dados.
- default_source_directory
- str
O diretório de script predefinido para os passos que executam um script.
- resolve_closure
- bool
Quer resolva ou não o encerramento (introduza automaticamente passos dependentes).
- default_datastore
- AbstractAzureStorageDatastore ou AzureDataLakeDatastore
O arquivo de dados predefinido a utilizar para ligações de dados.
- default_source_directory
- str
O diretório de script predefinido para os passos que executam um script.
- resolve_closure
- bool
Quer resolva o encerramento ou não (introduza automaticamente passos dependentes).
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
O fornecedor de fluxo de trabalho, se nenhum for criado.
- _service_endpoint
- str
O ponto final de serviço, se Nenhum for determinado com a área de trabalho.
- kwargs
- dict
Argumentos de palavra-chave personalizados, reservados para desenvolvimento futuro
Observações
É criado um pipeline com uma lista de passos e uma área de trabalho. Existem vários tipos de passos que podem ser utilizados num pipeline. Irá selecionar o tipo de passo com base no seu cenário de machine learning.
Os Pipelines do Azure Machine Learning fornecem passos incorporados para cenários comuns. Os passos pré-criados derivados de PipelineStep são passos que são utilizados num pipeline. Por exemplo, veja o steps pacote e a AutoMLStep classe.
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 funcionalidade no Module módulo.
Submeta um pipeline com submit. Quando a submissão é chamada, é criado um PipelineRun que, por sua vez, cria objetos StepRun para cada passo no fluxo de trabalho. Utilize estes objetos para monitorizar a execução da execução.
Um exemplo para submeter um Pipeline é o seguinte:
from azureml.pipeline.core import Pipeline
pipeline = Pipeline(workspace=ws, steps=steps)
pipeline_run = experiment.submit(pipeline)
Existem várias definições opcionais para um Pipeline que podem ser especificadas na submissão no submit.
continue_on_step_failure: se pretende continuar a execução do pipeline se um passo falhar; a predefinição é Falso. Se For Verdadeiro, apenas os passos que não têm dependência na saída do passo falhado continuarão a ser executados.
regenerate_outputs: se pretende forçar a regeneração de todas as saídas de passos e não permitir a reutilização de dados para esta execução, a predefinição é Falso.
pipeline_parameters: Parâmetros para a execução do pipeline, dicionário de {name: value}. Veja PipelineParameter para obter mais detalhes.
parent_run_id: pode fornecer um ID de execução para definir a execução principal desta execução de pipeline, que se reflete no RunHistory. A execução principal deve pertencer à mesma experimentação à qual o pipeline está a ser submetido.
Um exemplo para submeter um Pipeline com estas definições é o seguinte:
from azureml.pipeline.core import Pipeline
pipeline = Pipeline(workspace=ws, steps=steps)
pipeline_run = experiment.submit(pipeline,
continue_on_step_failure=True,
regenerate_outputs=True,
pipeline_parameters={"param1": "value1"},
parent_run_id="<run_id>")
Métodos
load_yaml |
Carregue um Pipeline a partir do ficheiro YAML especificado. Um ficheiro YAML pode ser utilizado para descrever um Pipeline composto por ModuleSteps. |
publish |
Publique um pipeline e disponibilize-o para nova execução. Assim que um Pipeline for publicado, pode ser submetido sem o código Python que construiu o Pipeline. Devolve o .PublishedPipeline |
service_endpoint |
Obtenha o ponto final de serviço associado ao pipeline. |
submit |
Submeta uma execução de pipeline. Isto é equivalente à utilização submitde . Devolve o submetido PipelineRun. Utilize este objeto para monitorizar e ver os detalhes da execução. |
validate |
Valide um pipeline e identifique potenciais erros, como entradas não ligadas. |
load_yaml
Carregue um Pipeline a partir do ficheiro YAML especificado.
Um ficheiro YAML pode ser utilizado para descrever um Pipeline composto por ModuleSteps.
static load_yaml(workspace, filename, _workflow_provider=None, _service_endpoint=None)
Parâmetros
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
O fornecedor de fluxo de trabalho.
- _service_endpoint
- str
O ponto final de serviço, se Nenhum, é determinado com a área de trabalho.
Devoluções
O Pipeline construído.
Tipo de retorno
Observações
Veja abaixo um ficheiro YAML de exemplo. O YAML contém um nome, default_compute e listas de parâmetros, referências de dados e passos para o Pipeline. Cada passo deve especificar os enlaces de módulo, computação e parâmetro, entrada e saída. Além disso, um runconfig de passo e argumentos podem ser especificados, se necessário.
Ficheiro Yaml de exemplo:
pipeline:
description: SamplePipelineFromYaml
parameters:
NumIterationsParameter:
type: int
default: 40
DataPathParameter:
type: datapath
default:
datastore: workspaceblobstore
path_on_datastore: sample2.txt
NodeCountParameter:
type: int
default: 4
data_references:
DataReference:
datastore: workspaceblobstore
path_on_datastore: testfolder/sample.txt
Dataset:
dataset_name: 'titanic'
default_compute: aml-compute
steps:
PrepareStep:
type: ModuleStep
name: "TestModule"
compute: aml-compute2
runconfig: 'D:\.azureml\default_runconfig.yml'
arguments:
-'--input1'
-input:in1
-'--input2'
-input:in2
-'--input3'
-input:in3
-'--output'
-output:output_data
-'--param'
-parameter:NUM_ITERATIONS
parameters:
NUM_ITERATIONS:
source: NumIterationsParameter
inputs:
in1:
source: Dataset
bind_mode: mount
in2:
source: DataReference
in3:
source: DataPathParameter
outputs:
output_data:
destination: Output1
datastore: workspaceblobstore
bind_mode: mount
TrainStep:
type: ModuleStep
name: "TestModule2"
version: "2"
runconfig: 'D:\.azureml\default_runconfig.yml'
arguments:
-'--input'
-input:train_input
-'--output'
-output:result
-'--param'
-parameter:NUM_ITERATIONS
parameters:
NUM_ITERATIONS: 10
runconfig_parameters:
NodeCount:
source: NodeCountParameter
inputs:
train_input:
source: Output1
bind_mode: mount
outputs:
result:
destination: Output2
datastore: workspaceblobstore
bind_mode: mount
publish
Publique um pipeline e disponibilize-o para nova execução.
Assim que um Pipeline for publicado, pode ser submetido sem o código Python que construiu o Pipeline. Devolve o .PublishedPipeline
publish(name=None, description=None, version=None, continue_on_step_failure=None)
Parâmetros
- continue_on_step_failure
- bool
Indica se deve continuar a execução de outros passos no PipelineRun se um passo falhar; a predefinição é falsa. Se For Verdadeiro, apenas os passos que não têm dependência na saída do passo falhado continuarão a ser executados.
Devoluções
Pipeline publicado criado.
Tipo de retorno
service_endpoint
Obtenha o ponto final de serviço associado ao pipeline.
service_endpoint()
Devoluções
O ponto final de serviço.
Tipo de retorno
submit
Submeta uma execução de pipeline. Isto é equivalente à utilização submitde .
Devolve o submetido PipelineRun. Utilize este objeto para monitorizar e ver os detalhes da execução.
submit(experiment_name, pipeline_parameters=None, continue_on_step_failure=False, regenerate_outputs=False, parent_run_id=None, credential_passthrough=None, **kwargs)
Parâmetros
- pipeline_parameters
- dict
Parâmetros para a execução do pipeline, dicionário de {name: value}. Veja PipelineParameter para obter mais detalhes.
- continue_on_step_failure
- bool
Indica se deve continuar a execução do pipeline se um passo falhar. Se For Verdadeiro, apenas os passos que não têm dependência na saída do passo falhado continuarão a ser executados.
- regenerate_outputs
- bool
Indica se pretende forçar a regeneração de todas as saídas de passos e não permitir a reutilização de dados para esta execução. Se for Falso, esta execução poderá reutilizar os resultados de execuções anteriores e as execuções subsequentes poderão reutilizar os resultados desta execução.
- parent_run_id
- str
ID de execução opcional a definir para a execução principal desta execução de pipeline, que se reflete no RunHistory. A execução principal tem de pertencer à mesma experimentação para a qual este pipeline está a ser submetido.
- credential_passthrough
Opcional, se este sinalizador estiver ativado, a tarefa de pipeline remoto utilizará as credenciais do utilizador que iniciou a tarefa. Esta funcionalidade só está disponível em pré-visualização privada.
Devoluções
A execução do pipeline submetido.
Tipo de retorno
validate
Valide um pipeline e identifique potenciais erros, como entradas não ligadas.
validate()
Devoluções
Uma lista de erros no pipeline.
Tipo de retorno
Observações
Exemplos de erros de validação incluem:
origens de dados de pipeline ou tipos de passos em falta ou inesperados
parâmetros em falta ou definições de saída para uma origem de dados de pipeline ou passo
entradas não ligadas
passos de pipeline que formam um ciclo ou ciclo
Se a validação passar (devolve uma lista vazia) e o pipeline não funcionar, veja Depurar e resolver problemas de pipelines de machine learning.
Atributos
graph
Obtenha o gráfico associado ao pipeline. Os passos e as entradas de dados são apresentados como nós no gráfico.
Devoluções
O gráfico.
Tipo de retorno
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