Pipeline Osztály

Olyan lépések gyűjteményét jelöli, amelyek újrahasználható Azure Machine Learning-munkafolyamatként hajthatók végre.

Folyamat használatával különböző gépi tanulási fázisokat összefűző munkafolyamatokat hozhat létre és kezelhet. Minden gépi tanulási fázis, például az adat-előkészítés és a modell betanítása, egy folyamat egy vagy több lépéséből állhat.

A Folyamatok használatának okairól és időpontjáról a következő témakörben olvashat bővebben: https://aka.ms/pl-concept.

A folyamat felépítésének áttekintéséhez lásd: https://aka.ms/pl-first-pipeline.

Folyamat inicializálása.

Öröklődés
builtins.object
Pipeline

Konstruktor

Pipeline(workspace, steps, description=None, default_datastore=None, default_source_directory=None, resolve_closure=True, _workflow_provider=None, _service_endpoint=None, **kwargs)

Paraméterek

workspace
Workspace
Kötelező

Az a munkaterület, amelyen be szeretné küldeni a folyamatot.

steps
list
Kötelező

A folyamat részeként végrehajtandó lépések listája.

description
str
Kötelező

A folyamat leírása.

default_datastore
AbstractAzureStorageDatastore vagy AzureDataLakeDatastore
Kötelező

Az adatkapcsolatokhoz használandó alapértelmezett adattár.

default_source_directory
str
Kötelező

A parancsfájlt végrehajtó lépések alapértelmezett szkriptkönyvtára.

resolve_closure
bool
Kötelező

A lezárás feloldása vagy sem (automatikusan függő lépések végrehajtása).

workspace
Workspace
Kötelező

Az a munkaterület, amelyen be szeretné küldeni a folyamatot.

steps
list
Kötelező

A folyamat részeként végrehajtandó lépések listája.

description
str
Kötelező

A folyamat leírása.

default_datastore
AbstractAzureStorageDatastore vagy AzureDataLakeDatastore
Kötelező

Az adatkapcsolatokhoz használandó alapértelmezett adattár.

default_source_directory
str
Kötelező

A parancsfájlt végrehajtó lépések alapértelmezett szkriptkönyvtára.

resolve_closure
bool
Kötelező

A lezárás feloldása vagy sem (automatikusan függő lépések végrehajtása).

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
Kötelező

A munkafolyamat-szolgáltató, ha nincs létrehozva.

_service_endpoint
str
Kötelező

A szolgáltatásvégpont, ha nincs, a munkaterület használatával van meghatározva.

kwargs
dict
Kötelező

Egyéni kulcsszóargumentumok, jövőbeli fejlesztéshez fenntartva

Megjegyzések

Létrejön egy folyamat a lépések listájával és egy munkaterülettel. A folyamatokban számos lépéstípus használható. A gépi tanulási forgatókönyv alapján kiválaszthatja a lépés típusát.

  • Az Azure Machine Learning Pipelines beépített lépéseket biztosít a gyakori forgatókönyvekhez. A PipelineStep-ből származtatott előre elkészített lépések olyan lépések, amelyeket egy folyamat használ. Példákért tekintse meg a steps csomagot és az osztályt AutoMLStep .

  • Ha gépi tanulási munkafolyamatot használ a különböző folyamatokban használható és verziószámozott lépések létrehozására, akkor használja a modul funkcióit Module .

Folyamat elküldése a használatával submit. A küldés meghívásakor létrejön egy PipelineRun , amely viszont objektumokat hoz létre StepRun a munkafolyamat minden lépéséhez. Ezekkel az objektumokkal figyelheti a futtatás végrehajtását.

Egy folyamat elküldésére példa a következő:


   from azureml.pipeline.core import Pipeline

   pipeline = Pipeline(workspace=ws, steps=steps)
   pipeline_run = experiment.submit(pipeline)

A folyamathoz számos választható beállítás adható meg, amelyek a submitfájlban való beküldés után adhatók meg.

  • continue_on_step_failure: A folyamat végrehajtásának folytatása, ha egy lépés meghiúsul; az alapértelmezett érték a False (Hamis). Ha igaz, csak azok a lépések folytatódnak, amelyek nem függnek a sikertelen lépés kimenetétől.

  • regenerate_outputs: Azt, hogy az összes lépés kimenetének újragenerálását kényszerítse-e, és tiltsa-e le az adatok újbóli felhasználását ehhez a futtatáshoz, az alapértelmezett érték a False (Hamis).

  • pipeline_parameters: A folyamat végrehajtásának paraméterei, a(z) {name: value} szótára. További részletekért lásd PipelineParameter : .

  • parent_run_id: Megadhat egy futtatási azonosítót a folyamatfuttatás szülőfuttatásának beállításához, amely a RunHistoryban is megjelenik. A szülőfuttatásnak ugyanahhoz a kísérlethez kell tartoznia, amelyhez az adott folyamatot küldi a rendszer.

Egy folyamatnak az alábbi beállításokkal történő elküldésére a következő példa látható:


   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>")

Metódusok

load_yaml

Töltsön be egy folyamatot a megadott YAML-fájlból.

A YAML-fájlok a ModuleSteps-ekből álló folyamatok leírására használhatók.

publish

Hozzon létre egy folyamatot, és tegye elérhetővé újrafuttatásra.

A folyamat közzététele után a folyamat létrehozásához szükséges Python-kód nélkül is elküldhető. A létrehozott PublishedPipelineértéket adja vissza.

service_endpoint

Kérje le a folyamathoz társított szolgáltatásvégpontot.

submit

Folyamatfuttatás elküldése. Ez egyenértékű a használatával submit.

