AmlCompute Clase

Administra un proceso de Azure Machine Learning en Azure Machine Learning.

Un Proceso de Azure Machine Learning (AmlCompute) es una infraestructura de proceso administrada que permite al usuario crear fácilmente un proceso de uno o varios nodos. El proceso se crea dentro de la región del área de trabajo como un recurso que se puede compartir con otros usuarios. Para más información, consulte ¿Qué son los destinos de proceso en Azure Machine Learning?

Constructor ComputeTarget de clase.

Recupere una representación en la nube de un objeto Compute asociado al área de trabajo proporcionada. Devuelve una instancia de una clase secundaria correspondiente al tipo específico del objeto Compute recuperado.

Herencia
AmlCompute

Constructor

AmlCompute(workspace, name)

Parámetros

workspace
Workspace
Requerido

Objeto de área de trabajo que contiene el objeto AmlCompute que se recuperará.

name
str
Requerido

Nombre del objeto AmlCompute que se recuperará.

workspace
Workspace
Requerido

Objeto de área de trabajo que contiene el objeto Compute que se recuperará.

name
str
Requerido

Nombre del objeto Compute que se va a recuperar.

Comentarios

En el ejemplo siguiente, se crea un destino de proceso persistente aprovisionado por AmlCompute. El parámetro provisioning_configuration de este ejemplo es de tipo AmlComputeProvisioningConfiguration, que es una clase secundaria 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)

El ejemplo completo está disponible en https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/training/train-on-amlcompute/train-on-amlcompute.ipynb.

Métodos

add_identity

Agrega el tipo de identidad o los id. de identidad para este destino de AmlCompute.

delete

Quita el objeto AmlCompute de su área de trabajo asociada.

deserialize

Convierte un objeto JSON en un objeto AmlCompute.

detach

La desasociación no se admite para el objeto AmlCompute. En su lugar, use delete.

get

Devuelve el objeto de proceso.

get_active_runs

Devuelve un generador de las ejecuciones de este proceso.

get_status

Recupera el estado detallado actual del clúster de AmlCompute.

list_nodes

Obtenga los detalles (por ejemplo, la dirección IP, el puerto, etc.) de todos los nodos de proceso del destino de proceso.

list_quotas

Obtiene las cuotas de área de trabajo asignadas actualmente en función de VMFamily para un área de trabajo y una suscripción determinadas.

list_usages

Obtiene la información de la utilización actual, así como los límites de recursos de AML para un área de trabajo y una suscripción determinadas.

provisioning_configuration

Crea un objeto de configuración para aprovisionar un destino de AmlCompute.

refresh_state

Realiza una actualización local de las propiedades del objeto.

Este método actualiza las propiedades en función del estado actual del objeto de nube correspondiente. Se usa principalmente para el sondeo manual del estado de proceso.

remove_identity

Quita la identidad del proceso.

serialize

Convierte este objeto AmlCompute en un diccionario serializado JSON.

supported_vmsizes

Muestra los tamaños de máquina virtual admitidos de una región.

update

Actualiza el valor de ScaleSettings de este destino de AmlCompute.

update_quotas

Actualiza la cuota de una familia de máquinas virtuales del área de trabajo.

wait_for_completion

Espera a que el clúster de AmlCompute termine de aprovisionarse.

Se puede configurar para esperar un número mínimo de nodos y para agotar el tiempo de espera después de un período de tiempo establecido.

add_identity

Agrega el tipo de identidad o los id. de identidad para este destino de AmlCompute.

add_identity(identity_type, identity_id=None)

Parámetros

identity_type
string
Requerido

Los valores posibles son:

  • SystemAssigned: identidad asignada por el sistema

  • UserAssigned: identidad asignada por el usuario. Requiere que se establezca el id. de identidad.

identity_id
list[str]
valor predeterminado: None

Lista de id. de recursos para la identidad asignada por el usuario. P. ej. ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity /userAssignedIdentities/']

Comentarios

identity_id solo se debe especificar cuando identity_type == UserAssigned

delete

Quita el objeto AmlCompute de su área de trabajo asociada.

delete()

Excepciones

Comentarios

Si este objeto se creó mediante Azure Machine Learning, también se eliminarán los objetos basados en la nube correspondientes. Si este objeto se creó externamente y solo está asociado al área de trabajo, se genera una excepción ComputeTargetException y no cambia nada.

deserialize

Convierte un objeto JSON en un objeto AmlCompute.

static deserialize(workspace, object_dict)

Parámetros

workspace
Workspace
Requerido

Objeto de área de trabajo al que está asociado el objeto AmlCompute.

object_dict
dict
Requerido

Objeto JSON que se convertirá en un objeto AmlCompute.

Devoluciones

