PipelineStep Třída
Představuje krok spuštění v kanálu služby Azure Machine Learning.
Kanály se vytváří z několika kroků kanálu, což jsou odlišné výpočetní jednotky v kanálu. Každý krok může běžet nezávisle a používat izolované výpočetní prostředky. Každý krok má obvykle své vlastní pojmenované vstupy, výstupy a parametry.
Třída PipelineStep je základní třída, ze které dědí další předdefinované třídy kroků navržené pro běžné scénáře, jako PythonScriptStepjsou , DataTransferStepa HyperDriveStep.
Přehled o tom, jak kanály a kroky kanálu souvisejí, najdete v tématu Co jsou kanály ML.
Inicializace pipelineStep.
- Dědičnost
-
builtins.objectPipelineStep
Konstruktor
PipelineStep(name, inputs, outputs, arguments=None, fix_port_name_collisions=False, resource_inputs=None)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název kroku kanálu. |
inputs
Vyžadováno
|
Seznam vstupů kroků. |
outputs
Vyžadováno
|
Seznam výstupů kroků. |
arguments
|
Volitelný seznam argumentů, které se mají předat skriptu použitému v kroku. Default value: None
|
fix_port_name_collisions
|
Určuje, jestli se mají opravit kolize názvů. Pokud má hodnota True a vstup a výstup stejný název, má vstup předponu "INPUT". Výchozí hodnota je Nepravda. Default value: False
|
resource_inputs
|
Volitelný seznam vstupů, které se mají použít jako prostředky. Prostředky se stáhnou do složky script a poskytují způsob, jak změnit chování skriptu za běhu. Default value: None
|
name
Vyžadováno
|
Název kroku kanálu. |
inputs
Vyžadováno
|
Seznam vstupů kroků. |
outputs
Vyžadováno
|
Seznam výstupů kroků. |
arguments
Vyžadováno
|
Volitelný seznam argumentů, které se mají předat skriptu použitému v kroku. |
fix_port_name_collisions
Vyžadováno
|
Určuje, jestli se mají opravit kolize názvů. Pokud má hodnota True a vstup a výstup stejný název, má vstup předponu "INPUT". Výchozí hodnota je Nepravda. |
resource_inputs
Vyžadováno
|
Volitelný seznam vstupů, které se mají použít jako prostředky. Prostředky se stáhnou do složky script a poskytují způsob, jak změnit chování skriptu za běhu. |
Poznámky
PipelineStep je jednotka provádění, která obvykle vyžaduje cíl spuštění (cílový výpočetní objekt), skript ke spuštění s volitelnými argumenty a vstupy skriptu a může vytvářet výstupy. Krok také může mít řadu dalších parametrů specifických pro daný krok.
Kroky kanálu je možné nakonfigurovat společně a vytvořit Pipelinetak pracovní postup , který představuje pracovní postup služby Azure Machine Learning, který lze sdílet a opakovaně použít. Každý krok kanálu je možné nakonfigurovat tak, aby umožňoval opakované použití výsledků předchozího spuštění, pokud obsah kroku (skripty/závislosti) i vstupy a parametry zůstanou beze změny. Při opakovaném použití kroku se místo odeslání úlohy k výpočtu okamžitě zpřístupní výsledky z předchozího spuštění všem dalším krokům.
Azure Machine Learning Pipelines poskytuje integrované kroky pro běžné scénáře. Příklady najdete v steps balíčku a třídě AutoMLStep . Přehled o vytváření kanálu na základě předem připravených kroků najdete v tématu https://aka.ms/pl-first-pipeline.
Předdefinované kroky odvozené z PipelineStep jsou kroky, které se používají v jednom kanálu. Pokud pracovní postup použití strojového Module učení vyžaduje vytvoření kroků, které je možné vytvářet verze a používat v různých kanálech, použijte třídu .
Při práci s kroky kanálu, vstupními a výstupními daty a opětovným použitím kroků mějte na paměti následující skutečnosti.
Pro samostatné kroky doporučujeme použít samostatná umístění source_directory. Pokud jsou všechny skripty v krocích kanálu v jednom adresáři, hodnota hash tohoto adresáře se změní pokaždé, když provedete změnu jednoho skriptu a vynutí opětovné spuštění všech kroků. Příklad použití samostatných adresářů pro různé kroky najdete v tématu https://aka.ms/pl-get-started.
Udržování samostatných složek pro skripty a závislé soubory pro každý krok pomáhá zmenšit velikost snímku vytvořeného pro každý krok, protože se snímkuje jenom konkrétní složka. Vzhledem k tomu, že změny v jakýchkoli souborech v source_directory kroku aktivují opětovné nahrání snímku, přičemž každý krok udržuje samostatné složky, pomáhá přemístit opakované použití kroků v kanálu, protože pokud nedojde k žádným změnám v source_directory kroku, předchozí spuštění kroku se znovu použije.
Pokud se data použitá v kroku nachází v úložišti dat a allow_reuse má hodnotu True, změny změn dat se nezjistí. Pokud se data nahrají jako součást snímku (pod source_directory kroku), i když se to nedoporučuje, hodnota hash se změní a aktivuje opětovné spuštění.
Metody
create_input_output_bindings |
Vytvořte vstupní a výstupní vazby ze vstupů a výstupů kroků. |
create_module_def |
Vytvořte objekt definice modulu, který popisuje krok. |
create_node |
Na základě tohoto kroku vytvořte uzel pro graf kanálu. |
get_source_directory |
Získejte zdrojový adresář pro krok a zkontrolujte, jestli skript existuje. |
resolve_input_arguments |
Spárování vstupů a výstupů s argumenty za účelem vytvoření řetězce argumentu |
run_after |
Tento krok spusťte po zadaném kroku. |
validate_arguments |
Ověřte, že vstupy a výstupy kroku zadané v argumentech jsou v seznamech vstupů a výstupů. |
create_input_output_bindings
Vytvořte vstupní a výstupní vazby ze vstupů a výstupů kroků.
create_input_output_bindings(inputs, outputs, default_datastore, resource_inputs=None)
Parametry
Name | Description |
---|---|
inputs
Vyžadováno
|
Seznam vstupů kroků. |
outputs
Vyžadováno
|
Seznam výstupů kroků. |
default_datastore
Vyžadováno
|
Výchozí úložiště dat. |
resource_inputs
|
Seznam vstupů, které se mají použít jako prostředky. Prostředky se stáhnou do složky script a poskytují způsob, jak změnit chování skriptu za běhu. Default value: None
|
Návraty
Typ | Description |
---|---|
Řazená kolekce vstupních vazeb a výstupních vazeb. |
create_module_def
Vytvořte objekt definice modulu, který popisuje krok.
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)
Parametry
Name | Description |
---|---|
execution_type
Vyžadováno
|
Typ spuštění modulu. |
input_bindings
Vyžadováno
|
Vstupní vazby kroku |
output_bindings
Vyžadováno
|
Výstupní vazby kroku. |
param_defs
|
Definice parametrů kroku. Default value: None
|
create_sequencing_ports
|
Určuje, jestli se pro modul vytvoří sekvencování portů. Default value: True
|
allow_reuse
|
Určuje, jestli bude modul k dispozici pro opakované použití v budoucích kanálech. Default value: True
|
version
|
Verze modulu. Default value: None
|
module_type
|
Typ modulu pro službu vytváření modulu, která se má vytvořit. V současné době jsou podporovány pouze dva typy: Žádný a BatchInferencing.
Default value: None
|
arguments
|
Seznam argumentů s poznámkami, který se má použít při volání tohoto modulu Default value: None
|
runconfig
|
Runconfig, který se použije pro python_script_step Default value: None
|
cloud_settings
|
<xref:azureml.pipeline.core._restclients.aeva.models.CloudSettings>
Nastavení, která se budou používat pro cloudy Default value: None
|
Návraty
Typ | Description |
---|---|
Objekt definice modulu. |
create_node
Na základě tohoto kroku vytvořte uzel pro graf kanálu.
abstract create_node(graph, default_datastore, context)
Parametry
Name | Description |
---|---|
graph
Vyžadováno
|
Graf, do který chcete uzel přidat. |
default_datastore
Vyžadováno
|
Výchozí úložiště dat, které se má použít pro tento krok. |
context
Vyžadováno
|
<xref:azureml.pipeline.core._GraphContext>
Objekt kontextu grafu. |
Návraty
Typ | Description |
---|---|
Vytvořený uzel. |
get_source_directory
Získejte zdrojový adresář pro krok a zkontrolujte, jestli skript existuje.
get_source_directory(context, source_directory, script_name)
Parametry
Name | Description |
---|---|
context
Vyžadováno
|
<xref:azureml.pipeline.core._GraphContext>
Objekt kontextu grafu. |
source_directory
Vyžadováno
|
Zdrojový adresář pro krok. |
script_name
Vyžadováno
|
Název skriptu pro krok. |
hash_paths
Vyžadováno
|
Cesty k hodnotě hash, které se mají použít při určování otisku prstu modulu. |
Návraty
Typ | Description |
---|---|
Zdrojový adresář a cesty k hodnotě hash. |
resolve_input_arguments
Spárování vstupů a výstupů s argumenty za účelem vytvoření řetězce argumentu
static resolve_input_arguments(arguments, inputs, outputs, params)
Parametry
Name | Description |
---|---|
arguments
Vyžadováno
|
Seznam argumentů kroku. |
inputs
Vyžadováno
|
Seznam vstupů kroků. |
outputs
Vyžadováno
|
Seznam výstupů kroků. |
params
Vyžadováno
|
Seznam parametrů kroku |
Návraty
Typ | Description |
---|---|
Vrátí řazenou kolekci členů dvou položek. První je plochý seznam položek pro přeložené argumenty. Druhý je seznam strukturovaných argumentů (_InputArgument, _OutputArgument, _ParameterArgument a _StringArgument). |
run_after
Tento krok spusťte po zadaném kroku.
run_after(step)
Parametry
Name | Description |
---|---|
step
Vyžadováno
|
Krok kanálu, který se má spustit před tímto krokem. |
Poznámky
Pokud chcete po dokončení kroku 1 i kroku 2 spustit krok, například krok 3, můžete použít:
step3.run_after(step1)
step3.run_after(step2)
validate_arguments
Ověřte, že vstupy a výstupy kroku zadané v argumentech jsou v seznamech vstupů a výstupů.
static validate_arguments(arguments, inputs, outputs)
Parametry
Name | Description |
---|---|
arguments
Vyžadováno
|
Seznam argumentů kroku |
inputs
Vyžadováno
|
Seznam vstupů kroků. |
outputs
Vyžadováno
|
Seznam výstupů kroků. |