AmlCompute Klasse
Dient zum Verwalten eines Azure Machine Learning-Computeziels in Azure Machine Learning.
Azure Machine Learning Compute (AmlCompute) ist eine verwaltete Computeinfrastruktur, die Ihnen das einfache Erstellen von Computezielen mit einem oder mehreren Knoten ermöglicht. Das Computeziel wird in Ihrer Arbeitsbereichsregion als Ressource erstellt, die für andere Benutzer freigegeben werden kann. Weitere Informationen finden Sie unter Was sind Computeziele in Azure Machine Learning?.
ComputeTarget-Konstruktor der Klasse.
Rufen Sie eine Clouddarstellung eines Compute-Objekts ab, das dem bereitgestellten Arbeitsbereich zugeordnet ist. Gibt einen instance einer untergeordneten Klasse zurück, die dem spezifischen Typ des abgerufenen Compute-Objekts entspricht.
- Vererbung
-
AmlCompute
Konstruktor
AmlCompute(workspace, name)
Parameter
- workspace
- Workspace
Das Workspace-Objekt, das das abzurufende AmlCompute-Objekt enthält.
Hinweise
Im folgenden Beispiel wird ein persistentes, von AmlCompute bereitgestelltes Computeziel erstellt. Der provisioning_configuration
-Parameter in diesem Beispiel ist vom Typ AmlComputeProvisioningConfiguration (eine untergeordnete Klasse von 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)
Das vollständige Beispiel finden Sie unter https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/training/train-on-amlcompute/train-on-amlcompute.ipynb.
Methoden
add_identity |
Hinzufügen des Identitätstyps und/oder der Identitäts-IDs für dieses AmlCompute-Ziel. |
delete |
Entfernen des AmlCompute-Objekts aus dem zugeordneten Arbeitsbereich. |
deserialize |
Konvertieren eines JSON-Objekts in ein AmlCompute-Objekt. |
detach |
„detach“ (Trennen) wird für ein AmlCompute-Objekt nicht unterstützt. Verwenden Sie stattdessen delete. |
get |
Dient zum Zurückgeben des Compute-Objekts. |
get_active_runs |
Dient zum Zurückgeben eines Generators der Ausführungen für diese Computeressource. |
get_status |
Abrufen des aktuellen detaillierten Status für den AmlCompute-Cluster. |
list_nodes |
Rufen Sie die Details (z. B. IP-Adresse, Port usw.) aller Computeknoten im Computeziel ab. |
list_quotas |
Abrufen der derzeit zugewiesenen Arbeitsbereichskontingente basierend auf VMFamily für den angegebenen Arbeitsbereich und das angegebene Abonnement. |
list_usages |
Abrufen der aktuellen Nutzungsinformationen und Grenzwerte für AML-Ressourcen für den angegebenen Arbeitsbereich und das angegebene Abonnement. |
provisioning_configuration |
Erstellen eines Configuration-Objekts für die Bereitstellung eines AmlCompute-Ziels. |
refresh_state |
Direktes Aktualisieren der Eigenschaften des Objekts. Mit dieser Methode werden die Eigenschaften basierend auf dem aktuellen Zustand des entsprechenden Cloud-Objekts aktualisiert. Sie wird in erster Linie zum manuellen Abrufen des Computestatus verwendet. |
remove_identity |
Entfernen der Identität für die Computeressource. |
serialize |
Konvertieren dieses AmlCompute-Objekts in ein serialisiertes JSON-Wörterbuch. |
supported_vmsizes |
Auflisten der unterstützten VM-Größen in einer Region. |
update |
Aktualisieren der Skalierungseinstellungen (ScaleSettings) für dieses AmlCompute-Ziel. |
update_quotas |
Aktualisieren des Kontingents für eine VM-Familie im Arbeitsbereich. |
wait_for_completion |
Warten, bis die Bereitstellung des AmlCompute-Clusters abgeschlossen ist. Dies kann so konfiguriert werden, dass auf eine Mindestanzahl von Knoten gewartet wird und nach einem festgelegten Zeitraum ein Timeout auftritt. |
add_identity
Hinzufügen des Identitätstyps und/oder der Identitäts-IDs für dieses AmlCompute-Ziel.
add_identity(identity_type, identity_id=None)
Parameter
- identity_type
- string
Mögliche Werte:
SystemAssigned: Systemseitig zugewiesene Identität
UserAssigned: Benutzerseitig zugewiesene Identität. Erfordert das Festlegen der Identitäts-ID.
Liste der Ressourcen-IDs für die benutzerseitig zugewiesene Identität. Beispiel: ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity /userAssignedIdentities/']
Hinweise
„identity_id“ sollte nur angegeben werden, wenn „identity_type == UserAssigned“.
delete
Entfernen des AmlCompute-Objekts aus dem zugeordneten Arbeitsbereich.
delete()
Ausnahmen
Hinweise
Wenn dieses Objekt über Azure Machine Learning erstellt wurde, werden auch die entsprechenden cloudbasierten Objekte gelöscht. Wenn dieses Objekt extern erstellt und nur an den Arbeitsbereich angefügt wurde, wird eine Ausnahme vom Typ ComputeTargetException ausgelöst, und es wird nichts geändert.
deserialize
Konvertieren eines JSON-Objekts in ein AmlCompute-Objekt.
static deserialize(workspace, object_dict)
Parameter
- object_dict
- dict
Ein JSON-Objekt, das in ein AmlCompute-Objekt konvertiert werden soll.
Gibt zurück
Die AmlCompute-Darstellung des bereitgestellten JSON-Objekts.
Rückgabetyp
Ausnahmen
Hinweise
Wenn der bereitgestellte Arbeitsbereich nicht der Arbeitsbereich ist, dem das Compute-Objekt zugeordnet ist, wird eine Ausnahme vom Typ ComputeTargetException ausgelöst.
detach
„detach“ (Trennen) wird für ein AmlCompute-Objekt nicht unterstützt. Verwenden Sie stattdessen delete.
detach()
Ausnahmen
get
Dient zum Zurückgeben des Compute-Objekts.
get()
get_active_runs
Dient zum Zurückgeben eines Generators der Ausführungen für diese Computeressource.
get_active_runs(type=None, tags=None, properties=None, status=None)
Parameter
- type
- str
Filtern des zurückgegeben Generators von Ausführungen nach dem angegebenen Typ. Informationen zum Erstellen von Ausführungstypen finden Sie unter add_type_provider.
Filtern von Ausführungen nach „property“ oder „{"property": "value"}“.
Gibt zurück
Ein Generator von „~_restclient.models.RunDto“.
Rückgabetyp
get_status
Abrufen des aktuellen detaillierten Status für den AmlCompute-Cluster.
get_status()
Gibt zurück
Ein detailliertes Status-Objekt für den Cluster.
Rückgabetyp
list_nodes
Rufen Sie die Details (z. B. IP-Adresse, Port usw.) aller Computeknoten im Computeziel ab.
list_nodes()
Gibt zurück
Die Details aller Serverknoten am Computeziel.
Rückgabetyp
list_quotas
Abrufen der derzeit zugewiesenen Arbeitsbereichskontingente basierend auf VMFamily für den angegebenen Arbeitsbereich und das angegebene Abonnement.
static list_quotas(workspace, location=None)
Parameter
- workspace
- Workspace
- location
- str
Der Standort der Kontingente. Ohne Angabe wird standardmäßig der Standort des Arbeitsbereichs verwendet.
Gibt zurück
Liste der derzeit zugewiesenen Arbeitsbereichskontingente basierend auf VMFamily
Rückgabetyp
list_usages
Abrufen der aktuellen Nutzungsinformationen und Grenzwerte für AML-Ressourcen für den angegebenen Arbeitsbereich und das angegebene Abonnement.
static list_usages(workspace, show_all=False, location=None)
Parameter
- workspace
- Workspace
- show_all
Gibt an, ob detaillierte Nutzungsinformationen für untergeordnete Ressourcen benötigt werden. Der Standardwert ist „FALSE“.
- location
- str
Der Standort der Ressourcen. Ohne Angabe wird standardmäßig der Standort des Arbeitsbereichs verwendet.
Gibt zurück
Liste der aktuellen Nutzungsinformationen und Grenzwerte für AML-Ressourcen
Rückgabetyp
provisioning_configuration
Erstellen eines Configuration-Objekts für die Bereitstellung eines AmlCompute-Ziels.
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)
Parameter
- vm_size
- str
Die Größe von Agent-VMs. Weitere Informationen finden Sie hier: https://aka.ms/azureml-vm-details. Beachten Sie, dass nicht alle Größen in allen Regionen verfügbar sind, wie im zuvor verlinkten Artikel beschrieben. Ohne Angabe wird standardmäßig „Standard_NC6“ verwendet.
- min_nodes
- int
Die Mindestanzahl von Knoten, die im Cluster verwendet werden. Ohne Angabe wird standardmäßig „0“ verwendet.
- max_nodes
- int
Die maximale Anzahl von Knoten, die im Cluster verwendet werden. Ohne Angabe wird standardmäßig 4 verwendet.
- idle_seconds_before_scaledown
- int
Die Leerlaufzeit des Knotens in Sekunden vor dem herunterskalieren des Clusters. Ohne Angabe wird standardmäßig „1800“ verwendet.
- admin_username
- str
Der Name des Administratorbenutzerkontos, das für die SSH-Verbindung mit Knoten verwendet werden kann.
- admin_user_ssh_key
- str
Der öffentliche SSH-Schlüssel des Administrator-Benutzerkontos.
- vnet_resourcegroup_name
- str
Der Name der Ressourcengruppe, in der sich das virtuelle Netzwerk befindet.
Ein Wörterbuch mit Schlüsselwerttags, die für das Computeobjekt bereitgestellt werden sollen.
- description
- str
Eine Beschreibung, die für das Compute-Objekt bereitgestellt werden soll.
- remote_login_port_public_access
- str
Der Status des öffentlichen SSH-Ports. Mögliche Werte:
Disabled: Gibt an, dass der öffentliche SSH-Port auf allen Knoten im Cluster geschlossen ist.
Enabled: Gibt an, dass der öffentliche SSH-Port auf allen Knoten im Cluster geöffnet ist.
NotSpecified: Gibt an, dass der öffentliche SSH-Port auf allen Knoten im Cluster geschlossen ist, wenn das VNet definiert ist. Andernfalls sind alle öffentlichen Knoten geöffnet. Dieser Standardwert kann nur während der Clustererstellung vorhanden sein. Nach der Erstellung lautet er entweder „enabled“ oder „disabled“.
- identity_type
- string
Mögliche Werte:
SystemAssigned: Systemseitig zugewiesene Identität
UserAssigned: Benutzerseitig zugewiesene Identität. Erfordert das Festlegen der Identitäts-ID.
Liste der Ressourcen-IDs für die benutzerseitig zugewiesene Identität. Beispiel: ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity/userAssignedIdentities/']
- enable_node_public_ip
- bool
Aktivieren der öffentliche IP-Adresse des Knotens. Mögliche Werte:
True: Aktiviert die öffentliche IP-Adresse des Knotens.
False: Deaktiviert die öffentliche IP-Adresse des Knotens.
NotSpecified: Aktiviert die öffentliche IP-Adresse des Knotens.
Gibt zurück
Ein Konfigurationsobjekt, das beim Erstellen eines Computeobjekts verwendet werden soll.
Rückgabetyp
Ausnahmen
refresh_state
Direktes Aktualisieren der Eigenschaften des Objekts.
Mit dieser Methode werden die Eigenschaften basierend auf dem aktuellen Zustand des entsprechenden Cloud-Objekts aktualisiert. Sie wird in erster Linie zum manuellen Abrufen des Computestatus verwendet.
refresh_state()
remove_identity
Entfernen der Identität für die Computeressource.
remove_identity(identity_id=None)
Parameter
Hinweise
Die systemseitig zugewiesene Identität wird automatisch entfernt, wenn „identity_id“ nicht angegeben ist.
serialize
Konvertieren dieses AmlCompute-Objekts in ein serialisiertes JSON-Wörterbuch.
serialize()
Gibt zurück
Die JSON-Darstellung dieses AmlCompute-Objekts.
Rückgabetyp
supported_vmsizes
Auflisten der unterstützten VM-Größen in einer Region.
static supported_vmsizes(workspace, location=None)
Parameter
- workspace
- Workspace
- location
- str
Der Standort des Clusters. Ohne Angabe wird standardmäßig der Standort des Arbeitsbereichs verwendet.
Gibt zurück
Eine Liste der unterstützten VM-Größen in einer Region mit den VM-Namen, den vCPUs und dem RAM.
Rückgabetyp
update
Aktualisieren der Skalierungseinstellungen (ScaleSettings) für dieses AmlCompute-Ziel.
update(min_nodes=None, max_nodes=None, idle_seconds_before_scaledown=None)
Parameter
- idle_seconds_before_scaledown
- int
Die Leerlaufzeit des Knotens, nach der der Cluster herunterskaliert wird (in Sekunden).
update_quotas
Aktualisieren des Kontingents für eine VM-Familie im Arbeitsbereich.
static update_quotas(workspace, vm_family, limit=None, location=None)
Parameter
- workspace
- Workspace
- location
- str
Der Standort des Kontingents. Ohne Angabe wird standardmäßig der Standort des Arbeitsbereichs verwendet.
wait_for_completion
Warten, bis die Bereitstellung des AmlCompute-Clusters abgeschlossen ist.
Dies kann so konfiguriert werden, dass auf eine Mindestanzahl von Knoten gewartet wird und nach einem festgelegten Zeitraum ein Timeout auftritt.
wait_for_completion(show_output=False, min_node_count=None, timeout_in_minutes=25, is_delete_operation=False)
Parameter
- show_output
- bool
Ein boolescher Wert, mit dem eine ausführlichere Ausgabe bereitgestellt werden kann.
- min_node_count
- int
Die Mindestanzahl von Knoten, auf die gewartet werden soll, bevor die Bereitstellung als abgeschlossen gilt. Dies muss nicht der Mindestanzahl von Knoten entsprechen, mit denen die Computeressource bereitgestellt wurde, der Wert sollte aber nicht größer sein.
- timeout_in_minutes
- int
Die Wartezeit in Minuten, nach der die Bereitstellung als fehlerhaft gilt.
Ausnahmen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für