Megosztás a következőn keresztül:


PythonScriptStep Osztály

Létrehoz egy Python-szkriptet futtató Azure ML Pipeline-lépést.

A PythonScriptStep használatára példaként tekintse meg a jegyzetfüzetet https://aka.ms/pl-get-started.

Hozzon létre egy Python-szkriptet futtató Azure ML Pipeline-lépést.

Konstruktor

PythonScriptStep(script_name, name=None, arguments=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, inputs=None, outputs=None, params=None, source_directory=None, allow_reuse=True, version=None, hash_paths=None)

Paraméterek

Name Description
script_name
Kötelező
str

[Kötelező] Egy Python-szkript neve a következőhöz source_directoryviszonyítva: .

name
str

A lépés neve. Ha nincs meghatározva, script_name akkor a rendszer használja.

Alapértelmezett érték: None
arguments

A Python-szkriptfájl parancssori argumentumai. Az argumentumok a RunConfiguration paraméteren keresztül lesznek átadva a arguments számításhoz. Az argumentumok, például a speciális szimbólumok kezelésének további részleteiért tekintse meg a következőt: .>

Alapértelmezett érték: None
compute_target

[Kötelező] A használni kívánt számítási cél. Ha nincs meghatározva, a runconfigból származó cél lesz használva. Ez a paraméter megadható számítási célobjektumként vagy egy számítási cél sztringneveként a munkaterületen. Ha a számítási cél nem érhető el a folyamat létrehozásakor, a számítási célobjektum beolvasásának elkerülése érdekében megadhat egy rekordot ("számítási cél neve", "számítási cél típusa"). Ha a számítási célobjektum nem érhető el (az AmlCompute típus az "AmlCompute", a RemoteCompute típusa pedig "VirtualMachine").

Alapértelmezett érték: None
runconfig

A nem kötelező RunConfiguration. A RunConfiguration használatával további követelményeket is megadhat a futtatáshoz, például conda-függőségeket és docker-rendszerképeket. Ha nincs meghatározva, létrejön egy alapértelmezett runconfig.

Alapértelmezett érték: None
runconfig_pipeline_params

A runconfig tulajdonságok futásidőben történő felülbírálása kulcs-érték párok használatával, amelyek mindegyike a runconfig tulajdonság nevével és a PipelineParameter tulajdonság nevével van megadva.

Támogatott értékek: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"

Alapértelmezett érték: None
inputs

A bemenetiport-kötések listája.

Alapértelmezett érték: None
outputs

A kimeneti portkötések listája.

Alapértelmezett érték: None
params

A "AML_PARAMETER_" környezeti változóként regisztrált név-érték párok szótára.

Alapértelmezett érték: None
source_directory
str

Python-szkriptet, conda env-t és a lépésben használt egyéb erőforrásokat tartalmazó mappa.

Alapértelmezett érték: None
allow_reuse

Azt jelzi, hogy a lépésnek újra kell-e használnia a korábbi eredményeket ugyanazokkal a beállításokkal való újrafuttatáskor. Az újrafelhasználás alapértelmezés szerint engedélyezve van. Ha a lépés tartalma (szkriptek/függőségek), valamint a bemenetek és paraméterek változatlanok maradnak, a lépés előző futtatásának kimenete újra felhasználható. A lépés újrahasználásakor a feladat számítási feladatként való elküldése helyett az előző futtatás eredményei azonnal elérhetővé válnak a következő lépésekhez. Ha az Azure Machine Learning-adatkészleteket használja bemenetként, az újrafelhasználást az határozza meg, hogy az adathalmaz definíciója megváltozott-e, nem pedig az, hogy az alapul szolgáló adatok megváltoztak-e.

Alapértelmezett érték: True
version
str

Választható verziócímke, amely a lépés funkcióváltozását jelzi.

Alapértelmezett érték: None
hash_paths

ELAVULT: már nincs rá szükség.

