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 Pipeline-Schritt 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
Name | Beschreibung |
---|---|
name
Erforderlich
|
[Erforderlich] Der Name des Schritts. |
create_pool
|
Gibt an, ob der Pool vor der Ausführung der Aufträge erstellt werden soll. Standardwert: False
|
pool_id
|
[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. Standardwert: None
|
delete_batch_job_after_finish
|
Gibt an, ob der Auftrag nach seinem Abschluss aus dem Batch-Konto gelöscht werden soll. Standardwert: True
|
delete_batch_pool_after_finish
|
Gibt an, ob der Pool nach Abschluss des Auftrags gelöscht werden soll. Standardwert: False
|
is_positive_exit_code_failure
|
Gibt an, ob der Auftrag fehlschlägt, wenn die Aufgabe mit einem positiven Code vorhanden ist. Standardwert: True
|
vm_image_urn
|
Wenn „true“ für Standardwert: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
|
run_task_as_admin
|
Gibt an, ob die Aufgabe mit Administratorrechten ausgeführt werden soll. Standardwert: False
|
target_compute_nodes
|
Gibt an, wie viele Serverknoten dem Pool hinzugefügt werden, wenn Standardwert: 1
|
vm_size
|
Gibt die VM-Größe von Serverknoten an, wenn Standardwert: standard_d1_v2
|
source_directory
|
Ein lokaler Ordner, der die Binärdateien des Moduls, die ausführbare Datei, die Assemblys usw. enthält. Standardwert: None
|
executable
|
[Erforderlich] Der Name des Befehls/der ausführbaren Datei, der/die als Teil dieses Auftrags ausgeführt wird. Standardwert: None
|
arguments
|
Argumente für den Befehl/die ausführbare Datei. Standardwert: None
|
inputs
|
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. Standardwert: None
|
outputs
|
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. Standardwert: None
|
allow_reuse
|
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. Standardwert: True
|
compute_target
|
[Erforderlich] Eine BatchCompute-Computeressource, auf der der Auftrag ausgeführt wird. Standardwert: None
|
version
|
Ein optionales Versionstag, um eine Änderung der Funktionalität für das Modul zu kennzeichnen. Standardwert: None
|
name
Erforderlich
|
[Erforderlich] Der Name des Schritts. |
create_pool
Erforderlich
|
Gibt an, ob der Pool vor der Ausführung der Aufträge erstellt werden soll. |
pool_id
Erforderlich
|
[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
Erforderlich
|
Gibt an, ob der Auftrag nach seinem Abschluss aus dem Batch-Konto gelöscht werden soll. |
delete_batch_pool_after_finish
Erforderlich
|
Gibt an, ob der Pool nach Abschluss des Auftrags gelöscht werden soll. |
is_positive_exit_code_failure
Erforderlich
|
Gibt an, ob der Auftrag fehlschlägt, wenn die Aufgabe mit einem positiven Code vorhanden ist. |
vm_image_urn
Erforderlich
|
Wenn „true“ für |
run_task_as_admin
Erforderlich
|
Gibt an, ob die Aufgabe mit Administratorrechten ausgeführt werden soll. |
target_compute_nodes
Erforderlich
|
Gibt an, wie viele Serverknoten dem Pool hinzugefügt werden, wenn |
vm_size
Erforderlich
|
Wenn |
source_directory
Erforderlich
|
Ein lokaler Ordner, der die Modulbinärdateien, ausführbare Dateien, Assemblys usw. enthält. |
executable
Erforderlich
|
[Erforderlich] Der Name des Befehls/der ausführbaren Datei, der/die als Teil dieses Auftrags ausgeführt wird. |
arguments
Erforderlich
|
Argumente für den Befehl/die ausführbare Datei. |
inputs
Erforderlich
|
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 angefügt, sodass der Ordnername erfolgreich auf der Computeerstellung erstellt werden konnte. |
outputs
Erforderlich
|
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 hat. |
allow_reuse
Erforderlich
|
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
Erforderlich
|
[Erforderlich] Eine BatchCompute-Computeressource, auf der der Auftrag ausgeführt wird. |
version
Erforderlich
|
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
Name | Beschreibung |
---|---|
graph
Erforderlich
|
Das Graphobjekt, dem der Knoten hinzugefügt werden soll. |
default_datastore
Erforderlich
|
Der Standarddatenspeicher. |
context
Erforderlich
|
<xref:azureml.pipeline.core._GraphContext>
Der Graphkontext. |
Gibt zurück
Typ | Beschreibung |
---|---|
Der erstellte Knoten. |