AzureBatchStep Klasse
Erstellt einen Azure ML-Pipelineschritt zum Übermitteln von Aufträgen an Azure Batch.
Hinweis: Dieser Schritt unterstützt nicht das Hoch-/Herunterladen von Verzeichnissen und deren Inhalt.
Ein Beispiel für die Verwendung von AzureBatchStep finden Sie im Notebook https://aka.ms/pl-azbatch.
Erstellen Sie einen Azure ML-Pipelineschritt zum Übermitteln von Aufträgen an Azure Batch.
- Vererbung
-
azureml.pipeline.core._azurebatch_step_base._AzureBatchStepBaseAzureBatchStep
Konstruktor
AzureBatchStep(name, create_pool=False, pool_id=None, delete_batch_job_after_finish=True, delete_batch_pool_after_finish=False, is_positive_exit_code_failure=True, vm_image_urn='urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter', run_task_as_admin=False, target_compute_nodes=1, vm_size='standard_d1_v2', source_directory=None, executable=None, arguments=None, inputs=None, outputs=None, allow_reuse=True, compute_target=None, version=None)
Parameter
- create_pool
- bool
Gibt an, ob der Pool vor der Ausführung der Aufträge erstellt werden soll.
- pool_id
- str
[Erforderlich] Die ID des Pools, in dem der Auftrag ausgeführt wird. Die ID kann ein vorhandener Pool oder ein Pool sein, der beim Übermitteln des Auftrags erstellt wird.
- delete_batch_job_after_finish
- bool
Gibt an, ob der Auftrag nach seinem Abschluss aus dem Batch-Konto gelöscht werden soll.
- delete_batch_pool_after_finish
- bool
Gibt an, ob der Pool nach Abschluss des Auftrags gelöscht werden soll.
- is_positive_exit_code_failure
- bool
Gibt an, ob der Auftrag fehlschlägt, wenn die Aufgabe mit einem positiven Code vorhanden ist.
- vm_image_urn
- str
Wenn „true“ für create_pool
angegeben ist und der virtuelle Computer VirtualMachineConfiguration verwendet.
Wertformat: urn:publisher:offer:sku
.
Beispiel: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
.
- run_task_as_admin
- bool
Gibt an, ob die Aufgabe mit Administratorrechten ausgeführt werden soll.
- target_compute_nodes
- int
Gibt an, wie viele Serverknoten dem Pool hinzugefügt werden, wenn create_pool
„true“ ist.
- vm_size
- str
Gibt die VM-Größe von Serverknoten an, wenn create_pool
„true“ ist.
- source_directory
- str
Ein lokaler Ordner, der die Binärdateien des Moduls, die ausführbare Datei, die Assemblys usw. enthält.
- executable
- str
[Erforderlich] Der Name des Befehls/der ausführbaren Datei, der/die als Teil dieses Auftrags ausgeführt wird.
- inputs
- list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData]]
Eine Liste mit Eingabeportbindungen. Bevor der Auftrag ausgeführt wird, wird für jede Eingabe ein Ordner erstellt. Die Dateien für jede Eingabe werden aus dem Speicher in den entsprechenden Ordner auf dem Computeknoten kopiert. Wenn der Eingabename beispielsweise input1 lautet und der relative Pfad im Speicher beliebiger/relativer/pfad/der/sehr/lang/sein/kann/inputfile.txt ist, ist der Dateipfad auf der Computeressource ./input1/inputfile.txt. Wenn der Eingabename länger als 32 Zeichen ist, wird er abgeschnitten und mit einem eindeutigen Suffix versehen, damit der Ordnername erfolgreich auf dem Computeziel erstellt werden kann.
Eine Liste mit Ausgabeportbindungen. Ähnlich wie bei Eingaben wird vor der Auftragsausführung für jede Ausgabe ein Ordner erstellt. Der Ordnername ist mit dem Ausgabenamen identisch. Es wird davon ausgegangen, dass der Auftrag die Ausgabe in diesem Ordner platziert.
- allow_reuse
- bool
Gibt an, ob bei dem Schritt vorherige Ergebnisse wiederverwendet werden sollen, wenn er mit den gleichen Einstellungen erneut ausgeführt wird. Die Wiederverwendung ist standardmäßig aktiviert. Wenn der Schrittinhalt (Skripts/Abhängigkeiten) sowie die Eingaben und Parameter unverändert bleiben, wird die Ausgabe der vorherigen Ausführung dieses Schritts wiederverwendet. Wenn Sie den Schritt wiederverwenden, anstatt den Auftrag zum Berechnen zu übermitteln, werden die Ergebnisse der vorherigen Ausführung sofort für alle nachfolgenden Schritte verfügbar gemacht. Wenn Sie Azure Machine Learning-Datasets als Eingaben verwenden, hängt die Wiederverwendung nicht davon ab, ob sich die zugrunde liegenden Daten geändert haben, sondern davon, ob sich die Definition des Datasets geändert hat.
- compute_target
- BatchCompute, str
[Erforderlich] Eine BatchCompute-Computeressource, auf der der Auftrag ausgeführt wird.
- version
- str
Ein optionales Versionstag, um eine Änderung der Funktionalität für das Modul zu kennzeichnen.
- create_pool
- bool
Gibt an, ob der Pool vor der Ausführung der Aufträge erstellt werden soll.
- pool_id
- str
[Erforderlich] Die ID des Pools, in dem der Auftrag ausgeführt wird. Die ID kann ein vorhandener Pool oder ein Pool sein, der beim Übermitteln des Auftrags erstellt wird.
- delete_batch_job_after_finish
- bool
Gibt an, ob der Auftrag nach seinem Abschluss aus dem Batch-Konto gelöscht werden soll.
- delete_batch_pool_after_finish
- bool
Gibt an, ob der Pool nach Abschluss des Auftrags gelöscht werden soll.
- is_positive_exit_code_failure
- bool
Gibt an, ob der Auftrag fehlschlägt, wenn die Aufgabe mit einem positiven Code vorhanden ist.
- vm_image_urn
- str
Wenn „true“ für create_pool
angegeben ist und der virtuelle Computer VirtualMachineConfiguration verwendet.
Wertformat: urn:publisher:offer:sku
.
Beispiel: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
.
- run_task_as_admin
- bool
Gibt an, ob die Aufgabe mit Administratorrechten ausgeführt werden soll.
- target_compute_nodes
- int
Gibt an, wie viele Serverknoten dem Pool hinzugefügt werden, wenn create_pool
„true“ ist.
- vm_size
- str
Wenn create_pool
True ist, gibt die Größe des virtuellen Computers der Computeknoten an.
- source_directory
- str
Ein lokaler Ordner, der die Modulbinärdateien, ausführbare Dateien, Assemblys usw. enthält.
- executable
- str
[Erforderlich] Der Name des Befehls/der ausführbaren Datei, der/die als Teil dieses Auftrags ausgeführt wird.
- inputs
- list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData]]
Eine Liste mit Eingabeportbindungen. Bevor der Auftrag ausgeführt wird, wird für jede Eingabe ein Ordner erstellt. Die Dateien für jede Eingabe werden aus dem Speicher in den entsprechenden Ordner auf dem Computeknoten kopiert. Wenn der Eingabename beispielsweise input1 lautet und der relative Pfad im Speicher beliebiger/relativer/pfad/der/sehr/lang/sein/kann/inputfile.txt ist, ist der Dateipfad auf der Computeressource ./input1/inputfile.txt. Falls der Eingabename länger als 32 Zeichen ist, wird er abgeschnitten und mit einem eindeutigen Suffix angefügt, sodass der Ordnername erfolgreich auf der Compute-Instanz erstellt werden kann.
Eine Liste mit Ausgabeportbindungen. Ähnlich wie bei Eingaben wird vor der Auftragsausführung für jede Ausgabe ein Ordner erstellt. Der Ordnername ist mit dem Ausgabenamen identisch. Es wird davon ausgegangen, dass der Auftrag die Ausgabe in diesem Ordner enthält.
- allow_reuse
- bool
Gibt an, ob bei dem Schritt vorherige Ergebnisse wiederverwendet werden sollen, wenn er mit den gleichen Einstellungen erneut ausgeführt wird. Die Wiederverwendung ist standardmäßig aktiviert. Wenn der Schrittinhalt (Skripts/Abhängigkeiten) sowie die Eingaben und Parameter unverändert bleiben, wird die Ausgabe der vorherigen Ausführung dieses Schritts wiederverwendet. Wenn Sie den Schritt wiederverwenden, anstatt den Auftrag zum Berechnen zu übermitteln, werden die Ergebnisse der vorherigen Ausführung sofort für alle nachfolgenden Schritte verfügbar gemacht. Wenn Sie Azure Machine Learning-Datasets als Eingaben verwenden, hängt die Wiederverwendung nicht davon ab, ob sich die zugrunde liegenden Daten geändert haben, sondern davon, ob sich die Definition des Datasets geändert hat.
- compute_target
- BatchCompute, str
[Erforderlich] Eine BatchCompute-Computeressource, auf der der Auftrag ausgeführt wird.
- version
- str
Ein optionales Versionstag, um eine Änderung der Funktionalität für das Modul zu kennzeichnen.
Hinweise
Das folgende Beispiel zeigt die Verwendung von AzureBatchStep in einer Azure Machine Learning-Pipeline.
step = AzureBatchStep(
name="Azure Batch Job",
pool_id="MyPoolName", # Replace this with the pool name of your choice
inputs=[testdata],
outputs=[outputdata],
executable="azurebatch.cmd",
arguments=[testdata, outputdata],
compute_target=batch_compute,
source_directory=binaries_folder,
)
Das vollständige Beispiel finden Sie unter https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-azurebatch-to-run-a-windows-executable.ipynb.
Methoden
create_node |
Erstellen Sie einen Knoten aus dem AzureBatch-Schritt, und fügen Sie ihn dem angegebenen Graphen hinzu. Diese Methode ist nicht für die direkte Nutzung vorgesehen. Wenn eine Pipeline mit diesem Schritt instanziiert wird, werden von Azure ML automatisch die für diese Methode erforderlichen Parameter übergeben, damit der Schritt einem Pipelinegraphen hinzugefügt werden kann, der den Workflow darstellt. |
create_node
Erstellen Sie einen Knoten aus dem AzureBatch-Schritt, und fügen Sie ihn dem angegebenen Graphen hinzu.
Diese Methode ist nicht für die direkte Nutzung vorgesehen. Wenn eine Pipeline mit diesem Schritt instanziiert wird, werden von Azure ML automatisch die für diese Methode erforderlichen Parameter übergeben, damit der Schritt einem Pipelinegraphen hinzugefügt werden kann, der den Workflow darstellt.
create_node(graph, default_datastore, context)
Parameter
- default_datastore
- Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Der Standarddatenspeicher.
- context
- <xref:azureml.pipeline.core._GraphContext>
Der Graphkontext.
Gibt zurück
Der erstellte Knoten.
Rückgabetyp
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für