A kivonatolási útvonalak listája a lépés tartalmának módosításakor. Ha nem észlelhető változás, a folyamat újra felhasználja a lépés tartalmát egy korábbi futtatásból. Alapértelmezés szerint a rendszer source_directory kivonatolt, kivéve a .amlignore vagy a .gitignore fájlokat.

Alapértelmezett érték: None
script_name
Kötelező
str

[Kötelező] Egy Python-szkript neve a következőhöz source_directoryviszonyítva: .

name
Kötelező
str

A lépés neve. Ha nincs meghatározva, script_name akkor a rendszer használja.

arguments
Kötelező
[str]

A Python-szkriptfájl parancssori argumentumai. Az argumentumok a RunConfiguration paraméteren keresztül lesznek átadva a arguments számításhoz. Az argumentumok, például a speciális szimbólumok kezelésének további részleteiért tekintse meg a következőt: .>

compute_target
Kötelező

[Kötelező] A használni kívánt számítási cél. Ha nincs meghatározva, a runconfigból származó cél lesz használva. Ez a paraméter megadható számítási célobjektumként vagy egy számítási cél sztringneveként a munkaterületen. Ha a számítási cél nem érhető el a folyamat létrehozásakor, a számítási célobjektum beolvasásának elkerülése érdekében megadhat egy rekordot ("számítási cél neve", "számítási cél típusa"). Ha a számítási célobjektum nem érhető el (az AmlCompute típus az "AmlCompute", a RemoteCompute típusa pedig "VirtualMachine").

runconfig
Kötelező

A nem kötelező RunConfiguration. A RunConfiguration használatával további követelményeket adhat meg a futtatáshoz, például conda-függőségeket és docker-rendszerképeket. Ha nincs meghatározva, létrejön egy alapértelmezett runconfig.

runconfig_pipeline_params
Kötelező

A runconfig tulajdonságok futásidőben történő felülbírálása kulcs-érték párok használatával, amelyek mindegyike a runconfig tulajdonság nevével és a PipelineParameter tulajdonság nevével van megadva.

Támogatott értékek: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"

inputs
Kötelező

A bemenetiport-kötések listája.

outputs
Kötelező

A kimeneti portkötések listája.

params
Kötelező
<xref:<xref:{str: str}>>

Név-érték párok szótára. Környezeti változókként regisztrálva a ">>AML_PARAMETER_<<" használatával.

source_directory
Kötelező
str

Python-szkriptet, conda env-t és a lépésben használt egyéb erőforrásokat tartalmazó mappa.

allow_reuse
Kötelező

Azt jelzi, hogy a lépésnek újra kell-e használnia a korábbi eredményeket ugyanazokkal a beállításokkal való újrafuttatáskor. Az újrafelhasználás alapértelmezés szerint engedélyezve van. Ha a lépés tartalma (szkriptek/függőségek), valamint a bemenetek és paraméterek változatlanok maradnak, a lépés előző futtatásának kimenete újra felhasználható. A lépés újrahasználásakor a feladat számítási feladatként való elküldése helyett az előző futtatás eredményei azonnal elérhetővé válnak a következő lépésekhez. Ha az Azure Machine Learning-adatkészleteket használja bemenetként, az újrafelhasználást az határozza meg, hogy az adathalmaz definíciója megváltozott-e, nem pedig az, hogy az alapul szolgáló adatok megváltoztak-e.

version
Kötelező
str

Választható verziócímke, amely a lépés funkcióváltozását jelzi.

hash_paths
Kötelező

ELAVULT: már nincs rá szükség.

A kivonatolási útvonalak listája a lépés tartalmának módosításakor. Ha nem észlelhető változás, a folyamat újra felhasználja a lépés tartalmát egy korábbi futtatásból. Alapértelmezés szerint a rendszer source_directory kivonatolt, kivéve a .amlignore vagy a .gitignore fájlokat.

Megjegyzések