Representación de AmlCompute del objeto JSON proporcionado.

Tipo de valor devuelto

Excepciones

Comentarios

Genera una excepción ComputeTargetException si el área de trabajo proporcionada no es el área de trabajo a la que está asociado el proceso.

detach

La desasociación no se admite para el objeto AmlCompute. En su lugar, use delete.

detach()

Excepciones

get

Devuelve el objeto de proceso.

get()

get_active_runs

Devuelve un generador de las ejecuciones de este proceso.

get_active_runs(type=None, tags=None, properties=None, status=None)

Parámetros

type
str
valor predeterminado: None

Filtra el generador de ejecuciones devuelto por el tipo proporcionado. Consulte add_type_provider para crear tipos de ejecución.

tags
str o dict
valor predeterminado: None

Filtra las ejecuciones por "etiqueta" o {"etiqueta": "valor"}

properties
str o dict
valor predeterminado: None

Filtra las ejecuciones por "propiedad" o {"propiedad": "valor"}.

status
str
valor predeterminado: None

Estado de ejecución: "En ejecución" o "En cola"

Devoluciones

Un generador de ~_restclient.models.RunDto

Tipo de valor devuelto

<xref:builtin.generator>

get_status

Recupera el estado detallado actual del clúster de AmlCompute.

get_status()

Devoluciones

Objeto de estado detallado del clúster.

Tipo de valor devuelto

list_nodes

Obtenga los detalles (por ejemplo, la dirección IP, el puerto, etc.) de todos los nodos de proceso del destino de proceso.

list_nodes()

Devoluciones

Detalles de todos los nodos de proceso del destino de proceso.

Tipo de valor devuelto

list_quotas

Obtiene las cuotas de área de trabajo asignadas actualmente en función de VMFamily para un área de trabajo y una suscripción determinadas.

static list_quotas(workspace, location=None)

Parámetros

workspace
Workspace
Requerido
location
str
valor predeterminado: None

Ubicación de las cuotas. Si no se especifica, el valor predeterminado será la ubicación del área de trabajo.

Devoluciones

Lista de cuotas de área de trabajo asignadas actualmente basadas en VMFamily.

Tipo de valor devuelto

list_usages

Obtiene la información de la utilización actual, así como los límites de recursos de AML para un área de trabajo y una suscripción determinadas.

static list_usages(workspace, show_all=False, location=None)

Parámetros

workspace
Workspace
Requerido
show_all
valor predeterminado: False

Especifica si se requieren utilizaciones detalladas de recursos secundarios. El valor predeterminado es False.

location
str
valor predeterminado: None

Ubicación de los recursos. Si no se especifica, el valor predeterminado será la ubicación del área de trabajo.

Devoluciones

Lista de la información de uso actual, así como los límites de recursos de AML.

Tipo de valor devuelto

provisioning_configuration

Crea un objeto de configuración para aprovisionar un destino de 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)

Parámetros

vm_size
str
Requerido

Tamaño de las máquinas virtuales de agente. Se pueden encontrar más detalles aquí: https://aka.ms/azureml-vm-details. Tenga en cuenta que no todos los tamaños están disponibles en todas las regiones, como se detalla en el vínculo anterior. Si no se especifica, el valor predeterminado es Standard_NC6.

vm_priority
str
valor predeterminado: dedicated

Prioridad de máquina virtual, dedicated o lowpriority.

min_nodes
int
valor predeterminado: 0

Número mínimo de nodos que se usarán en el clúster. Si no se especifica, el valor predeterminado es 0.

max_nodes
int
valor predeterminado: None

Número máximo de nodos que se usarán en el clúster. Si no se especifica, el valor predeterminado es 4.

idle_seconds_before_scaledown
int
valor predeterminado: 1800

Tiempo de inactividad del nodo en segundos antes de reducir verticalmente el clúster. Si no se especifica, el valor predeterminado es 1800.

admin_username
str
valor predeterminado: None

Nombre de la cuenta de usuario administrador que se puede usar para SSH en nodos.

admin_user_password
str
valor predeterminado: None

Contraseña de la cuenta de usuario administrador.

admin_user_ssh_key
str
valor predeterminado: None

Clave pública SSH de la cuenta de usuario administrador.

vnet_resourcegroup_name
str
valor predeterminado: None

Nombre del grupo de recursos donde se encuentra la red virtual.

vnet_name
str
valor predeterminado: None

El nombre de la red virtual.

subnet_name
str
valor predeterminado: None

Nombre de la subred dentro de la red virtual.

tags
dict[str, str]
valor predeterminado: None

Diccionario de etiquetas de valor de clave que se proporcionan al objeto de proceso.

description
str
valor predeterminado: None

Descripción que se proporciona al objeto de proceso.

