PythonScriptStep Osztály
Létrehoz egy Python-szkriptet futtató Azure ML Pipeline-lépést.
A PythonScriptStep használatáról a jegyzetfüzetben https://aka.ms/pl-get-startedtalál példát.
Hozzon létre egy Python-szkriptet futtató Azure ML Pipeline-lépést.
- Öröklődés
-
azureml.pipeline.core._python_script_step_base._PythonScriptStepBasePythonScriptStep
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
- script_name
- str
[Kötelező] Egy Python-szkript neve a következőhöz source_directory
viszonyítva: .
- name
- str
A lépés neve. Ha nincs meghatározva, script_name
akkor a függvényt használja.
- arguments
- list
A Python-szkriptfájl parancssori argumentumai. Az argumentumok a RunConfiguration paraméteren keresztül lesznek átadva a arguments
számításnak.
Az argumentumok, például a speciális szimbólumok kezelésének további részleteiért lásd: RunConfiguration.
- compute_target
- Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
[Kötelező] A használni kívánt számítási cél. Ha nincs meghatározva, a rendszer a runconfigból származó célt fogja használni. 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, megadhat egy rekordot (számítási célnév, "számítási céltípus") a számítási célobjektum lekérésének elkerülése érdekében (az AmlCompute típusa "AmlCompute", a RemoteCompute típusa pedig "VirtualMachine").
- runconfig
- RunConfiguration
A nem kötelező RunConfiguration használata. 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-lemezképeket. Ha nincs meghatározva, létrejön egy alapértelmezett runconfig.
- runconfig_pipeline_params
- dict[str, PipelineParameter]
A futtatókörnyezeti runconfig tulajdonságok 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ággal rendelkezik.
Támogatott értékek: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"
- inputs
- list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
A bemenetiport-kötések listája.
- outputs
- list[Union[PipelineData, OutputDatasetConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset, OutputPortBinding]]
A kimeneti portkötések listája.
- params
- dict
A "AML_PARAMETER_" környezeti változóként regisztrált név-érték párok szótára.
- source_directory
- str
Python-szkriptet, conda env-t és a lépésben használt egyéb erőforrásokat tartalmazó mappa.
- allow_reuse
- bool
Azt jelzi, hogy a lépés újra felhasználja-e a korábbi eredményeket, amikor ugyanazokat a beállításokat használja újra. 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ából származó kimenet újra felhasználva lesz. A lépés újbóli használata esetén 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 további lépésekhez. Ha az Azure Machine Learning-adathalmazokat 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 a mögöttes adatok megváltoztak-e.
- version
- str
Választható verziócímke, amely a lépés funkcióváltozását jelzi.
- hash_paths
- list
ELAVULT: már nincs rá szükség.
A kivonat elérési útjainak listája a lépés tartalmának módosításakor. Ha nem észlelhető változás, a folyamat újra felhasználja az előző futtatásból származó lépés tartalmát. Alapértelmezés szerint a tartalom source_directory
kivonatolva van, kivéve az .amlignore vagy .gitignore fájlokat.
- script_name
- str
[Kötelező] Egy Python-szkript neve a következőhöz source_directory
viszonyítva: .
- arguments
- [str]
A Python-szkriptfájl parancssori argumentumai. Az argumentumok a RunConfiguration paraméteren keresztül lesznek átadva a arguments
számításnak.
Az argumentumok, például a speciális szimbólumok kezelésének további részleteiért lásd: RunConfiguration.
- compute_target
- Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
[Kötelező] A használni kívánt számítási cél. Ha nincs meghatározva, a rendszer a runconfigból származó célt fogja használni. 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, megadhat egy rekordot (számítási célnév, "számítási céltípus") a számítási célobjektum lekérésének elkerülése érdekében (az AmlCompute típusa "AmlCompute", a RemoteCompute típusa pedig "VirtualMachine").
- runconfig
- RunConfiguration
A nem kötelező RunConfiguration használata. 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
- dict[str, PipelineParameter]
A futtatókörnyezeti runconfig tulajdonságok 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ággal rendelkezik.
Támogatott értékek: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"
- inputs
- list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
A bemenetiport-kötések listája.
- outputs
- list[Union[PipelineData, OutputDatasetConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset, OutputPortBinding]]
A kimeneti portkötések listája.
- params
- <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
- str
Python-szkriptet, conda env-t és a lépésben használt egyéb erőforrásokat tartalmazó mappa.
- allow_reuse
- bool
Azt jelzi, hogy a lépés újra felhasználja-e a korábbi eredményeket, amikor ugyanazokat a beállításokat használja újra. 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ából származó kimenet újra felhasználva lesz. A lépés újbóli használata esetén 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 további lépésekhez. Ha az Azure Machine Learning-adathalmazokat 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 a mögöttes adatok megváltoztak-e.
- hash_paths
- list
ELAVULT: már nincs rá szükség.
A kivonat elérési útjainak listája a lépés tartalmának módosításakor. Ha nem észlelhető változás, a folyamat újra felhasználja az előző futtatásból származó lépés tartalmát. Alapértelmezés szerint a tartalom source_directory
kivonatolva van, kivéve az .amlignore vagy .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 szkript nevét és egyéb opcionális paramétereket (például a szkript, a számítási cél, a bemenetek és kimenetek argumentumait) használja. 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. Az a RunConfiguration használatával a PythonScriptStep követelményeit is megadhatja, például conda-függőségeket és docker-lemezképeket.
A PythonScriptStep használatához ajánlott egy külön mappát használni a szkriptekhez és a lépéshez társított függő fájlokhoz, és meg kell adnia a mappát a source_directory
paraméterrel.
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 pillanatkép készül. Másodszor, az előző futtatásból származó lépés kimenete újra felhasználható, ha nincsenek olyan módosítások, source_directory
amelyek elindítanák a pillanatkép újrafeltöltését.
Az alábbi példakód egy PythonScriptStep használatát mutatja be egy 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 , PipelineOutputAbstractDatasetés PipelineData a bemenetek és kimenetek.
Az alábbiakban egy példa látható arra, hogyan használhatja Dataset lépésként a bemenetet és a kimenetet:
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, hogy példákat találjon más bemeneti/kimeneti típusok használatára.
Metódusok
create_node |
Hozzon létre egy csomópontot a PythonScriptStep számára, és adja hozzá a megadott gráfhoz. Ez a módszer nem használható közvetlenül. Ha 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, így a lépés hozzáadható a munkafolyamatot képviselő folyamatgráfhoz. |
create_node
Hozzon létre egy csomópontot a PythonScriptStep számára, és adja hozzá a megadott gráfhoz.
Ez a módszer nem használható közvetlenül. Ha 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, így a lépés hozzáadható a munkafolyamatot képviselő folyamatgráfhoz.
create_node(graph, default_datastore, context)
Paraméterek
- default_datastore
- Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Az alapértelmezett adattár.
- context
- <xref:azureml.pipeline.core._GraphContext>
A gráfkörnyezet.
Válaszok
A létrehozott csomópont.
Visszatérési típus
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: