Sdílet prostřednictvím


CommandStep Třída

Vytvořte krok kanálu Azure ML, který spustí příkaz.

Vytvořte krok kanálu Azure ML, který spustí příkaz.

Konstruktor

CommandStep(command=None, name=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, inputs=None, outputs=None, params=None, source_directory=None, allow_reuse=True, version=None)

Parametry

Name Description
command
list nebo str

Příkaz ke spuštění nebo cestě spustitelného souboru nebo skriptu vzhledem k source_directory. Vyžaduje se, pokud není k dispozici s runconfig. Dá se zadat pomocí řetězcových argumentů v jednom řetězci nebo pomocí vstupu, výstupu nebo pipelineParameteru v seznamu.

Default value: None
name
str

Název kroku. Pokud není zadané, použije se první slovo v textu command .

Default value: None
compute_target

Cílový výpočetní objekt, který se má použít. Pokud není zadaný, použije se cíl z objektu runconfig . Tento parametr může být zadán jako cílový objekt výpočetního objektu nebo jako název řetězce cílového výpočetního objektu v pracovním prostoru. Volitelně pokud výpočetní cíl není k dispozici v době vytvoření kanálu, můžete zadat řazenou kolekci členů ("název cílového výpočetního objektu", "cílový typ výpočetního objektu"), abyste se vyhnuli načtení cílového objektu výpočetního objektu (typ AmlCompute je AmlCompute a typ RemoteCompute je VirtualMachine).

Default value: None
runconfig

Volitelný objekt konfigurace, který zapouzdřuje informace potřebné k odeslání trénovacího spuštění v experimentu.

Default value: None
runconfig_pipeline_params
<xref:<xref:{str: PipelineParameter}>>

Přepsání vlastností runconfig za běhu pomocí párů klíč-hodnota každý s názvem vlastnosti runconfig a PipelineParameter pro danou vlastnost.

Podporované hodnoty: NodeCount, MpiProcessCountPerNode, TensorflowWorkerCount, TensorflowParameterServerCount

Default value: None
inputs
list[InputPortBinding nebo DataReference nebo PortDataReference nebo PipelineData nebo <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> nebo DatasetConsumptionConfig]

Seznam vstupních vazeb portů

Default value: None
outputs

Seznam výstupních vazeb portů

Default value: None
params

Slovník párů name-value registrovaných jako proměnné prostředí s "AML_PARAMETER_".

Default value: None
source_directory
str

Složka, která obsahuje skripty, conda env a další prostředky použité v kroku.

Default value: None
allow_reuse

Určuje, jestli má krok znovu použít předchozí výsledky při opětovném spuštění se stejným nastavením. Opakované použití je ve výchozím nastavení povolené. Pokud obsah kroku (skripty/závislosti) a vstupy a parametry zůstanou beze změny, výstup z předchozího spuštění tohoto kroku se znovu použije. Při opětovném použití kroku místo odeslání úlohy k výpočtu se výsledky předchozího spuštění okamžitě zpřístupní pro všechny následné kroky. Pokud jako vstupy používáte datové sady Azure Machine Learning, určuje se opakované použití podle toho, jestli se definice datové sady změnila, a ne tím, jestli se podkladová data změnila.

Default value: True
version
str

Volitelná značka verze, která označuje změnu funkčnosti kroku.

Default value: None
command
Vyžadováno
list nebo str

Příkaz ke spuštění nebo cestě spustitelného souboru nebo skriptu vzhledem k source_directory. Vyžaduje se, pokud není k dispozici s runconfig. Dá se zadat pomocí řetězcových argumentů v jednom řetězci nebo pomocí vstupu, výstupu nebo pipelineParameteru v seznamu.

name
Vyžadováno
str

Název kroku. Pokud není zadané, použije se první slovo v textu command .

compute_target
Vyžadováno

Cílový výpočetní objekt, který se má použít. Pokud není zadaný, použije se cíl z objektu runconfig . Tento parametr může být zadán jako cílový objekt výpočetního objektu nebo jako název řetězce cílového výpočetního objektu v pracovním prostoru. Volitelně pokud výpočetní cíl není k dispozici v době vytvoření kanálu, můžete zadat řazenou kolekci členů ("název cílového výpočetního objektu", "cílový typ výpočetního objektu"), abyste se vyhnuli načtení cílového objektu výpočetního objektu (typ AmlCompute je AmlCompute a typ RemoteCompute je VirtualMachine).

runconfig
Vyžadováno

Volitelný objekt konfigurace, který zapouzdřuje informace potřebné k odeslání trénovacího spuštění v experimentu.

runconfig_pipeline_params
Vyžadováno
<xref:<xref:{str: PipelineParameter}>>

Přepsání vlastností runconfig za běhu pomocí párů klíč-hodnota každý s názvem vlastnosti runconfig a PipelineParameter pro danou vlastnost.

