AmlCompute Classe
Gère un calcul Azure Machine Learning dans Azure Machine Learning.
Un calcul Azure Machine Learning (AmlCompute) est une infrastructure de calcul managée qui vous permet de créer facilement un calcul à plusieurs nœuds ou à un seul nœud. Le calcul est créé dans votre région d’espace de travail en tant que ressource qui peut être partagée avec d’autres utilisateurs. Pour plus d’informations, consultez Quelles sont les cibles de calcul dans Azure Machine Learning ?
Constructeur ComputeTarget de classe.
Récupérez une représentation cloud d’un objet Compute associé à l’espace de travail fourni. Retourne une instance d’une classe enfant correspondant au type spécifique de l’objet Compute récupéré.
Constructeur
AmlCompute(workspace, name)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
Objet d’espace de travail contenant l’objet AmlCompute à récupérer. |
name
Obligatoire
|
Nom de l’objet AmlCompute à récupérer. |
workspace
Obligatoire
|
Objet d’espace de travail contenant l’objet Compute à récupérer. |
name
Obligatoire
|
Nom de l’objet Compute à récupérer. |
Remarques
Dans l’exemple suivant, une cible de calcul persistante provisionnée est AmlCompute créée. Le provisioning_configuration
paramètre de cet exemple est de type AmlComputeProvisioningConfiguration, qui est une classe enfant de 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’exemple complet est disponible à partir de https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/training/train-on-amlcompute/train-on-amlcompute.ipynb
Méthodes
add_identity |
Ajoutez le type d’identité et/ou les ID d’identité pour cette cible AmlCompute. |
delete |
Supprimez l’objet AmlCompute de son espace de travail associé. |
deserialize |
Convertissez un objet JSON en objet AmlCompute. |
detach |
Détacher n’est pas pris en charge pour l’objet AmlCompute. Utilisez delete à la place. |
get |
Retourne un objet de calcul. |
get_active_runs |
Retourne un générateur des exécutions pour ce calcul. |
get_status |
Récupérez l’état détaillé actuel du cluster AmlCompute. |
list_nodes |
Obtenez les détails (par exemple, l’adresse IP, le port, etc.) de tous les nœuds de calcul dans la cible de calcul. |
list_quotas |
Obtenez les quotas d’espace de travail actuellement attribués en fonction de VMFamily pour un espace de travail et un abonnement donnés. |
list_usages |
Obtenez les informations d’utilisation actuelles ainsi que les limites des ressources AML pour un espace de travail et un abonnement donnés. |
provisioning_configuration |
Créez un objet de configuration pour l’approvisionnement d’une cible AmlCompute. |
refresh_state |
Effectuez une mise à jour sur place des propriétés de l’objet. Cette méthode met à jour les propriétés en fonction de l’état actuel de l’objet cloud correspondant. Ceci est principalement utilisé pour l’interrogation manuelle de l’état de calcul. |
remove_identity |
Supprimez l’identité sur le calcul. |
serialize |
Convertissez cet objet AmlCompute en dictionnaire sérialisé JSON. |
supported_vmsizes |
Répertoriez les tailles de machine virtuelle prises en charge dans une région. |
update |
Mettez à jour la ScaleSettings cible AmlCompute. |
update_quotas |
Mettre à jour le quota d’une famille de machines virtuelles dans l’espace de travail. |
wait_for_completion |
Attendez que le cluster AmlCompute termine l’approvisionnement. Cela peut être configuré pour attendre un nombre minimal de nœuds et pour le délai d’expiration après une période définie. |
add_identity
Ajoutez le type d’identité et/ou les ID d’identité pour cette cible AmlCompute.
add_identity(identity_type, identity_id=None)
Paramètres
Nom | Description |
---|---|
identity_type
Obligatoire
|
Les valeurs possibles sont les suivantes :
|
identity_id
|
Liste des ID de ressource pour l’identité affectée par l’utilisateur. Eg. ['/subscriptions//resourceGroups/providers/Microsoft.ManagedIdentity /userAssignedIdentities/'] Valeur par défaut: None
|
Remarques
identity_id ne doit être spécifié que lorsque identity_type == UserAssigned
delete
Supprimez l’objet AmlCompute de son espace de travail associé.
delete()
Exceptions
Type | Description |
---|---|
Remarques
Si cet objet a été créé via Azure Machine Learning, les objets cloud correspondants sont également supprimés. Si cet objet a été créé en externe et attaché uniquement à l’espace de travail, cette méthode déclenche une ComputeTargetException opération et rien n’est modifié.
deserialize
Convertissez un objet JSON en objet AmlCompute.
static deserialize(workspace, object_dict)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
L’objet d’espace de travail auquel l’objet AmlCompute est associé. |
object_dict
Obligatoire
|
Objet JSON à convertir en objet AmlCompute. |
Retours
Type | Description |
---|---|
Représentation AmlCompute de l’objet JSON fourni. |
Exceptions
Type | Description |
---|---|
Remarques
Déclenche une ComputeTargetException opération si l’espace de travail fourni n’est pas l’espace de travail associé au calcul.
detach
Détacher n’est pas pris en charge pour l’objet AmlCompute. Utilisez delete à la place.
detach()
Exceptions
Type | Description |
---|---|
get
Retourne un objet de calcul.
get()
get_active_runs
Retourne un générateur des exécutions pour ce calcul.
get_active_runs(type=None, tags=None, properties=None, status=None)
Paramètres
Nom | Description |
---|---|
type
|
Filtrez le générateur retourné d’exécutions par le type fourni. Voir add_type_provider pour créer des types d’exécution. Valeur par défaut: None
|
tags
|
Filtre s’exécute par « tag » ou {« tag » : « value »} Valeur par défaut: None
|
properties
|
Filtre s’exécute par « property » ou {« property » : « value »} Valeur par défaut: None
|
status
|
État de l’exécution : « En cours d’exécution » ou « En file d’attente » Valeur par défaut: None
|
Retours
Type | Description |
---|---|
<xref:builtin.generator>
|
générateur de ~_restclient.models.RunDto |
get_status
Récupérez l’état détaillé actuel du cluster AmlCompute.
get_status()
Retours
Type | Description |
---|---|
Objet d’état détaillé pour le cluster |
list_nodes
Obtenez les détails (par exemple, l’adresse IP, le port, etc.) de tous les nœuds de calcul dans la cible de calcul.
list_nodes()
Retours
Type | Description |
---|---|
Détails de tous les nœuds de calcul dans la cible de calcul. |
list_quotas
Obtenez les quotas d’espace de travail actuellement attribués en fonction de VMFamily pour un espace de travail et un abonnement donnés.
static list_quotas(workspace, location=None)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
|
location
|
Emplacement des quotas. S’il n’est pas spécifié, la valeur par défaut est l’emplacement de l’espace de travail. Valeur par défaut: None
|
Retours
Type | Description |
---|---|
Liste des quotas d’espace de travail actuellement attribués en fonction de VMFamily |
list_usages
Obtenez les informations d’utilisation actuelles ainsi que les limites des ressources AML pour un espace de travail et un abonnement donnés.
static list_usages(workspace, show_all=False, location=None)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
|
show_all
|
Spécifie si des utilisations détaillées des ressources enfants sont requises. Par défaut, False Valeur par défaut: False
|
location
|
Emplacement des ressources. S’il n’est pas spécifié, la valeur par défaut est l’emplacement de l’espace de travail. Valeur par défaut: None
|
Retours
Type | Description |
---|---|
Liste des informations d’utilisation actuelles ainsi que des limites pour les ressources AML |
provisioning_configuration
Créez un objet de configuration pour l’approvisionnement d’une cible 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)
Paramètres
Nom | Description |
---|---|
vm_size
Obligatoire
|
Taille des machines virtuelles de l’agent. Vous trouverez plus d’informations ici : https://aka.ms/azureml-vm-details. Notez que toutes les tailles ne sont pas disponibles dans toutes les régions, comme indiqué dans le lien précédent. S’il n’est pas spécifié, la valeur par défaut est Standard_NC6. |
vm_priority
|
Priorité de la machine virtuelle, dédiée ou faible priorité. Valeur par défaut: dedicated
|
min_nodes
|
Nombre minimal de nœuds à utiliser sur le cluster. Si ce n’est pas spécifié, la valeur par défaut est 0. Valeur par défaut: 0
|
max_nodes
|
Nombre maximal de nœuds à utiliser sur le cluster. S’il n’est pas spécifié, la valeur par défaut est 4. Valeur par défaut: None
|
idle_seconds_before_scaledown
|
Temps d’inactivité du nœud en secondes avant le scale-down du cluster. S’il n’est pas spécifié, la valeur par défaut est 1800. Valeur par défaut: 1800
|
admin_username
|
Nom du compte d’utilisateur administrateur qui peut être utilisé pour ssh dans des nœuds. Valeur par défaut: None
|
admin_user_password
|
Mot de passe du compte d’utilisateur administrateur. Valeur par défaut: None
|
admin_user_ssh_key
|
Clé publique SSH du compte d’utilisateur administrateur. Valeur par défaut: None
|
vnet_resourcegroup_name
|
Nom du groupe de ressources où se trouve le réseau virtuel. Valeur par défaut: None
|
vnet_name
|
nom du réseau virtuel. Valeur par défaut: None
|
subnet_name
|
Nom du sous-réseau à l’intérieur du réseau virtuel. Valeur par défaut: None
|
tags
|
Dictionnaire de balises de valeur clé à fournir à l’objet de calcul. Valeur par défaut: None
|
description
|
Description à fournir à l’objet de calcul. Valeur par défaut: None
|
remote_login_port_public_access
|
État du port SSH public. Les valeurs possibles sont les suivantes :
Valeur par défaut: NotSpecified
|
identity_type
|
Les valeurs possibles sont les suivantes :
Valeur par défaut: None
|
identity_id
|
Liste des ID de ressource pour l’identité affectée par l’utilisateur. Eg. ['/subscriptions//resourceGroups///providers/Microsoft.ManagedIdentity/userAssignedIdentities/'] Valeur par défaut: None
|
location
|
Emplacement dans lequel approvisionner le cluster. Valeur par défaut: None
|
enable_node_public_ip
|
Activez l’adresse IP publique du nœud. Les valeurs possibles sont les suivantes :
Valeur par défaut: True
|
Retours
Type | Description |
---|---|
Objet de configuration à utiliser lors de la création d’un objet Compute. |
Exceptions
Type | Description |
---|---|
refresh_state
Effectuez une mise à jour sur place des propriétés de l’objet.
Cette méthode met à jour les propriétés en fonction de l’état actuel de l’objet cloud correspondant. Ceci est principalement utilisé pour l’interrogation manuelle de l’état de calcul.
refresh_state()
remove_identity
serialize
Convertissez cet objet AmlCompute en dictionnaire sérialisé JSON.
serialize()
Retours
Type | Description |
---|---|
Représentation JSON de cet objet AmlCompute. |
supported_vmsizes
Répertoriez les tailles de machine virtuelle prises en charge dans une région.
static supported_vmsizes(workspace, location=None)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
|
location
|
Emplacement du cluster. S’il n’est pas spécifié, la valeur par défaut est l’emplacement de l’espace de travail. Valeur par défaut: None
|
Retours
Type | Description |
---|---|
Liste des tailles de machine virtuelle prises en charge dans une région avec les noms de la machine virtuelle, des processeurs virtuels et de la RAM. |
update
Mettez à jour la ScaleSettings cible AmlCompute.
update(min_nodes=None, max_nodes=None, idle_seconds_before_scaledown=None)
Paramètres
Nom | Description |
---|---|
min_nodes
|
Nombre minimal de nœuds à utiliser sur le cluster. Valeur par défaut: None
|
max_nodes
|
Nombre maximal de nœuds à utiliser sur le cluster. Valeur par défaut: None
|
idle_seconds_before_scaledown
|
Temps d’inactivité du nœud en secondes avant le scale-down du cluster. Valeur par défaut: None
|
update_quotas
Mettre à jour le quota d’une famille de machines virtuelles dans l’espace de travail.
static update_quotas(workspace, vm_family, limit=None, location=None)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
|
vm_family
Obligatoire
|
Nom de la famille de machines virtuelles |
limit
|
Quota maximal autorisé de la ressource Valeur par défaut: None
|
location
|
Emplacement du quota. S’il n’est pas spécifié, la valeur par défaut est l’emplacement de l’espace de travail. Valeur par défaut: None
|
wait_for_completion
Attendez que le cluster AmlCompute termine l’approvisionnement.
Cela peut être configuré pour attendre un nombre minimal de nœuds et pour le délai d’expiration après une période définie.
wait_for_completion(show_output=False, min_node_count=None, timeout_in_minutes=25, is_delete_operation=False)
Paramètres
Nom | Description |
---|---|
show_output
|
Boolean pour fournir une sortie plus détaillée. Valeur par défaut: False
|
min_node_count
|
Nombre minimal de nœuds à attendre avant d’envisager la fin de l’approvisionnement. Cela n’a pas besoin d’être égal au nombre minimal de nœuds avec lesquels le calcul a été approvisionné, mais il ne doit pas être supérieur à celui-ci. Valeur par défaut: None
|
timeout_in_minutes
|
Durée en minutes à attendre avant l’échec de l’approvisionnement. Valeur par défaut: 25
|
is_delete_operation
|
Indique si l’opération est destinée à la suppression. Valeur par défaut: False
|
Exceptions
Type | Description |
---|---|