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 ausgeführt werden, und eine Beschreibung einer Schnittstelle. Die Sammlung von Dateien kann Skripts, Binärdateien oder andere Dateien umfassen, die für die Ausführung auf dem Computeziel erforderlich sind. Die Modulschnittstelle beschreibt Eingaben, Ausgaben und Parameterdefinitionen. Sie werden nicht an bestimmte Werte oder Daten gebunden. Einem Modul ist eine Momentaufnahme zugeordnet, die die Sammlung der für das Modul definierten Dateien erfasst.
Initialisieren Des Moduls.
- Vererbung
-
builtins.objectModule
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. Die Create ModuleVersion ist die Standardversion (is_default
ist auf True festgelegt).
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")
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-modulestep.ipynb.
Dieses Modul kann beim Definieren einer Pipeline in verschiedenen Schritten mithilfe eines ModuleStep verwendet werden.
Im folgenden Beispiel wird gezeigt, wie die in der Pipeline verwendeten Daten mithilfe von PipelineData mit Ein- und Ausgaben einer ModuleVersion verkabelt werden:
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}
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-modulestep.ipynb.
Die Zuordnung kann dann beim Erstellen von ModuleStep 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])
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-modulestep.ipynb.
Die Lösung, welche Version des Moduls bei der Übermittlung verwendet werden soll, folgt dem folgenden Prozess:
- Entfernt alle deaktivierten Versionen
- Wenn eine bestimmte Version angegeben wurde, verwenden Sie diese, sonst
- Wenn eine Standardversion für das Modul definiert wurde, verwenden Sie diese, sonst
- Wenn alle Versionen der semantischen Versionierung ohne Buchstaben folgen, verwenden Sie den höchsten Wert, sonst
- Nehmen Sie die Version des Moduls, das zuletzt aktualisiert wurde
Beachten Sie, dass die Pipelineübermittlung fehlschlägt, da die Zuordnung der Eingaben und Ausgaben eines Knotens zur Ein- und Ausgabe eines Moduls bei der Pipelineerstellung definiert ist, wenn die aufgelöste Version bei der Übermittlung eine andere Schnittstelle als die hat, die bei der Pipelineerstellung aufgelöst wird.
Das zugrunde liegende Modul kann mit neuen Versionen aktualisiert werden, während die Standardversion gleich ist.
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 nach Name oder ID löst eine Ausnahme aus, wenn keines von beiden bereitgestellt wird. |
get_default |
Abrufen der Standardmodulversion. |
get_default_version |
Abrufen der Standardversion des Moduls. |
get_versions |
Abrufen aller Versionen des Moduls. |
module_def_builder |
Erstellt das Moduldefinitionsobjekt, das den Schritt beschreibt. |
module_version_list |
Abrufen der Modulversionsliste. |
process_source_directory |
Verarbeitet das Quellverzeichnis für den Schritt, und überprüft, ob das Skript vorhanden ist. |
publish |
Erstellt eine ModuleVersion, und fügt sie dem aktuellen Modul hinzu. |
publish_adla_script |
Erstellt eine ModuleVersion basierend auf Azure Data Lake Analytics (ADLA), und fügt sie dem aktuellen Modul hinzu. |
publish_azure_batch |
Erstellt eine ModuleVersion, die Azure Batch verwendet, und fügt sie dem aktuellen Modul hinzu. |
publish_python_script |
Erstellt eine ModuleVersion, die auf einem Python-Skript basiert, und fügt sie dem aktuellen Modul hinzu. |
resolve |
Löst die richtige ModuleVersion auf, und gibt sie zurück. |
set_default_version |
Legt die Standardmodulversion des Moduls fest. |
set_description |
Legt die Beschreibung des Moduls fest. |
set_name |
Legt den Namen des Moduls fest. |
create
Erstellen Sie das Modul.
static create(workspace, name, description, _workflow_provider=None)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
D 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 |
---|---|
Modulobjekt |
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 nach Name oder ID löst eine Ausnahme aus, wenn keines von beiden bereitgestellt wird.
static get(workspace, module_id=None, name=None, _workflow_provider=None)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
D 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 |
---|---|
Modulobjekt |
get_default
Abrufen der Standardmodulversion.
get_default()
Gibt zurück
Typ | Beschreibung |
---|---|
Die Standardmodulversion. |
get_default_version
Abrufen der Standardversion des Moduls.
get_default_version()
Gibt zurück
Typ | Beschreibung |
---|---|
Die Standardversion des Moduls. |
get_versions
Abrufen aller Versionen des Moduls.
static get_versions(workspace, name, _workflow_provider=None)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich, in 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
Erstellt 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. 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
|
Schritttyp, der diesem Modul zugeordnet ist, z. B. "PythonScriptStep", "HyperDriveStep" usw. Standardwert: None
|
arguments
|
Liste der Argumente mit Anmerkungen, die beim Aufrufen dieses Moduls verwendet werden sollen Standardwert: None
|
runconfig
|
Ausführungskonfiguration, 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 Modul-Def-Objekt. |
Ausnahmen
Typ | Beschreibung |
---|---|
module_version_list
Abrufen der Modulversionsliste.
module_version_list()
Gibt zurück
Typ | Beschreibung |
---|---|
Die Liste der ModuleVersionDescriptor |
process_source_directory
Verarbeitet das Quellverzeichnis für den Schritt, und überprüft, 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 die Hashpfade. |
Ausnahmen
Typ | Beschreibung |
---|---|
publish
Erstellt eine ModuleVersion, und fügt 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.
Mögliche Werte sind |
inputs
Erforderlich
|
Die Moduleingaben. |
outputs
Erforderlich
|
Die Modulausgaben. |
param_defs
|
Die Module-Parameterdefinitionen. Standardwert: None
|
create_sequencing_ports
|
Gibt an, ob Sequenzierungsports für das Modul erstellt werden. 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
|
directory Standardwert: None
|
hash_paths
|
Eine Liste der Pfade, die bei der Überprüfung auf Änderungen am Schrittinhalt gehasht werden müssen. Wenn keine Änderungen erkannt werden, verwendet die Pipeline den Schrittinhalt einer vorherigen Ausführung erneut. Inhalte von Standardwert: None
|
category
|
Kategorie der Modulversion Standardwert: None
|
arguments
|
Argumente, die beim Aufrufen des Moduls verwendet werden. Argumente können Zeichenfolgen, Eingabeverweise (InputPortDef), Ausgabeverweise (OutputPortDef) und Pipelineparameter (PipelineParameter) sein. Standardwert: None
|
runconfig
|
Eine optionale RunConfiguration. Eine Ausführungskonfiguration (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
Erstellt eine ModuleVersion basierend auf Azure Data Lake Analytics (ADLA), und fügt 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-Parameter als name-default_value-Paare. Standardwert: None
|
create_sequencing_ports
|
Gibt an, ob Sequenzierungsports für das Modul erstellt werden. 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 Runtimeversion der Azure Data Lake Analytics-Engine (ADLA). Standardwert: None
|
compute_target
|
ADLA Compute für diesen Auftrag. 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
|
directory Standardwert: None
|
hash_paths
|
hash_paths Standardwert: None
|
category
|
Kategorie der Modulversion Standardwert: None
|
arguments
|
Argumente, die beim Aufrufen des Moduls verwendet werden. Argumente können Zeichenfolgen, Eingabeverweise (InputPortDef), Ausgabeverweise (OutputPortDef) und Pipelineparameter (PipelineParameter) sein. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
publish_azure_batch
Erstellt eine ModuleVersion, die Azure Batch verwendet, und fügt 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-Parameter als name-default_value-Paare. Standardwert: None
|
create_sequencing_ports
|
Gibt an, ob Sequenzierungsports für das Modul erstellt werden. 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 der Ausführung der Aufträge erstellt werden soll. Standardwert: False
|
pool_id
|
(Obligatorisch) Die ID des Pools, in dem der Auftrag ausgeführt 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: 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
|
Wenn 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 Computeknoten dem Pool hinzugefügt werden, wenn Standardwert: 1
|
vm_size
|
Gibt die Größe des virtuellen Computers der Computeknoten an, wenn Standardwert: standard_d1_v2
|
executable
|
Der Name des Befehls/der ausführbaren Datei, der/die als Teil dieses 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. 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
Erstellt eine ModuleVersion, die auf einem Python-Skript basiert, und fügt sie 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-Parameter als name-default_value-Paare. Standardwert: None
|
create_sequencing_ports
|
Gibt an, ob Sequenzierungsports für das Modul erstellt werden. 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
|
directory Standardwert: None
|
hash_paths
|
Eine Liste der Pfade, die bei der Überprüfung auf Änderungen am Schrittinhalt gehasht werden müssen. Wenn keine Änderungen erkannt werden, verwendet die Pipeline den Schrittinhalt einer vorherigen Ausführung erneut. Inhalte von Standardwert: None
|
category
|
Kategorie der Modulversion Standardwert: None
|
arguments
|
Argumente, die beim Aufrufen des Moduls verwendet werden. Argumente können Zeichenfolgen, Eingabeverweise (InputPortDef), Ausgabeverweise (OutputPortDef) und Pipelineparameter (PipelineParameter) sein. Standardwert: None
|
runconfig
|
Eine optionale RunConfiguration. Eine Ausführungskonfiguration (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
Löst die richtige ModuleVersion auf, und gibt sie zurück.
resolve(version=None)
Parameter
Name | Beschreibung |
---|---|
version
|
Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Die zu verwendende Modulversion. |
set_default_version
Legt die Standardmodulversion des Moduls fest.
set_default_version(version_id)
Parameter
Name | Beschreibung |
---|---|
version_id
Erforderlich
|
|
Gibt zurück
Typ | Beschreibung |
---|---|
Die Standardversion. |
Ausnahmen
Typ | Beschreibung |
---|---|
set_description
Legt die Beschreibung des Moduls fest.
set_description(description)
Parameter
Name | Beschreibung |
---|---|
description
Erforderlich
|
Die festzulegende Beschreibung. |
Ausnahmen
Typ | Beschreibung |
---|---|
set_name
Legt den Namen des Moduls fest.
set_name(name)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Name, der festgelegt werden soll. |
Ausnahmen
Typ | Beschreibung |
---|---|
Attribute
default_version
Abrufen der Standardversion des Moduls.
Gibt zurück
Typ | Beschreibung |
---|---|
Die Standardversionszeichenfolge. |
description
Ruft die Beschreibung des Moduls ab.
Gibt zurück
Typ | Beschreibung |
---|---|
Die Beschreibungszeichenfolge. |