AmlCompute Classe
Gestisce un calcolo di Azure Machine Learning in Azure Machine Learning.
Un'infrastruttura di calcolo di Azure Machine Learning (AmlCompute) è un'infrastruttura di calcolo gestita che consente di creare facilmente un unico calcolo a più nodi. Il calcolo viene creato all'interno dell'area di lavoro come risorsa che può essere condivisa con altri utenti. Per altre informazioni, vedere Informazioni sulle destinazioni di calcolo in Azure Machine Learning?
Costruttore ComputeTarget di classe.
Recuperare una rappresentazione cloud di un oggetto Compute associato all'area di lavoro specificata. Restituisce un'istanza di una classe figlio corrispondente al tipo specifico dell'oggetto Compute recuperato.
- Ereditarietà
-
AmlCompute
Costruttore
AmlCompute(workspace, name)
Parametri
Nome | Descrizione |
---|---|
workspace
Necessario
|
Oggetto dell'area di lavoro contenente l'oggetto AmlCompute da recuperare. |
name
Necessario
|
Nome dell'oggetto AmlCompute da recuperare. |
workspace
Necessario
|
Oggetto dell'area di lavoro contenente l'oggetto Compute da recuperare. |
name
Necessario
|
Nome dell'oggetto Compute da recuperare. |
Commenti
Nell'esempio seguente viene creato un provisioning di destinazione di calcolo persistente eseguito da AmlCompute . Il provisioning_configuration
parametro in questo esempio è di tipo AmlComputeProvisioningConfiguration, che è una classe figlio di ComputeTargetProvisioningConfiguration.
from azureml.core.compute import ComputeTarget, AmlCompute
from azureml.core.compute_target import ComputeTargetException
# Choose a name for your CPU cluster
cpu_cluster_name = "cpu-cluster"
# Verify that cluster does not exist already
try:
cpu_cluster = ComputeTarget(workspace=ws, name=cpu_cluster_name)
print('Found existing cluster, use it.')
except ComputeTargetException:
compute_config = AmlCompute.provisioning_configuration(vm_size='STANDARD_D2_V2',
max_nodes=4)
cpu_cluster = ComputeTarget.create(ws, cpu_cluster_name, compute_config)
cpu_cluster.wait_for_completion(show_output=True)
L'esempio completo è disponibile da https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/training/train-on-amlcompute/train-on-amlcompute.ipynb
Metodi
add_identity |
Aggiungere id identità e/o identity per questa destinazione AmlCompute. |
delete |
Rimuovere l'oggetto AmlCompute dall'area di lavoro associata. |
deserialize |
Convertire un oggetto JSON in un oggetto AmlCompute. |
detach |
Il scollegamento non è supportato per l'oggetto AmlCompute. Usare invece delete. |
get |
Restituisce l'oggetto di calcolo. |
get_active_runs |
Restituisce un generatore di esecuzioni per questo calcolo. |
get_status |
Recuperare lo stato dettagliato corrente per il cluster AmlCompute. |
list_nodes |
Ottenere i dettagli (ad esempio, indirizzo IP, porta e così via) di tutti i nodi di calcolo nella destinazione di calcolo. |
list_quotas |
Ottenere le quote dell'area di lavoro attualmente assegnate in base a VMFamily per l'area di lavoro e la sottoscrizione specificati. |
list_usages |
Ottenere le informazioni sull'utilizzo correnti e i limiti per le risorse AML per l'area di lavoro e la sottoscrizione specificati. |
provisioning_configuration |
Creare un oggetto di configurazione per il provisioning di una destinazione AmlCompute. |
refresh_state |
Eseguire un aggiornamento sul posto delle proprietà dell'oggetto. Questo metodo aggiorna le proprietà in base allo stato corrente dell'oggetto cloud corrispondente. Viene usato principalmente per il polling manuale dello stato di calcolo. |
remove_identity |
Rimuovere l'identità nel calcolo. |
serialize |
Convertire questo oggetto AmlCompute in un dizionario serializzato JSON. |
supported_vmsizes |
Elencare le dimensioni della macchina virtuale supportate in un'area. |
update |
Aggiornare l'oggetto ScaleSettings per questa destinazione AmlCompute. |
update_quotas |
Aggiornare la quota per una famiglia di macchine virtuali nell'area di lavoro. |
wait_for_completion |
Attendere il completamento del provisioning del cluster AmlCompute. Questa configurazione può essere configurata per attendere un numero minimo di nodi e per il timeout dopo un periodo di tempo impostato. |
add_identity
Aggiungere id identità e/o identity per questa destinazione AmlCompute.
add_identity(identity_type, identity_id=None)
Parametri
Nome | Descrizione |
---|---|
identity_type
Necessario
|
I valori possibili sono:
|
identity_id
|
Elenco di ID risorsa per l'identità assegnata dall'utente. Ad esempio: ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity /userAssignedIdentities/'] Valore predefinito: None
|
Commenti
identity_id deve essere specificato solo quando identity_type == UserAssigned
delete
Rimuovere l'oggetto AmlCompute dall'area di lavoro associata.
delete()
Eccezioni
Tipo | Descrizione |
---|---|
Commenti
Se questo oggetto è stato creato tramite Azure Machine Learning, verranno eliminati anche gli oggetti basati sul cloud corrispondenti. Se questo oggetto è stato creato esternamente e collegato solo all'area di lavoro, questo metodo genera un ComputeTargetException oggetto e non viene modificato nulla.
deserialize
Convertire un oggetto JSON in un oggetto AmlCompute.
static deserialize(workspace, object_dict)
Parametri
Nome | Descrizione |
---|---|
workspace
Necessario
|
L'oggetto area di lavoro a cui è associato l'oggetto AmlCompute. |
object_dict
Necessario
|
Oggetto JSON da convertire in un oggetto AmlCompute. |
Restituisce
Tipo | Descrizione |
---|---|
Rappresentazione AmlCompute dell'oggetto JSON specificato. |
Eccezioni
Tipo | Descrizione |
---|---|
Commenti
Genera un valore ComputeTargetException se l'area di lavoro specificata non è l'area di lavoro a cui è associato il calcolo.
detach
Il scollegamento non è supportato per l'oggetto AmlCompute. Usare invece delete.
detach()
Eccezioni
Tipo | Descrizione |
---|---|
get
Restituisce l'oggetto di calcolo.
get()
get_active_runs
Restituisce un generatore di esecuzioni per questo calcolo.
get_active_runs(type=None, tags=None, properties=None, status=None)
Parametri
Nome | Descrizione |
---|---|
type
|
Filtrare il generatore restituito di esecuzioni dal tipo specificato. Vedere add_type_provider per la creazione di tipi di esecuzione. Valore predefinito: None
|
tags
|
Filtro eseguito da "tag" o {"tag": "value"} Valore predefinito: None
|
properties
|
Filtro eseguito da "property" o {"property": "value"} Valore predefinito: None
|
status
|
Stato di esecuzione: "Esecuzione" o "Accodamento" Valore predefinito: None
|
Restituisce
Tipo | Descrizione |
---|---|
<xref:builtin.generator>
|
generatore di ~_restclient.models.RunDto |
get_status
Recuperare lo stato dettagliato corrente per il cluster AmlCompute.
get_status()
Restituisce
Tipo | Descrizione |
---|---|
Oggetto stato dettagliato per il cluster |
list_nodes
Ottenere i dettagli (ad esempio, indirizzo IP, porta e così via) di tutti i nodi di calcolo nella destinazione di calcolo.
list_nodes()
Restituisce
Tipo | Descrizione |
---|---|
Dettagli di tutti i nodi di calcolo nella destinazione di calcolo. |
list_quotas
Ottenere le quote dell'area di lavoro attualmente assegnate in base a VMFamily per l'area di lavoro e la sottoscrizione specificati.
static list_quotas(workspace, location=None)
Parametri
Nome | Descrizione |
---|---|
workspace
Necessario
|
|
location
|
Posizione delle quote. Se non specificato, verrà predefinito il percorso dell'area di lavoro. Valore predefinito: None
|
Restituisce
Tipo | Descrizione |
---|---|
Elenco delle quote dell'area di lavoro attualmente assegnate in base a VMFamily |
list_usages
Ottenere le informazioni sull'utilizzo correnti e i limiti per le risorse AML per l'area di lavoro e la sottoscrizione specificati.
static list_usages(workspace, show_all=False, location=None)
Parametri
Nome | Descrizione |
---|---|
workspace
Necessario
|
|
show_all
|
Specifica se sono necessari utilizzi dettagliati delle risorse figlio. Il valore predefinito è False Valore predefinito: False
|
location
|
Posizione delle risorse. Se non specificato, verrà predefinito il percorso dell'area di lavoro. Valore predefinito: None
|
Restituisce
Tipo | Descrizione |
---|---|
Elenco delle informazioni sull'utilizzo correnti e dei limiti per le risorse AML |
provisioning_configuration
Creare un oggetto di configurazione per il provisioning di una destinazione AmlCompute.
static provisioning_configuration(vm_size='', vm_priority='dedicated', min_nodes=0, max_nodes=None, idle_seconds_before_scaledown=1800, admin_username=None, admin_user_password=None, admin_user_ssh_key=None, vnet_resourcegroup_name=None, vnet_name=None, subnet_name=None, tags=None, description=None, remote_login_port_public_access='NotSpecified', identity_type=None, identity_id=None, location=None, enable_node_public_ip=True)
Parametri
Nome | Descrizione |
---|---|
vm_size
Necessario
|
Dimensioni delle macchine virtuali dell'agente. Altre informazioni sono disponibili qui: https://aka.ms/azureml-vm-details. Si noti che non tutte le dimensioni sono disponibili in tutte le aree, come illustrato nel collegamento precedente. Se non specificato, le impostazioni predefinite sono Standard_NC6. |
vm_priority
|
Priorità della macchina virtuale, dedicata o bassapriorità. Valore predefinito: dedicated
|
min_nodes
|
Numero minimo di nodi da usare nel cluster. Se non specificato, il valore predefinito è 0. Valore predefinito: 0
|
max_nodes
|
Numero massimo di nodi da usare nel cluster. Se non specificato, il valore predefinito è 4. Valore predefinito: None
|
idle_seconds_before_scaledown
|
Tempo di inattività del nodo in secondi prima del ridimensionamento del cluster. Se non specificato, il valore predefinito è 1800. Valore predefinito: 1800
|
admin_username
|
Nome dell'account utente amministratore che può essere usato per SSH nei nodi. Valore predefinito: None
|
admin_user_password
|
Password dell'account utente amministratore. Valore predefinito: None
|
admin_user_ssh_key
|
Chiave pubblica SSH dell'account utente amministratore. Valore predefinito: None
|
vnet_resourcegroup_name
|
Nome del gruppo di risorse in cui si trova la rete virtuale. Valore predefinito: None
|
vnet_name
|
nome della rete virtuale. Valore predefinito: None
|
subnet_name
|
Nome della subnet all'interno della rete virtuale. Valore predefinito: None
|
tags
|
Dizionario dei tag di valore chiave da fornire all'oggetto di calcolo. Valore predefinito: None
|
description
|
Descrizione da fornire all'oggetto di calcolo. Valore predefinito: None
|
remote_login_port_public_access
|
Stato della porta SSH pubblica. I valori possibili sono:
Valore predefinito: NotSpecified
|
identity_type
|
I valori possibili sono:
Valore predefinito: None
|
identity_id
|
Elenco di ID risorsa per l'identità assegnata dall'utente. Ad esempio: ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity/userAssignedIdentities/'] Valore predefinito: None
|
location
|
Posizione in cui effettuare il provisioning del cluster. Valore predefinito: None
|
enable_node_public_ip
|
Abilitare l'INDIRIZZO IP pubblico del nodo. I valori possibili sono:
Valore predefinito: True
|
Restituisce
Tipo | Descrizione |
---|---|
Oggetto di configurazione da usare durante la creazione di un oggetto Compute. |
Eccezioni
Tipo | Descrizione |
---|---|
refresh_state
Eseguire un aggiornamento sul posto delle proprietà dell'oggetto.
Questo metodo aggiorna le proprietà in base allo stato corrente dell'oggetto cloud corrispondente. Viene usato principalmente per il polling manuale dello stato di calcolo.
refresh_state()
remove_identity
Rimuovere l'identità nel calcolo.
remove_identity(identity_id=None)
Parametri
Nome | Descrizione |
---|---|
identity_id
|
Identità assegnate dall'utente Valore predefinito: None
|
Commenti
L'identità assegnata dal sistema verrà rimossa automaticamente se identity_id non è specificato
serialize
Convertire questo oggetto AmlCompute in un dizionario serializzato JSON.
serialize()
Restituisce
Tipo | Descrizione |
---|---|
Rappresentazione JSON di questo oggetto AmlCompute. |
supported_vmsizes
Elencare le dimensioni della macchina virtuale supportate in un'area.
static supported_vmsizes(workspace, location=None)
Parametri
Nome | Descrizione |
---|---|
workspace
Necessario
|
|
location
|
Posizione del cluster. Se non specificato, verrà predefinito il percorso dell'area di lavoro. Valore predefinito: None
|
Restituisce
Tipo | Descrizione |
---|---|
Elenco delle dimensioni della macchina virtuale supportate in un'area con nomi della macchina virtuale, delle MACCHINE virtuali, delle VCPU e della RAM. |
update
Aggiornare l'oggetto ScaleSettings per questa destinazione AmlCompute.
update(min_nodes=None, max_nodes=None, idle_seconds_before_scaledown=None)
Parametri
Nome | Descrizione |
---|---|
min_nodes
|
Numero minimo di nodi da usare nel cluster. Valore predefinito: None
|
max_nodes
|
Numero massimo di nodi da usare nel cluster. Valore predefinito: None
|
idle_seconds_before_scaledown
|
Tempo di inattività del nodo in secondi prima di ridimensionare il cluster. Valore predefinito: None
|
update_quotas
Aggiornare la quota per una famiglia di macchine virtuali nell'area di lavoro.
static update_quotas(workspace, vm_family, limit=None, location=None)
Parametri
Nome | Descrizione |
---|---|
workspace
Necessario
|
|
vm_family
Necessario
|
Nome della famiglia di macchine virtuali |
limit
|
Quota massima consentita della risorsa Valore predefinito: None
|
location
|
Posizione della quota. Se non specificato, verrà predefinito il percorso dell'area di lavoro. Valore predefinito: None
|
wait_for_completion
Attendere il completamento del provisioning del cluster AmlCompute.
Questa configurazione può essere configurata per attendere un numero minimo di nodi e per il timeout dopo un periodo di tempo impostato.
wait_for_completion(show_output=False, min_node_count=None, timeout_in_minutes=25, is_delete_operation=False)
Parametri
Nome | Descrizione |
---|---|
show_output
|
Boolean per fornire un output più dettagliato. Valore predefinito: False
|
min_node_count
|
Numero minimo di nodi da attendere prima di considerare il provisioning da completare. Ciò non deve corrispondere al numero minimo di nodi con cui è stato effettuato il provisioning del calcolo, ma non deve essere maggiore di quello. Valore predefinito: None
|
timeout_in_minutes
|
Durata in minuti di attesa prima di considerare il provisioning non riuscito. Valore predefinito: 25
|
is_delete_operation
|
Indica se l'operazione è destinata all'eliminazione. Valore predefinito: False
|
Eccezioni
Tipo | Descrizione |
---|---|