Module Klasse
Stellt eine Berechnungseinheit dar, die in einer Azure Machine Learning-Pipeline verwendet wird.
Ein Modul ist eine Sammlung von Dateien, die auf einem Computeziel und einer Beschreibung einer Schnittstelle ausgeführt werden. Die Sammlung von Dateien kann Skripts, Binärdateien oder andere Dateien sein, die für die Ausführung auf dem Computeziel erforderlich sind. Die Modulschnittstelle beschreibt Eingaben, Ausgaben und Parameterdefinitionen. Sie binden sie nicht an bestimmte Werte oder Daten. Einem Modul ist eine Momentaufnahme zugeordnet, die die Sammlung der für das Modul definierten Dateien erfasst.
Modul initialisieren.
Konstruktor
Module(workspace, module_id, name, description, status, default_version, module_version_list, _module_provider=None, _module_version_provider=None)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Das Arbeitsbereichsobjekt, zu dem dieses Modul gehört. |
module_id
Erforderlich
|
Die ID des Moduls. |
name
Erforderlich
|
Der Name des Moduls. |
description
Erforderlich
|
Die Beschreibung des Moduls. |
status
Erforderlich
|
Der neue Status des Moduls: "Aktiv", "Veraltet" oder "Deaktiviert". |
default_version
Erforderlich
|
Die Standardversion des Moduls. |
module_version_list
Erforderlich
|
Eine Liste von ModuleVersionDescriptor Objekten. |
_module_provider
|
<xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>
(Nur interne Verwendung.) Der Modulanbieter. Standardwert: None
|
_module_version_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
(Nur interne Verwendung.) Der ModuleVersion-Anbieter. Standardwert: None
|
workspace
Erforderlich
|
Das Arbeitsbereichsobjekt, zu dem dieses Modul gehört. |
module_id
Erforderlich
|
Die ID des Moduls. |
name
Erforderlich
|
Der Name des Moduls. |
description
Erforderlich
|
Die Beschreibung des Moduls. |
status
Erforderlich
|
Der neue Status des Moduls: "Aktiv", "Veraltet" oder "Deaktiviert". |
default_version
Erforderlich
|
Die Standardversion des Moduls. |
module_version_list
Erforderlich
|
Eine Liste von ModuleVersionDescriptor Objekten. |
_module_provider
Erforderlich
|
<xref:<xref:_AevaMlModuleProvider object>>
Der Modulanbieter. |
_module_version_provider
Erforderlich
|
<xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
Der ModuleVersion-Anbieter. |
Hinweise
Ein Modul fungiert als Container seiner Versionen. Im folgenden Beispiel wird eine ModuleVersion aus der publish_python_script Methode erstellt und verfügt über zwei Eingaben und zwei Ausgaben. The create ModuleVersion is the default version (is_default
is set to True).
out_sum = OutputPortDef(name="out_sum", default_datastore_name=datastore.name, default_datastore_mode="mount",
label="Sum of two numbers")
out_prod = OutputPortDef(name="out_prod", default_datastore_name=datastore.name, default_datastore_mode="mount",
label="Product of two numbers")
entry_version = module.publish_python_script("calculate.py", "initial",
inputs=[], outputs=[out_sum, out_prod], params = {"initialNum":12},
version="1", source_directory="./calc")
Vollständiges Beispiel ist verfügbar von https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Dieses Modul kann beim Definieren einer Pipeline in verschiedenen Schritten mithilfe einer ModuleStep.
Das folgende Beispiel zeigt, wie die daten, die in der Pipeline verwendet werden, an Eingaben und Ausgaben einer ModuleVersion mithilfe PipelineDatavon :
middle_step_input_wiring = {"in1":first_sum, "in2":first_prod}
middle_sum = PipelineData("middle_sum", datastore=datastore, output_mode="mount",is_directory=False)
middle_prod = PipelineData("middle_prod", datastore=datastore, output_mode="mount",is_directory=False)
middle_step_output_wiring = {"out_sum":middle_sum, "out_prod":middle_prod}
Vollständiges Beispiel ist verfügbar von https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Die Zuordnung kann dann beim Erstellen des ModuleSteps verwendet werden:
middle_step = ModuleStep(module=module,
inputs_map= middle_step_input_wiring,
outputs_map= middle_step_output_wiring,
runconfig=RunConfiguration(), compute_target=aml_compute,
arguments = ["--file_num1", first_sum, "--file_num2", first_prod,
"--output_sum", middle_sum, "--output_product", middle_prod])
Vollständiges Beispiel ist verfügbar von https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Die Auflösung der zu verwendenden Version des Moduls erfolgt bei der Übermittlung und folgt dem folgenden Prozess:
- Alle deaktivierten Versionen entfernen
- Wenn eine bestimmte Version angegeben wurde, verwenden Sie dies, andernfalls
- Wenn eine Standardversion für das Modul definiert wurde, verwenden Sie dies, andernfalls
- Wenn alle Versionen der semantischen Versionsverwaltung ohne Buchstaben folgen, nehmen Sie den höchsten Wert, sonst
- Nehmen Sie die Version des Moduls, das zuletzt aktualisiert wurde.
Beachten Sie, dass aufgrund der Eingaben und Ausgaben eines Knotens, die der Eingabe und Ausgabe eines Moduls zugeordnet sind, beim Erstellen der Pipeline definiert wird, wenn die aufgelöste Version bei der Übermittlung eine andere Schnittstelle als die schnittstelle aufweist, die bei der Pipelineerstellung aufgelöst wird, dann schlägt die Pipelineübermittlung fehl.
Das zugrunde liegende Modul kann mit neuen Versionen aktualisiert werden, wobei die Standardversion unverändert bleibt.
Module werden innerhalb eines Arbeitsbereichs eindeutig benannt.
Methoden
create |
Erstellen Sie das Modul. |
deprecate |
Legen Sie das Modul auf "Veraltet" fest. |
disable |
Legen Sie das Modul auf "Deaktiviert" fest. |
enable |
Legen Sie das Modul auf "Aktiv" fest. |
get |
Abrufen des Moduls anhand des Namens oder der ID; löst eine Ausnahme aus, wenn keines angegeben wird. |
get_default |
Rufen Sie die Standardmodulversion ab. |
get_default_version |
Rufen Sie die Standardversion des Moduls ab. |
get_versions |
Rufen Sie alle Versionen des Moduls ab. |
module_def_builder |
Erstellen Sie das Moduldefinitionsobjekt, das den Schritt beschreibt. |
module_version_list |
Dient zum Abrufen der Modulversionsliste. |
process_source_directory |
Verarbeiten Sie das Quellverzeichnis für den Schritt, und überprüfen Sie, ob das Skript vorhanden ist. |
publish |
Erstellen Sie eine ModuleVersion, und fügen Sie sie dem aktuellen Modul hinzu. |
publish_adla_script |
Erstellen Sie eine ModuleVersion basierend auf Azure Data Lake Analytics (ADLA), und fügen Sie sie dem aktuellen Modul hinzu. |
publish_azure_batch |
Erstellen Sie eine ModuleVersion, die Azure-Batch verwendet, und fügen Sie sie dem aktuellen Modul hinzu. |
publish_python_script |
Erstellen Sie eine ModuleVersion, die auf einem Python-Skript basiert, und fügen Sie es dem aktuellen Modul hinzu. |
resolve |
Auflösen und Zurückgeben der richtigen ModuleVersion. |
set_default_version |
Legen Sie die Standardmodulversion des Moduls fest. |
set_description |
Legen Sie die Beschreibung des Moduls fest. |
set_name |
Legen Sie den Namen des Moduls fest. |
create
Erstellen Sie das Modul.
static create(workspace, name, description, _workflow_provider=None)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich, in dem das Modul erstellt werden soll. |
name
Erforderlich
|
Der Name des Moduls. |
description
Erforderlich
|
Die Beschreibung des Moduls. |
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Nur interne Verwendung.) Der Workflowanbieter. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Module-Objekt |
deprecate
Legen Sie das Modul auf "Veraltet" fest.
deprecate()
disable
Legen Sie das Modul auf "Deaktiviert" fest.
disable()
enable
Legen Sie das Modul auf "Aktiv" fest.
enable()
get
Abrufen des Moduls anhand des Namens oder der ID; löst eine Ausnahme aus, wenn keines angegeben wird.
static get(workspace, module_id=None, name=None, _workflow_provider=None)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich, in dem das Modul erstellt werden soll. |
module_id
|
Die ID des Moduls. Standardwert: None
|
name
|
Der Name des Moduls. Standardwert: None
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Nur interne Verwendung.) Der Workflowanbieter. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Module-Objekt |
get_default
Rufen Sie die Standardmodulversion ab.
get_default()
Gibt zurück
Typ | Beschreibung |
---|---|
Die Standardmodulversion. |
get_default_version
Rufen Sie die Standardversion des Moduls ab.
get_default_version()
Gibt zurück
Typ | Beschreibung |
---|---|
Die Standardversion des Moduls. |
get_versions
Rufen Sie alle Versionen des Moduls ab.
static get_versions(workspace, name, _workflow_provider=None)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich, auf dem das Modul erstellt wurde. |
name
Erforderlich
|
Der Name des Moduls. |
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Nur interne Verwendung.) Der Workflowanbieter. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Die Liste der ModuleVersionDescriptor |
module_def_builder
Erstellen Sie das Moduldefinitionsobjekt, das den Schritt beschreibt.
static module_def_builder(name, description, execution_type, input_bindings, output_bindings, param_defs=None, create_sequencing_ports=True, allow_reuse=True, version=None, module_type=None, step_type=None, arguments=None, runconfig=None, cloud_settings=None)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Name des Moduls. |
description
Erforderlich
|
Die Beschreibung des Moduls. |
execution_type
Erforderlich
|
Der Ausführungstyp des Moduls. |
input_bindings
Erforderlich
|
Die Moduleingabebindungen. |
output_bindings
Erforderlich
|
Die Modulausgabebindungen. |
param_defs
|
Die Modulparameterdefinitionen. Standardwert: None
|
create_sequencing_ports
|
Gibt an, ob Sequenzierungsports für das Modul erstellt werden sollen. Standardwert: True
|
allow_reuse
|
Gibt an, ob das Modul wiederverwendet werden kann. Standardwert: True
|
version
|
Die Version des Moduls. Standardwert: None
|
module_type
|
Der Modultyp. Standardwert: None
|
step_type
|
Typ des Schritts, der diesem Modul zugeordnet ist, z. B. "PythonScriptStep", "HyperDriveStep" usw. Standardwert: None
|
arguments
|
Liste mit kommentierten Argumenten, die beim Aufrufen dieses Moduls verwendet werden sollen Standardwert: None
|
runconfig
|
Runconfig, die für python_script_step verwendet wird Standardwert: None
|
cloud_settings
|
Einstellungen, die für Clouds verwendet werden Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Das Module def-Objekt. |
Ausnahmen
Typ | Beschreibung |
---|---|
module_version_list
Dient zum Abrufen der Modulversionsliste.
module_version_list()
Gibt zurück
Typ | Beschreibung |
---|---|
Die Liste der ModuleVersionDescriptor |
process_source_directory
Verarbeiten Sie das Quellverzeichnis für den Schritt, und überprüfen Sie, ob das Skript vorhanden ist.
static process_source_directory(name, source_directory, script_name)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Name des Schritts. |
source_directory
Erforderlich
|
Das Quellverzeichnis für den Schritt. |
script_name
Erforderlich
|
Der Skriptname für den Schritt. |
Gibt zurück
Typ | Beschreibung |
---|---|
Das Quellverzeichnis und Hashpfade. |
Ausnahmen
Typ | Beschreibung |
---|---|
publish
Erstellen Sie eine ModuleVersion, und fügen Sie sie dem aktuellen Modul hinzu.
publish(description, execution_type, inputs, outputs, param_defs=None, create_sequencing_ports=True, version=None, is_default=False, content_path=None, hash_paths=None, category=None, arguments=None, runconfig=None)
Parameter
Name | Beschreibung |
---|---|
description
Erforderlich
|
Die Beschreibung des Moduls. |
execution_type
Erforderlich
|
Der Ausführungstyp des Moduls.
Zulässige Werte sind |
inputs
Erforderlich
|
Die Moduleingaben. |
outputs
Erforderlich
|
Das Modul gibt aus. |
param_defs
|
Die Parameterdefinitionen des Moduls. Standardwert: None
|
create_sequencing_ports
|
Gibt an, ob Sequenzierungsports für das Modul erstellt werden sollen. Standardwert: True
|
version
|
Die Version des Moduls. Standardwert: None
|
is_default
|
Gibt an, ob die veröffentlichte Version die Standardversion sein soll. Standardwert: False
|
content_path
|
Verzeichnis Standardwert: None
|
hash_paths
|
Eine Liste der Pfade zum Hashen bei der Überprüfung auf Änderungen an den Schrittinhalten. Wenn keine Änderungen erkannt wurden, verwendet die Pipeline den Schrittinhalt aus einer vorherigen Ausführung wieder. Standardmäßig werden die Inhalte der Standardwert: None
|
category
|
Kategorie der Modulversion Standardwert: None
|
arguments
|
Argumente, die beim Aufrufen des Moduls verwendet werden sollen. Argumente können Zeichenfolgen, Eingabeverweise (InputPortDef), Ausgabeverweise (OutputPortDef) und Pipelineparameter (PipelineParameter) sein. Standardwert: None
|
runconfig
|
Eine optionale RunConfiguration. Eine RunConfiguration kann verwendet werden, um zusätzliche Anforderungen für die Ausführung anzugeben, z. B. Conda-Abhängigkeiten und ein Docker-Image. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Ausnahmen
Typ | Beschreibung |
---|---|
publish_adla_script
Erstellen Sie eine ModuleVersion basierend auf Azure Data Lake Analytics (ADLA), und fügen Sie sie dem aktuellen Modul hinzu.
publish_adla_script(script_name, description, inputs, outputs, params=None, create_sequencing_ports=True, degree_of_parallelism=None, priority=None, runtime_version=None, compute_target=None, version=None, is_default=False, source_directory=None, hash_paths=None, category=None, arguments=None)
Parameter
Name | Beschreibung |
---|---|
script_name
Erforderlich
|
Der Name eines ADLA-Skripts relativ zu |
description
Erforderlich
|
Die Beschreibung der Modulversion. |
inputs
Erforderlich
|
Die Moduleingabebindungen. |
outputs
Erforderlich
|
Die Modulausgabebindungen. |
params
|
Die ModuleVersion-Params werden als Name-default_value-Paare verwendet. Standardwert: None
|
create_sequencing_ports
|
Gibt an, ob Sequenzierungsports für das Modul erstellt werden sollen. Standardwert: True
|
degree_of_parallelism
|
Der für diesen Auftrag zu verwendende Grad an Parallelität. Standardwert: None
|
priority
|
Der für den aktuellen Auftrag zu verwendenden Prioritätswert. Standardwert: None
|
runtime_version
|
Die Laufzeitversion des Azure Data Lake Analytics (ADLA)-Moduls. Standardwert: None
|
compute_target
|
Die ADLA-Berechnung, die für diesen Auftrag verwendet werden soll. Standardwert: None
|
version
|
Die Version des Moduls. Standardwert: None
|
is_default
|
Gibt an, ob die veröffentlichte Version die Standardversion sein soll. Standardwert: False
|
source_directory
|
Verzeichnis Standardwert: None
|
hash_paths
|
hash_paths Standardwert: None
|
category
|
Kategorie der Modulversion Standardwert: None
|
arguments
|
Argumente, die beim Aufrufen des Moduls verwendet werden sollen. Argumente können Zeichenfolgen, Eingabeverweise (InputPortDef), Ausgabeverweise (OutputPortDef) und Pipelineparameter (PipelineParameter) sein. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
publish_azure_batch
Erstellen Sie eine ModuleVersion, die Azure-Batch verwendet, und fügen Sie sie dem aktuellen Modul hinzu.
publish_azure_batch(description, compute_target, inputs, outputs, params=None, create_sequencing_ports=True, version=None, is_default=False, create_pool=False, pool_id=None, delete_batch_job_after_finish=False, 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', executable=None, source_directory=None, category=None, arguments=None)
Parameter
Name | Beschreibung |
---|---|
description
Erforderlich
|
Die Beschreibung der Modulversion. |
compute_target
Erforderlich
|
BatchCompute oder
str
Das BatchCompute-Computeziel. |
inputs
Erforderlich
|
Die Moduleingabebindungen. |
outputs
Erforderlich
|
Die Modulausgabebindungen. |
params
|
Die ModuleVersion-Params werden als Name-default_value-Paare verwendet. Standardwert: None
|
create_sequencing_ports
|
Gibt an, ob Sequenzierungsports für das Modul erstellt werden sollen. Standardwert: True
|
version
|
Die Version des Moduls. Standardwert: None
|
is_default
|
Gibt an, ob die veröffentlichte Version die Standardversion sein soll. Standardwert: False
|
create_pool
|
Gibt an, ob der Pool vor dem Ausführen der Aufträge erstellt werden soll. Standardwert: False
|
pool_id
|
(Verpflichtend) Die ID des Pools, in dem der Auftrag ausgeführt wird. Standardwert: None
|
delete_batch_job_after_finish
|
Gibt an, ob der Auftrag nach Abschluss des Vorgangs aus dem Batchkonto gelöscht werden soll. Standardwert: False
|
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
|
Ist 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
|
Ist Standardwert: 1
|
vm_size
|
Ist Standardwert: standard_d1_v2
|
executable
|
Der Name des Befehls/der ausführbaren Datei, der als Teil des Auftrags ausgeführt wird. Standardwert: None
|
source_directory
|
Das Quellverzeichnis. Standardwert: None
|
category
|
Kategorie der Modulversion Standardwert: None
|
arguments
|
Argumente, die beim Aufrufen des Moduls verwendet werden sollen. Argumente können Zeichenfolgen, Eingabeverweise (InputPortDef), Ausgabeverweise (OutputPortDef) und Pipelineparameter (PipelineParameter) sein. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Ausnahmen
Typ | Beschreibung |
---|---|
publish_python_script
Erstellen Sie eine ModuleVersion, die auf einem Python-Skript basiert, und fügen Sie es dem aktuellen Modul hinzu.
publish_python_script(script_name, description, inputs, outputs, params=None, create_sequencing_ports=True, version=None, is_default=False, source_directory=None, hash_paths=None, category=None, arguments=None, runconfig=None)
Parameter
Name | Beschreibung |
---|---|
script_name
Erforderlich
|
Der Name eines Python-Skripts relativ zu |
description
Erforderlich
|
Die Beschreibung der Modulversion. |
inputs
Erforderlich
|
Die Moduleingabebindungen. |
outputs
Erforderlich
|
Die Modulausgabebindungen. |
params
|
Die ModuleVersion-Params werden als Name-default_value-Paare verwendet. Standardwert: None
|
create_sequencing_ports
|
Gibt an, ob Sequenzierungsports für das Modul erstellt werden sollen. Standardwert: True
|
version
|
Die Version des Moduls. Standardwert: None
|
is_default
|
Gibt an, ob die veröffentlichte Version die Standardversion sein soll. Standardwert: False
|
source_directory
|
Verzeichnis Standardwert: None
|
hash_paths
|
Eine Liste der Pfade zum Hashen bei der Überprüfung auf Änderungen an den Schrittinhalten. Wenn keine Änderungen erkannt wurden, verwendet die Pipeline den Schrittinhalt aus einer vorherigen Ausführung wieder. Standardmäßig werden die Inhalte der Standardwert: None
|
category
|
Kategorie der Modulversion Standardwert: None
|
arguments
|
Argumente, die beim Aufrufen des Moduls verwendet werden sollen. Argumente können Zeichenfolgen, Eingabeverweise (InputPortDef), Ausgabeverweise (OutputPortDef) und Pipelineparameter (PipelineParameter) sein. Standardwert: None
|
runconfig
|
Eine optionale RunConfiguration. Eine RunConfiguration kann verwendet werden, um zusätzliche Anforderungen für die Ausführung anzugeben, z. B. Conda-Abhängigkeiten und ein Docker-Image. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
resolve
Auflösen und Zurückgeben der richtigen ModuleVersion.
resolve(version=None)
Parameter
Name | Beschreibung |
---|---|
version
|
Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Die zu verwendende Modulversion. |
set_default_version
set_description
set_name
Attribute
default_version
Rufen Sie die Standardversion des Moduls ab.
Gibt zurück
Typ | Beschreibung |
---|---|
Die Standardversionszeichenfolge. |
description
Rufen Sie die Beschreibung des Moduls ab.
Gibt zurück
Typ | Beschreibung |
---|---|
Die Beschreibungszeichenfolge. |