A beküldött PipelineRunértéket adja vissza. Ezzel az objektummal figyelheti és tekintheti meg a futtatás részleteit.

validate

Ellenőrizze a folyamatot, és azonosítsa a lehetséges hibákat, például a nem csatlakoztatott bemeneteket.

load_yaml

Töltsön be egy folyamatot a megadott YAML-fájlból.

A YAML-fájlok a ModuleSteps-ekből álló folyamatok leírására használhatók.

static load_yaml(workspace, filename, _workflow_provider=None, _service_endpoint=None)

Paraméterek

workspace
Workspace
Kötelező

Az a munkaterület, amelyen be szeretné küldeni a folyamatot.

filename
str
Kötelező

A folyamatot leíró YAML-fájl.

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
alapértelmezett érték: None

A munkafolyamat-szolgáltató.

_service_endpoint
str
alapértelmezett érték: None

A szolgáltatásvégpont (ha nincs) a munkaterület használatával van meghatározva.

Válaszok

A létrehozott folyamat.

Visszatérési típus

Megjegyzések

Lásd alább egy példa YAML-fájlt. A YAML tartalmazza a folyamat paramétereinek, adathivatkozásainak és lépéseinek nevét, default_compute és listáját. Minden lépésnek meg kell adnia a modult, a számítást és a paramétert, a bemenetet és a kimeneti kötéseket. Emellett szükség esetén meg lehet adni egy lépésfuttatási konfigurációt és argumentumokat.

Yaml-mintafájl:


   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

Hozzon létre egy folyamatot, és tegye elérhetővé újrafuttatásra.

A folyamat közzététele után a folyamat létrehozásához szükséges Python-kód nélkül is elküldhető. A létrehozott PublishedPipelineértéket adja vissza.

publish(name=None, description=None, version=None, continue_on_step_failure=None)

Paraméterek

name
str
alapértelmezett érték: None

A közzétett folyamat neve.

description
str
alapértelmezett érték: None

A közzétett folyamat leírása.

version
str
alapértelmezett érték: None

A közzétett folyamat verziója.

continue_on_step_failure
bool
alapértelmezett érték: None

Azt jelzi, hogy folytatja-e a folyamatfuttatás más lépéseinek végrehajtását, ha egy lépés meghiúsul; az alapértelmezett érték hamis. Ha igaz, csak azok a lépések folytatódnak, amelyek nem függnek a sikertelen lépés kimenetétől.

Válaszok

Közzétett folyamat létrehozása.

Visszatérési típus

service_endpoint

Kérje le a folyamathoz társított szolgáltatásvégpontot.

service_endpoint()

Válaszok

A szolgáltatásvégpont.

Visszatérési típus

str

submit

Folyamatfuttatás elküldése. Ez egyenértékű a használatával submit.

A beküldött PipelineRunértéket adja vissza. Ezzel az objektummal figyelheti és tekintheti meg a futtatás részleteit.

submit(experiment_name, pipeline_parameters=None, continue_on_step_failure=False, regenerate_outputs=False, parent_run_id=None, credential_passthrough=None, **kwargs)

Paraméterek

experiment_name
str
Kötelező

Annak a kísérletnek a neve, amelybe a folyamatot be szeretné küldeni.

pipeline_parameters
dict
alapértelmezett érték: None

A folyamat végrehajtásának paraméterei, a(z) {name: value} szótára. További részletekért lásd PipelineParameter : .

continue_on_step_failure
bool
alapértelmezett érték: False

Azt jelzi, hogy folytatja-e a folyamat végrehajtását, ha egy lépés meghiúsul. Ha igaz, csak azok a lépések folytatódnak, amelyek nem függnek a sikertelen lépés kimenetétől.

regenerate_outputs
bool
alapértelmezett érték: False

Azt jelzi, hogy kényszerítse-e az összes lépés kimenetének újragenerálását, és tiltsa-e le az adatok újbóli felhasználását ehhez a futtatáshoz. Ha False (hamis), akkor ez a futtatás újra felhasználhatja a korábbi futtatások eredményeit, a későbbi futtatások pedig újra felhasználhatják a jelenlegi futtatás eredményeit.

parent_run_id
str
alapértelmezett érték: None

A folyamatfuttatás szülőfuttatásához megadható nem kötelező futtatási azonosító, amely a RunHistoryban is megjelenik. A szülőfuttatásnak ugyanahhoz a kísérlethez kell tartoznia, mint a folyamatnak.

credential_passthrough
alapértelmezett érték: None

Ha ez a jelző engedélyezve van, a távoli folyamat feladat a feladatot kezdeményező felhasználó hitelesítő adatait fogja használni. Ez a funkció csak privát előzetes verzióban érhető el.

Válaszok

Az elküldött folyamat futtatása.

Visszatérési típus

validate

Ellenőrizze a folyamatot, és azonosítsa a lehetséges hibákat, például a nem csatlakoztatott bemeneteket.

validate()

Válaszok

A folyamat hibáinak listája.

Visszatérési típus

Megjegyzések

Érvényesítési hibák például a következők:

  • hiányzó vagy váratlan folyamat-adatforrások vagy lépéstípusok

  • hiányzó paraméterek vagy kimeneti definíciók egy folyamat-adatforráshoz vagy -lépéshez

  • nem csatlakoztatott bemenetek

  • ciklust vagy ciklust alkotó folyamatlépések

Ha az ellenőrzés sikeres (üres listát ad vissza), és a folyamat nem működik, tekintse meg a gépi tanulási folyamatok hibakeresését és hibaelhárítását ismertető cikket.

Attribútumok

graph

Kérje le a folyamathoz társított gráfot. A lépések és az adatbemenetek csomópontként jelennek meg a gráfban.

Válaszok

A gráf.

Visszatérési típus