Module Classe
Rappresenta un'unità di calcolo usata in una pipeline di Azure Machine Learning.
Un modulo è una raccolta di file che verranno eseguiti su una destinazione di calcolo e una descrizione di un'interfaccia. La raccolta di file può essere script, file binari o qualsiasi altro file necessario per l'esecuzione nella destinazione di calcolo. L'interfaccia del modulo descrive input, output e definizioni di parametri. Non li associa a valori o dati specifici. A un modulo è associato uno snapshot, che acquisisce la raccolta di file definiti per il modulo.
Inizializzare il modulo.
- Ereditarietà
-
builtins.objectModule
Costruttore
Module(workspace, module_id, name, description, status, default_version, module_version_list, _module_provider=None, _module_version_provider=None)
Parametri
- _module_provider
- <xref:azureml.pipeline.core._aeva_provider._AzureMLModuleProvider>
(Solo uso interno). Provider di moduli.
- _module_version_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
(Solo uso interno). Provider ModuleVersion.
- _module_provider
- <xref:<xref:_AevaMlModuleProvider object>>
Provider di moduli.
- _module_version_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaMlModuleVersionProvider>
Provider ModuleVersion.
Commenti
Un modulo funge da contenitore delle versioni. Nell'esempio seguente viene creato un oggetto ModuleVersion dal publish_python_script metodo e ha due input e due output. Create ModuleVersion è la versione predefinita (is_default
è impostata su 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")
L'esempio completo è disponibile da https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Questo modulo può essere usato quando si definisce una pipeline, in passaggi diversi, usando un oggetto ModuleStep.
L'esempio seguente illustra come collegare i dati usati nella pipeline agli input e agli output di un ModuleVersion usando PipelineData:
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}
L'esempio completo è disponibile da https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
Il mapping può quindi essere usato durante la creazione di ModuleStep:
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])
L'esempio completo è disponibile da https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-modulestep.ipynb
La risoluzione della versione del modulo da usare al momento dell'invio e segue il processo seguente:
- Rimuovere tutte le versioni disabilitate
- Se è stata specificata una versione specifica, usarla, altrimenti
- Se è stata definita una versione predefinita per il modulo, usarla in caso contrario
- Se tutte le versioni seguono il controllo delle versioni semantiche senza lettere, accettare il valore più alto, altrimenti
- Prendere la versione del modulo aggiornato l'ultima volta
Si noti che poiché i mapping di input e output di un nodo all'input e all'output di un modulo vengono definiti al momento della creazione della pipeline, se la versione risolta al momento dell'invio ha un'interfaccia diversa da quella risolta al momento della creazione della pipeline, l'invio della pipeline avrà esito negativo.
Il modulo sottostante può essere aggiornato con nuove versioni mantenendo la stessa versione predefinita.
I moduli sono denominati in modo univoco all'interno di un'area di lavoro.
Metodi
create |
Creare il modulo. |
deprecate |
Impostare il modulo su 'Deprecato'. |
disable |
Impostare il modulo su 'Disabilitato'. |
enable |
Impostare il modulo su 'Attivo'. |
get |
Ottenere il modulo in base al nome o all'ID; genera un'eccezione se una delle due non viene fornita. |
get_default |
Ottenere la versione predefinita del modulo. |
get_default_version |
Ottenere la versione predefinita di Module. |
get_versions |
Ottenere tutte le versioni del modulo. |
module_def_builder |
Creare l'oggetto definizione del modulo che descrive il passaggio. |
module_version_list |
Ottenere l'elenco delle versioni del modulo. |
process_source_directory |
Elaborare la directory di origine per il passaggio e verificare che lo script esista. |
publish |
Creare un ModuleVersion e aggiungerlo al modulo corrente. |
publish_adla_script |
Creare un ModuleVersion basato su Azure Data Lake Analytics (ADLA) e aggiungerlo al modulo corrente. |
publish_azure_batch |
Creare un moduleVersion che usa Azure batch e aggiungerlo al modulo corrente. |
publish_python_script |
Creare un ModuleVersion basato su uno script Python e aggiungerlo al modulo corrente. |
resolve |
Risolvere e restituire il valore ModuleVersion corretto. |
set_default_version |
Impostare moduleVersion predefinito del modulo. |
set_description |
Impostare la descrizione del modulo. |
set_name |
Impostare il nome del modulo. |
create
Creare il modulo.
static create(workspace, name, description, _workflow_provider=None)
Parametri
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Solo uso interno). Provider del flusso di lavoro.
Restituisce
Oggetto Module
Tipo restituito
deprecate
Impostare il modulo su 'Deprecato'.
deprecate()
disable
Impostare il modulo su 'Disabilitato'.
disable()
enable
Impostare il modulo su 'Attivo'.
enable()
get
Ottenere il modulo in base al nome o all'ID; genera un'eccezione se una delle due non viene fornita.
static get(workspace, module_id=None, name=None, _workflow_provider=None)
Parametri
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Solo uso interno). Provider del flusso di lavoro.
Restituisce
Oggetto Module
Tipo restituito
get_default
Ottenere la versione predefinita del modulo.
get_default()
Restituisce
Versione predefinita del modulo.
Tipo restituito
get_default_version
Ottenere la versione predefinita di Module.
get_default_version()
Restituisce
Versione predefinita del modulo.
Tipo restituito
get_versions
Ottenere tutte le versioni del modulo.
static get_versions(workspace, name, _workflow_provider=None)
Parametri
- _workflow_provider
- <xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Solo uso interno). Provider del flusso di lavoro.
Restituisce
Elenco di ModuleVersionDescriptor
Tipo restituito
module_def_builder
Creare l'oggetto definizione del modulo che descrive il passaggio.
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)
Parametri
- create_sequencing_ports
- bool
Indica se le porte di sequenziazione verranno create per il modulo.
- allow_reuse
- bool
Indica se il modulo sarà disponibile per essere riutilizzato.
- step_type
- str
Tipo di passaggio associato a questo modulo, ad esempio "PythonScriptStep", "HyperDriveStep" e così via.
- arguments
- list
Elenco di argomenti annotati da usare quando si chiama questo modulo
Restituisce
Oggetto Module def.
Tipo restituito
Eccezioni
module_version_list
Ottenere l'elenco delle versioni del modulo.
module_version_list()
Restituisce
Elenco di ModuleVersionDescriptor
Tipo restituito
process_source_directory
Elaborare la directory di origine per il passaggio e verificare che lo script esista.
static process_source_directory(name, source_directory, script_name)
Parametri
Restituisce
Directory di origine e percorsi hash.
Tipo restituito
Eccezioni
publish
Creare un ModuleVersion e aggiungerlo al modulo corrente.
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)
Parametri
- execution_type
- str
Tipo di esecuzione del modulo.
I valori accettabili sono esCloud
, adlcloud
e AzureBatchCloud
- create_sequencing_ports
- bool
Indica se le porte di sequenziazione verranno create per il modulo.
- is_default
- bool
Indica se la versione pubblicata deve essere quella predefinita.
- hash_paths
- list
Elenco di percorsi di hash durante il controllo delle modifiche apportate al contenuto del passaggio. Se non sono state rilevate modifiche, la pipeline riutilizzerà il contenuto del passaggio da un'esecuzione precedente. Per impostazione predefinita, il contenuto di viene sottoposto a source_directory
hashing (ad eccezione dei file elencati in .amlignore o .gitignore).
DEPRECATO: non più necessario.
- arguments
- list
Argomenti da usare quando si chiama il modulo. Gli argomenti possono essere stringhe, riferimenti di input (InputPortDef), riferimenti all'output (OutputPortDef) e parametri della pipeline (PipelineParameter).
- runconfig
- RunConfiguration
RunConfiguration facoltativo. È possibile usare RunConfiguration per specificare requisiti aggiuntivi per l'esecuzione, ad esempio dipendenze conda e un'immagine Docker.
Tipo restituito
Eccezioni
publish_adla_script
Creare un ModuleVersion basato su Azure Data Lake Analytics (ADLA) e aggiungerlo al modulo corrente.
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)
Parametri
- create_sequencing_ports
- bool
Indica se le porte di sequenziazione verranno create per il modulo.
- degree_of_parallelism
- int
Grado di parallelismo da usare per questo processo.
- runtime_version
- str
Versione di runtime del motore di Data Lake Analytics di Azure (ADLA).
- is_default
- bool
Indica se la versione pubblicata deve essere quella predefinita.
- arguments
- list
Argomenti da usare quando si chiama il modulo. Gli argomenti possono essere stringhe, riferimenti di input (InputPortDef), riferimenti all'output (OutputPortDef) e parametri della pipeline (PipelineParameter).
Tipo restituito
publish_azure_batch
Creare un moduleVersion che usa Azure batch e aggiungerlo al modulo corrente.
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)
Parametri
- create_sequencing_ports
- bool
Indica se le porte di sequenziazione verranno create per il modulo.
- is_default
- bool
Indica se la versione pubblicata deve essere quella predefinita.
- delete_batch_job_after_finish
- bool
Indica se eliminare il processo dall'account Batch al termine dell'operazione.
- delete_batch_pool_after_finish
- bool
Indica se eliminare il pool al termine del processo.
- is_positive_exit_code_failure
- bool
Indica se il processo ha esito negativo se l'attività esiste con un codice positivo.
- vm_image_urn
- str
Se create_pool
è True e la macchina virtuale usa VirtualMachineConfiguration, questo parametro indica l'immagine della macchina virtuale da usare. Formato valore: urn:publisher:offer:sku
.
Esempio: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
.
- run_task_as_admin
- bool
Indica se l'attività deve essere eseguita con privilegi di Amministrazione.
- target_compute_nodes
- int
Se create_pool
è True, indica il numero di nodi di calcolo che verranno aggiunti al pool.
- vm_size
- str
Se create_pool
è True, indica le dimensioni della macchina virtuale dei nodi di calcolo.
- executable
- str
Nome del comando/eseguibile che verrà eseguito come parte del processo.
- arguments
- list
Argomenti da usare quando si chiama il modulo. Gli argomenti possono essere stringhe, riferimenti di input (InputPortDef), riferimenti all'output (OutputPortDef) e parametri della pipeline (PipelineParameter).
Tipo restituito
Eccezioni
publish_python_script
Creare un ModuleVersion basato su uno script Python e aggiungerlo al modulo corrente.
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)
Parametri
- create_sequencing_ports
- bool
Indica se le porte di sequenziazione verranno create per il modulo.
- is_default
- bool
Indica se la versione pubblicata deve essere quella predefinita.
- hash_paths
- list
Elenco di percorsi di hash durante il controllo delle modifiche apportate al contenuto del passaggio. Se non sono state rilevate modifiche, la pipeline riutilizzerà il contenuto del passaggio da un'esecuzione precedente. Per impostazione predefinita, il contenuto di viene sottoposto a source_directory
hashing (ad eccezione dei file elencati in .amlignore o .gitignore).
DEPRECATO: non più necessario.
- arguments
- list
Argomenti da usare quando si chiama il modulo. Gli argomenti possono essere stringhe, riferimenti di input (InputPortDef), riferimenti all'output (OutputPortDef) e parametri della pipeline (PipelineParameter).
- runconfig
- RunConfiguration
RunConfiguration facoltativo. È possibile usare RunConfiguration per specificare requisiti aggiuntivi per l'esecuzione, ad esempio dipendenze conda e un'immagine Docker.
Tipo restituito
resolve
Risolvere e restituire il valore ModuleVersion corretto.
resolve(version=None)
Parametri
- version
Restituisce
Versione del modulo da usare.
Tipo restituito
set_default_version
Impostare moduleVersion predefinito del modulo.
set_default_version(version_id)
Parametri
- version_id
Restituisce
Versione predefinita.
Tipo restituito
Eccezioni
set_description
Impostare la descrizione del modulo.
set_description(description)
Parametri
Eccezioni
set_name
Impostare il nome del modulo.
set_name(name)
Parametri
Eccezioni
Attributi
default_version
Ottenere la versione predefinita del modulo.
Restituisce
Stringa di versione predefinita.
Tipo restituito
description
id
name
status
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per