remote_login_port_public_access
str
valor predeterminado: NotSpecified

Estado del puerto SSH público. Los valores posibles son:

  • Disabled: indica que el puerto SSH público está cerrado en todos los nodos del clúster.

  • Enabled: indica que el puerto SSH público está abierto en todos los nodos del clúster.

  • NotSpecified: indica que el puerto SSH público está cerrado en todos los nodos del clúster si se define la red virtual; de lo contrario, está abierto en todos los nodos públicos. Puede ser este valor predeterminado solo durante el tiempo de creación del clúster. Después de la creación, estará habilitado o deshabilitado.

identity_type
string
valor predeterminado: None

Los valores posibles son:

  • SystemAssigned: identidad asignada por el sistema

  • UserAssigned: identidad asignada por el usuario. Requiere que se establezca el id. de identidad.

identity_id
list[str]
valor predeterminado: None

Lista de id. de recursos para la identidad asignada por el usuario. P. ej. ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity/userAssignedIdentities/']

location
str
valor predeterminado: None

Ubicación en la que aprovisionar el clúster.

enable_node_public_ip
bool
valor predeterminado: True

Habilita la dirección IP pública del nodo. Los valores posibles son:

  • True: habilitar la dirección IP pública del nodo.

  • False: deshabilitar la dirección IP pública del nodo.

  • NotSpecified: habilitar la dirección IP pública del nodo.

Devoluciones

Objeto de configuración que se va a usar al crear un objeto de proceso.

Tipo de valor devuelto

Excepciones

refresh_state

Realiza una actualización local de las propiedades del objeto.

Este método actualiza las propiedades en función del estado actual del objeto de nube correspondiente. Se usa principalmente para el sondeo manual del estado de proceso.

refresh_state()

remove_identity

Quita la identidad del proceso.

remove_identity(identity_id=None)

Parámetros

identity_id
list[str]
valor predeterminado: None

Identidades asignadas por el usuario

Comentarios

La identidad asignada por el sistema se quitará automáticamente si identity_id no se especifica.

serialize

Convierte este objeto AmlCompute en un diccionario serializado JSON.

serialize()

Devoluciones

Representación JSON de este objeto AmlCompute.

Tipo de valor devuelto

supported_vmsizes

Muestra los tamaños de máquina virtual admitidos de una región.

static supported_vmsizes(workspace, location=None)

Parámetros

workspace
Workspace
Requerido
location
str
valor predeterminado: None

Ubicación del clúster. Si no se especifica, el valor predeterminado será la ubicación del área de trabajo.

Devoluciones

Lista de tamaños de máquina virtual admitidos en una región con los nombres de la máquina virtual, las VCPU y la RAM.

Tipo de valor devuelto

update

Actualiza el valor de ScaleSettings de este destino de AmlCompute.

update(min_nodes=None, max_nodes=None, idle_seconds_before_scaledown=None)

Parámetros

min_nodes
int
valor predeterminado: None

Número mínimo de nodos que se usarán en el clúster.

max_nodes
int
valor predeterminado: None

Número máximo de nodos que se usarán en el clúster.

idle_seconds_before_scaledown
int
valor predeterminado: None

Tiempo de inactividad del nodo en segundos antes de reducir verticalmente el clúster.

update_quotas

Actualiza la cuota de una familia de máquinas virtuales del área de trabajo.

static update_quotas(workspace, vm_family, limit=None, location=None)

Parámetros

workspace
Workspace
Requerido
vm_family
str
Requerido

Nombre de familia de máquinas virtuales.

limit
int
valor predeterminado: None

Cuota máxima permitida del recurso.

location
str
valor predeterminado: None

Ubicación de la cuota. Si no se especifica, el valor predeterminado será la ubicación del área de trabajo.

wait_for_completion

Espera a que el clúster de AmlCompute termine de aprovisionarse.

Se puede configurar para esperar un número mínimo de nodos y para agotar el tiempo de espera después de un período de tiempo establecido.

wait_for_completion(show_output=False, min_node_count=None, timeout_in_minutes=25, is_delete_operation=False)

Parámetros

show_output
bool
valor predeterminado: False

Valor booleano para proporcionar una salida más detallada.

min_node_count
int
valor predeterminado: None

Número mínimo de nodos que hay que esperar antes de considerar que el aprovisionamiento se ha completado. No tiene que ser igual al número mínimo de nodos con los que se aprovisionó el proceso, pero no debe ser mayor que él.

timeout_in_minutes
int
valor predeterminado: 25

La duración en minutos que hay que esperar antes de considerar que el aprovisionamiento ha generador errores.

is_delete_operation
bool
valor predeterminado: False

Indica si la operación está pensada para eliminarse.

Excepciones