Pipeline Klass
Representerar en samling steg som kan köras som ett återanvändbart Azure Machine Learning-arbetsflöde.
Använd en pipeline för att skapa och hantera arbetsflöden som sammanfogar olika maskininlärningsfaser. Varje maskininlärningsfas, till exempel förberedelse av data och modellträning, kan bestå av ett eller flera steg i en pipeline.
En översikt över varför och när du ska använda Pipelines finns i https://aka.ms/pl-concept.
En översikt över hur du skapar en pipeline finns i https://aka.ms/pl-first-pipeline.
Initiera pipeline.
- Arv
-
builtins.objectPipeline
Konstruktor
Pipeline(workspace, steps, description=None, default_datastore=None, default_source_directory=None, resolve_closure=True, _workflow_provider=None, _service_endpoint=None, **kwargs)
Parametrar
- default_datastore
- AbstractAzureStorageDatastore eller AzureDataLakeDatastore
Standarddatalager som ska användas för dataanslutningar.
- resolve_closure
- bool
Om du vill lösa stängningen eller inte (ta automatiskt in beroende steg).
- default_datastore
- AbstractAzureStorageDatastore eller AzureDataLakeDatastore
Standarddatalager som ska användas för dataanslutningar.
- resolve_closure
- bool
Oavsett om du löser stängningen eller inte (ta automatiskt in beroende steg).
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
Arbetsflödesprovidern, om Ingen skapas.
Kommentarer
En pipeline skapas med en lista med steg och en arbetsyta. Det finns ett antal stegtyper som kan användas i en pipeline. Du väljer stegtyp baserat på ditt maskininlärningsscenario.
Azure Machine Learning-pipelines innehåller inbyggda steg för vanliga scenarier. Fördefinierade steg som härleds från PipelineSteg är steg som används i en pipeline. Exempel finns i paketet steps och AutoMLStep klassen .
Om du använder arbetsflödet för maskininlärning för att skapa steg som kan versionshanteras och användas i olika pipelines använder du funktionerna i modulen Module .
Skicka en pipeline med hjälp av submit. När skicka anropas skapas en PipelineRun som i sin tur skapar StepRun objekt för varje steg i arbetsflödet. Använd dessa objekt för att övervaka körningskörningen.
Ett exempel på att skicka en pipeline är följande:
from azureml.pipeline.core import Pipeline
pipeline = Pipeline(workspace=ws, steps=steps)
pipeline_run = experiment.submit(pipeline)
Det finns ett antal valfria inställningar för en pipeline som kan anges vid överföring i submit.
continue_on_step_failure: Om pipelinekörningen ska fortsätta om ett steg misslyckas. standardvärdet är False. Om värdet är Sant fortsätter bara steg som inte är beroende av utdata från det misslyckade steget att köras.
regenerate_outputs: Om du vill framtvinga förnyelse av alla stegutdata och neka återanvändning av data för den här körningen är standardvärdet Falskt.
pipeline_parameters: Parametrar för pipelinekörning, ordlista med {name: value}. Mer PipelineParameter information finns i.
parent_run_id: Du kan ange ett körnings-ID för att ange den överordnade körningen av den här pipelinekörningen, vilket visas i RunHistory. Den överordnade körningen måste tillhöra samma experiment som den här pipelinen skickas till.
Ett exempel på hur du skickar en pipeline med de här inställningarna är följande:
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>")
Metoder
load_yaml |
Läs in en pipeline från den angivna YAML-filen. En YAML-fil kan användas för att beskriva en pipeline som består av ModuleSteps. |
publish |
Publicera en pipeline och gör den tillgänglig för omkörning. När en pipeline har publicerats kan den skickas utan Den Python-kod som skapade pipelinen. Returnerar den skapade PublishedPipeline. |
service_endpoint |
Hämta tjänstslutpunkten som är associerad med pipelinen. |
submit |
Skicka en pipelinekörning. Detta motsvarar att använda submit. Returnerar den skickade PipelineRun. Använd det här objektet för att övervaka och visa information om körningen. |
validate |
Verifiera en pipeline och identifiera potentiella fel, till exempel ej anslutna indata. |
load_yaml
Läs in en pipeline från den angivna YAML-filen.
En YAML-fil kan användas för att beskriva en pipeline som består av ModuleSteps.
static load_yaml(workspace, filename, _workflow_provider=None, _service_endpoint=None)
Parametrar
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
Arbetsflödesprovidern.
- _service_endpoint
- str
Tjänstslutpunkten, om den är Ingen, bestäms den med hjälp av arbetsytan.
Returer
Den konstruerade pipelinen.
Returtyp
Kommentarer
Nedan finns ett exempel på en YAML-fil. YAML innehåller ett namn, default_compute och listor med parametrar, datareferenser och steg för pipelinen. Varje steg ska ange bindningar för modul, beräkning och parameter, indata och utdata. Dessutom kan en steg-runconfig och argument anges om det behövs.
Yaml-exempelfil:
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
Publicera en pipeline och gör den tillgänglig för omkörning.
När en pipeline har publicerats kan den skickas utan Den Python-kod som skapade pipelinen. Returnerar den skapade PublishedPipeline.
publish(name=None, description=None, version=None, continue_on_step_failure=None)
Parametrar
- continue_on_step_failure
- bool
Anger om du vill fortsätta köra andra steg i PipelineRun om ett steg misslyckas. standardvärdet är false. Om värdet är Sant fortsätter bara steg som inte är beroende av utdata från det misslyckade steget att köras.
Returer
Skapad publicerad pipeline.
Returtyp
service_endpoint
Hämta tjänstslutpunkten som är associerad med pipelinen.
service_endpoint()
Returer
Tjänstslutpunkten.
Returtyp
submit
Skicka en pipelinekörning. Detta motsvarar att använda submit.
Returnerar den skickade PipelineRun. Använd det här objektet för att övervaka och visa information om körningen.
submit(experiment_name, pipeline_parameters=None, continue_on_step_failure=False, regenerate_outputs=False, parent_run_id=None, credential_passthrough=None, **kwargs)
Parametrar
- pipeline_parameters
- dict
Parametrar för pipelinekörning, ordlista med {name: value}. Mer PipelineParameter information finns i.
- continue_on_step_failure
- bool
Anger om pipelinekörningen ska fortsätta om ett steg misslyckas. Om värdet är Sant fortsätter bara steg som inte är beroende av utdata från det misslyckade steget att köras.
- regenerate_outputs
- bool
Anger om du vill framtvinga förnyelse av alla stegutdata och inte tillåta återanvändning av data för den här körningen. Om värdet är falskt kan den här körningen återanvända resultat från tidigare körningar, och efterföljande körningar kan återanvända resultatet av den här körningen.
- parent_run_id
- str
Valfritt körnings-ID som ska anges för den överordnade körningen av den här pipelinekörningen, vilket visas i RunHistory. Den överordnade körningen måste tillhöra samma experiment som den här pipelinen skickas till.
- credential_passthrough
Valfritt, om den här flaggan är aktiverad använder fjärrpipelinejobbet autentiseringsuppgifterna för den användare som initierade jobbet. Den här funktionen är endast tillgänglig i privat förhandsversion.
Returer
Den skickade pipelinekörningen.
Returtyp
validate
Verifiera en pipeline och identifiera potentiella fel, till exempel ej anslutna indata.
validate()
Returer
En lista över fel i pipelinen.
Returtyp
Kommentarer
Exempel på valideringsfel är:
saknade eller oväntade pipelinedatakällor eller stegtyper
saknade parametrar eller utdatadefinitioner för en pipeline-datakälla eller ett steg
ej anslutna indata
pipelinesteg som utgör en loop eller cykel
Om valideringen godkänns (returnerar en tom lista) och pipelinen inte fungerar kan du läsa Felsöka maskininlärningspipelines.
Attribut
graph
Hämta grafen som är associerad med pipelinen. Steg och dataindata visas som noder i diagrammet.
Returer
Diagrammet.
Returtyp
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för