A PythonScriptStep egy alapszintű, beépített lépés egy Python-szkript számítási célon való futtatásához. A parancsprogram neve és egyéb választható paraméterek, például a szkript argumentumai, a számítási cél, a bemenetek és a kimenetek. Ha nincs megadva számítási cél, a rendszer a munkaterület alapértelmezett számítási célját használja. A PythonScriptStep követelményeit is RunConfiguration megadhatja, például a Conda-függőségeket és a Docker-rendszerképet.

A PythonScriptStep használatának ajánlott eljárása egy külön mappa használata szkriptekhez és a lépéshez társított függő fájlokhoz, és a paraméterrel rendelkező source_directory mappa megadása. Ennek az ajánlott eljárásnak a követése két előnnyel jár. Először is segít csökkenteni a lépéshez létrehozott pillanatkép méretét, mert csak a lépéshez szükséges adatok lesznek pillanatképek. Másodszor, a lépés előző futtatásból származó kimenete újra felhasználható, ha nincs olyan módosítás, source_directory amely aktiválná a pillanatkép újrafeltöltését.

Az alábbi példakód egy PythonScriptStep használatát mutatja be gépi tanulási betanítási forgatókönyvben. A példával kapcsolatos további részletekért lásd: https://aka.ms/pl-first-pipeline.


   from azureml.pipeline.steps import PythonScriptStep

   trainStep = PythonScriptStep(
       script_name="train.py",
       arguments=["--input", blob_input_data, "--output", output_data1],
       inputs=[blob_input_data],
       outputs=[output_data1],
       compute_target=compute_target,
       source_directory=project_folder
   )

A PythonScriptSteps számos bemeneti és kimeneti típust támogat. Ezek közé tartoznak DatasetConsumptionConfig a bemenetek és OutputDatasetConfiga kimenetek PipelineOutputAbstractDataset, valamint PipelineData a bemenetek és kimenetek.

Az alábbiakban egy példa látható a lépés bemeneteként és kimeneteként való használatra Dataset :


   from azureml.core import Dataset
   from azureml.pipeline.steps import PythonScriptStep
   from azureml.pipeline.core import Pipeline, PipelineData

   # get input dataset
   input_ds = Dataset.get_by_name(workspace, 'weather_ds')

   # register pipeline output as dataset
   output_ds = PipelineData('prepared_weather_ds', datastore=datastore).as_dataset()
   output_ds = output_ds.register(name='prepared_weather_ds', create_new_version=True)

   # configure pipeline step to use dataset as the input and output
   prep_step = PythonScriptStep(script_name="prepare.py",
                                inputs=[input_ds.as_named_input('weather_ds')],
                                outputs=[output_ds],
                                compute_target=compute_target,
                                source_directory=project_folder)

Hivatkozzon a megfelelő dokumentációs oldalakra más bemeneti/kimeneti típusok használatára.

Metódusok

create_node

Hozzon létre egy csomópontot a PythonScriptStephez, és adja hozzá a megadott gráfhoz.

Ez a módszer nem használható közvetlenül. Amikor ezzel a lépéssel példányosít egy folyamatot, az Azure ML automatikusan átadja a szükséges paramétereket ezen a módszeren keresztül, hogy a lépés hozzáadható legyen a munkafolyamatot képviselő folyamatdiagramhoz.

create_node

Hozzon létre egy csomópontot a PythonScriptStephez, és adja hozzá a megadott gráfhoz.

Ez a módszer nem használható közvetlenül. Amikor ezzel a lépéssel példányosít egy folyamatot, az Azure ML automatikusan átadja a szükséges paramétereket ezen a módszeren keresztül, hogy a lépés hozzáadható legyen a munkafolyamatot képviselő folyamatdiagramhoz.

create_node(graph, default_datastore, context)

Paraméterek

Name Description
graph
Kötelező

A csomópont hozzáadásához a gráfobjektum.

default_datastore
Kötelező

Az alapértelmezett adattár.

context
Kötelező
<xref:azureml.pipeline.core._GraphContext>

A gráfkörnyezet.

Válaszok

Típus Description

A létrehozott csomópont.