Podporované hodnoty: NodeCount, MpiProcessCountPerNode, TensorflowWorkerCount, TensorflowParameterServerCount

inputs
Vyžadováno
list[InputPortBinding nebo DataReference nebo PortDataReference nebo PipelineData nebo <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> nebo DatasetConsumptionConfig]

Seznam vstupních vazeb portů

outputs
Vyžadováno

Seznam výstupních vazeb portů

params
Vyžadováno

Slovník párů name-value registrovaných jako proměnné prostředí s "AML_PARAMETER_".

source_directory
Vyžadováno
str

Složka, která obsahuje skripty, conda env a další prostředky použité v kroku.

allow_reuse
Vyžadováno

Určuje, jestli má krok znovu použít předchozí výsledky při opětovném spuštění se stejným nastavením. Opakované použití je ve výchozím nastavení povolené. Pokud obsah kroku (skripty/závislosti) a vstupy a parametry zůstanou beze změny, výstup z předchozího spuštění tohoto kroku se znovu použije. Při opětovném použití kroku místo odeslání úlohy k výpočtu se výsledky předchozího spuštění okamžitě zpřístupní pro všechny následné kroky. Pokud jako vstupy používáte datové sady Azure Machine Learning, určuje se opakované použití podle toho, jestli se definice datové sady změnila, a ne tím, jestli se podkladová data změnila.

version
Vyžadováno
str

Volitelná značka verze, která označuje změnu funkčnosti kroku.

Poznámky

CommandStep je základní integrovaný krok pro spuštění příkazu na daném cílovém výpočetním objektu. Přebírá příkaz jako parametr nebo z jiných parametrů, jako je runconfig. Přebírá také další volitelné parametry, jako je cílový výpočetní objekt, vstupy a výstupy. Měli byste použít ScriptRunConfig nebo RunConfiguration zadat požadavky pro CommandStep, například vlastní image Dockeru.

Osvědčeným postupem pro práci s CommandStep je použít samostatnou složku pro spustitelný soubor nebo skript ke spuštění všech závislých souborů přidružených k kroku a zadat tuto složku s parametrem source_directory . Následující osvědčený postup má dvě výhody. Za prvé pomáhá zmenšit velikost snímku vytvořeného pro tento krok, protože se snímek vyžaduje jenom v případě, že se tento krok potřebuje. Za druhé, výstup kroku z předchozího spuštění lze znovu použít, pokud nedojde k source_directory žádným změnám, které by aktivovaly opětovné nahrání snímku.

Pro příkazy source_directory známé systémem není nutné, ale přesto je můžete poskytnout s libovolnými závislými soubory přidruženými k danému kroku.

Následující příklad kódu ukazuje, jak použít CommandStep ve scénáři trénování strojového učení. Zobrazení seznamu souborů v Linuxu:


   from azureml.pipeline.steps import CommandStep

   trainStep = CommandStep(name='list step',
                           command='ls -lrt',
                           compute_target=compute_target)

Spuštění skriptu Pythonu:


   from azureml.pipeline.steps import CommandStep

   trainStep = CommandStep(name='train step',
                           command='python train.py arg1 arg2',
                           source_directory=project_folder,
                           compute_target=compute_target)

Spuštění skriptu Pythonu pomocí ScriptRunConfig:


   from azureml.core import ScriptRunConfig
   from azureml.pipeline.steps import CommandStep

   train_src = ScriptRunConfig(source_directory=script_folder,
                               command='python train.py arg1 arg2',
                               environment=my_env)
   trainStep = CommandStep(name='train step',
                           runconfig=train_src)

https://aka.ms/pl-first-pipeline Další podrobnosti o vytváření kanálů najdete obecně.

Metody

create_node

Vytvořte uzel pro CommandStep a přidejte ho do zadaného grafu.

Tato metoda není určena k přímému použití. Když se vytvoří instance kanálu pomocí tohoto kroku, Azure ML automaticky předá parametry požadované touto metodou, aby se tento krok mohl přidat do grafu kanálu, který představuje pracovní postup.

create_node

Vytvořte uzel pro CommandStep a přidejte ho do zadaného grafu.

Tato metoda není určena k přímému použití. Když se vytvoří instance kanálu pomocí tohoto kroku, Azure ML automaticky předá parametry požadované touto metodou, aby se tento krok mohl přidat do grafu kanálu, který představuje pracovní postup.

create_node(graph, default_datastore, context)

Parametry

Name Description
graph
Vyžadováno

Objekt grafu pro přidání uzlu.

default_datastore
Vyžadováno

Výchozí úložiště dat.

context
Vyžadováno
<xref:_GraphContext>

Kontext grafu

Návraty

Typ Description

Vytvořený uzel.