Pipeline Třída
Představuje kolekci kroků, které je možné provést jako opakovaně použitelný pracovní postup služby Azure Machine Learning.
Kanál slouží k vytváření a správě pracovních postupů, které spojují různé fáze strojového učení. Každá fáze strojového učení, jako je příprava dat a trénování modelu, se může skládat z jednoho nebo více kroků v kanálu.
Přehled důvodů a kdy používat kanály najdete v tématu https://aka.ms/pl-concept.
Přehled o vytváření kanálu najdete v tématu https://aka.ms/pl-first-pipeline.
Inicializujte kanál.
- Dědičnost
-
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)
Parametry
- default_datastore
- AbstractAzureStorageDatastore nebo AzureDataLakeDatastore
Výchozí úložiště dat pro datová připojení.
- resolve_closure
- bool
Jestli chcete vyřešit uzavření nebo ne (automaticky zavést závislé kroky).
- default_datastore
- AbstractAzureStorageDatastore nebo AzureDataLakeDatastore
Výchozí úložiště dat pro datová připojení.
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
Zprostředkovatel pracovního postupu, pokud není vytvořen žádný.
- _service_endpoint
- str
Koncový bod služby, pokud žádný, je určen pomocí pracovního prostoru.
Poznámky
Vytvoří se kanál se seznamem kroků a pracovním prostorem. V kanálu je možné použít několik typů kroků. Typ kroku vyberete na základě vašeho scénáře strojového učení.
Azure Machine Learning Pipelines poskytuje integrované kroky pro běžné scénáře. Předdefinované kroky odvozené z kroku PipelineStep jsou kroky, které se používají v jednom kanálu. Příklady najdete v steps balíčku a třídě AutoMLStep .
Pokud pracovní postup použití strojového učení vyžaduje vytvoření kroků, které je možné vytvářet verze a používat je v různých kanálech, použijte funkci v tomto Module modulu.
Odešlete kanál pomocí submit. Při volání příkazu submit se vytvoří objekt , PipelineRun který následně vytvoří StepRun objekty pro každý krok v pracovním postupu. Tyto objekty slouží k monitorování spuštění.
Příklad odeslání kanálu je následující:
from azureml.pipeline.core import Pipeline
pipeline = Pipeline(workspace=ws, steps=steps)
pipeline_run = experiment.submit(pipeline)
Pro kanál existuje několik volitelných nastavení, která je možné zadat při odeslání v .submit
continue_on_step_failure: Jestli chcete pokračovat v provádění kanálu, pokud se krok nezdaří. výchozí hodnota je False. Pokud má hodnotu True, budou pokračovat pouze kroky, které nejsou závislé na výstupu neúspěšného kroku.
regenerate_outputs: Jestli chcete vynutit opětovné obnovení všech výstupů kroků a zakázat opakované použití dat pro toto spuštění, výchozí hodnota je False.
pipeline_parameters: Parametry spuštění kanálu, slovník {name: value}. Další podrobnosti najdete PipelineParameter v tématu .
parent_run_id: Můžete zadat ID spuštění, které nastaví nadřazené spuštění tohoto spuštění kanálu, což se projeví ve funkci RunHistory. Nadřazené spuštění musí patřit do stejného experimentu, do kterého se tento kanál odesílá.
Příklad odeslání kanálu pomocí těchto nastavení:
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>")
Metody
load_yaml |
Načtěte kanál ze zadaného souboru YAML. Soubor YAML lze použít k popisu kanálu, který se skládá z ModuleSteps. |
publish |
Publikujte kanál a zpřístupněte ho pro opětovné spuštění. Jakmile je kanál publikovaný, můžete ho odeslat bez kódu Pythonu, který kanál vytvořil. Vrátí vytvořenou PublishedPipelinehodnotu . |
service_endpoint |
Získejte koncový bod služby přidružený ke kanálu. |
submit |
Odešlete spuštění kanálu. Jedná se o ekvivalent použití submit. Vrátí odeslanou PipelineRunhodnotu . Tento objekt slouží k monitorování a zobrazení podrobností spuštění. |
validate |
Ověřte kanál a identifikujte potenciální chyby, jako jsou nepřipojené vstupy. |
load_yaml
Načtěte kanál ze zadaného souboru YAML.
Soubor YAML lze použít k popisu kanálu, který se skládá z ModuleSteps.
static load_yaml(workspace, filename, _workflow_provider=None, _service_endpoint=None)
Parametry
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
Zprostředkovatel pracovního postupu.
- _service_endpoint
- str
Koncový bod služby, pokud žádný, určí se pomocí pracovního prostoru.
Návraty
Vytvořený kanál.
Návratový typ
Poznámky
Níže najdete příklad souboru YAML. YAML obsahuje název, default_compute a seznamy parametrů, odkazů na data a kroků pro kanál. Každý krok by měl určovat modul, výpočetní a parametr, vstupní a výstupní vazby. Kromě toho je možné v případě potřeby zadat parametr runconfig a argumenty kroku.
Ukázkový soubor Yaml:
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
Publikujte kanál a zpřístupněte ho pro opětovné spuštění.
Jakmile je kanál publikovaný, můžete ho odeslat bez kódu Pythonu, který kanál vytvořil. Vrátí vytvořenou PublishedPipelinehodnotu .
publish(name=None, description=None, version=None, continue_on_step_failure=None)
Parametry
- continue_on_step_failure
- bool
Určuje, jestli chcete pokračovat v provádění dalších kroků v pipelineSpustit, pokud se krok nezdaří. výchozí hodnota je false. Pokud má hodnotu True, budou pokračovat pouze kroky, které nejsou závislé na výstupu neúspěšného kroku.
Návraty
Vytvořil se publikovaný kanál.
Návratový typ
service_endpoint
Získejte koncový bod služby přidružený ke kanálu.
service_endpoint()
Návraty
Koncový bod služby.
Návratový typ
submit
Odešlete spuštění kanálu. Jedná se o ekvivalent použití submit.
Vrátí odeslanou PipelineRunhodnotu . Tento objekt slouží k monitorování a zobrazení podrobností spuštění.
submit(experiment_name, pipeline_parameters=None, continue_on_step_failure=False, regenerate_outputs=False, parent_run_id=None, credential_passthrough=None, **kwargs)
Parametry
- pipeline_parameters
- dict
Parametry spuštění kanálu, slovník {name: value}. Další podrobnosti najdete PipelineParameter v tématu .
- continue_on_step_failure
- bool
Určuje, jestli se má v případě selhání kroku pokračovat v provádění kanálu. Pokud má hodnotu True, budou pokračovat pouze kroky, které nejsou závislé na výstupu neúspěšného kroku.
- regenerate_outputs
- bool
Určuje, jestli se má vynutit opětovné obnovení všech výstupů kroků a zakázat opakované použití dat pro toto spuštění. Při nastavení na False se v tomto spuštění mohou opakovaně použít výsledky z předchozích spuštění a při následných spuštěních se mohou opakovaně použít výsledky tohoto spuštění.
- parent_run_id
- str
Volitelné ID spuštění, které se má nastavit pro nadřazené spuštění tohoto spuštění kanálu, které se projeví v runHistory. Nadřazené spuštění musí patřit do stejného experimentu, do kterého se tento kanál odesílá.
- credential_passthrough
Volitelné– pokud je tento příznak povolený, úloha vzdáleného kanálu použije přihlašovací údaje uživatele, který úlohu inicioval. Tato funkce je dostupná jenom v privátní verzi Preview.
Návraty
Odeslaný kanál se spustí.
Návratový typ
validate
Ověřte kanál a identifikujte potenciální chyby, jako jsou nepřipojené vstupy.
validate()
Návraty
Seznam chyb v kanálu.
Návratový typ
Poznámky
Příklady chyb ověřování:
chybějící nebo neočekávané zdroje dat kanálu nebo typy kroků
chybějící parametry nebo definice výstupu pro zdroj dat kanálu nebo krok
nepřipojené vstupy
Kroky kanálu, které tvoří smyčku nebo cyklus
Pokud ověření proběhne (vrátí prázdný seznam) a váš kanál nefunguje, projděte si téma Ladění kanálů strojového učení a řešení souvisejících potíží.
Atributy
graph
Získejte graf přidružený ke kanálu. Kroky a datové vstupy se v grafu zobrazí jako uzly.
Návraty
Graf
Návratový typ
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro