Compartilhar via


AmlCompute Classe

Gerencia uma computação do Azure Machine Learning no Azure Machine Learning.

Um AmlCompute (Computação do Azure Machine Learning) é uma infraestrutura de computação gerenciada que permite criar facilmente uma computação de um ou vários nós. A computação é criada na região do workspace como um recurso que pode ser compartilhado com outros usuários. Para obter mais informações, confira O que são destinos de computação no Azure Machine Learning?

Construtor ComputeTarget de classe.

Recupere uma representação na nuvem de um objeto Compute associado ao workspace fornecido. Retorna uma instância de uma classe filho correspondente ao tipo específico do objeto Compute recuperado.

Herança
AmlCompute

Construtor

AmlCompute(workspace, name)

Parâmetros

Nome Description
workspace
Obrigatório

O objeto de workspace que contém o objeto AmlCompute a ser recuperado.

name
Obrigatório
str

O nome do objeto AmlCompute é recuperado.

workspace
Obrigatório

O objeto de workspace que contém o objeto Compute a ser recuperado.

name
Obrigatório
str

O nome do do objeto Compute a ser recuperado.

Comentários

No exemplo a seguir, um destino de computação persistente provisionado por AmlCompute é criado. O parâmetro provisioning_configuration nesse exemplo é do tipo AmlComputeProvisioningConfiguration, que é uma classe filho 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)

O exemplo completo está disponível em https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/training/train-on-amlcompute/train-on-amlcompute.ipynb

Métodos

add_identity

Adicione Tipo de Identidade e/ou IDs de Identidade para esse destino AmlCompute.

delete

Remova o objeto AmlCompute do workspace associado.

deserialize

Converte um objeto JSON em um objeto AmlCompute.

detach

Não há suporte para desanexar o objeto AmlCompute. Use delete em vez disso.

get

Retorna o objeto de computação.

get_active_runs

Retorna um gerador de execuções para essa computação.

get_status

Recupera o status detalhado atual do cluster AmlCompute.

list_nodes

Obtenha os detalhes (por exemplo, endereço IP, porta etc.) de todos os nós de computação no destino de computação.

list_quotas

Obtém as cotas de Workspace atribuídas no momento com base em VMFamily para determinado workspace e assinatura.

list_usages

Obtém as informações de uso atuais, bem como os limites dos recursos do AML para determinado workspace e assinatura.

provisioning_configuration

Cria um objeto de configuração para provisionar um destino AmlCompute.

refresh_state

Executar uma atualização local das propriedades do objeto.

Esse método atualiza as propriedades com base no estado atual do objeto de nuvem correspondente. Isso é usado principalmente para sondagem manual do estado de computação.

remove_identity

Remove a identidade na computação.

serialize

Converte esse objeto AmlCompute em um dicionário serializado JSON.

supported_vmsizes

Lista os tamanhos de VM com suporte em uma região.

update

Atualiza o ScaleSettings para esse destino AmlCompute.

update_quotas

Atualiza a cota de uma família de VMs no workspace.

wait_for_completion

Aguarda o cluster AmlCompute concluir o provisionamento.

Isso pode ser configurado para aguardar um número mínimo de nós e para expirar após um determinado período de tempo.

add_identity

Adicione Tipo de Identidade e/ou IDs de Identidade para esse destino AmlCompute.

add_identity(identity_type, identity_id=None)

Parâmetros

Nome Description
identity_type
Obrigatório

Os valores possíveis são:

  • SystemAssigned: identidade atribuída pelo sistema

  • UserAssigned: identidade atribuída pelo usuário. Requer que a ID de identidade seja definida.

identity_id

Lista de IDs de recursos para a identidade atribuída pelo usuário. ex. ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity /userAssignedIdentities/']

Valor padrão: None

Comentários

identity_id somente deverá ser especificado quando identity_type == UserAssigned

delete

Remova o objeto AmlCompute do workspace associado.

delete()

Exceções

Tipo Description

Comentários

Se esse objeto foi criado por meio do Azure Machine Learning, os objetos baseados em nuvem correspondentes também serão excluídos. Se esse objeto foi criado externamente e apenas anexado ao workspace, esse método gerará um ComputeTargetException e nada será alterado.

deserialize

Converte um objeto JSON em um objeto AmlCompute.

static deserialize(workspace, object_dict)

Parâmetros

Nome Description
workspace
Obrigatório

O objeto de workspace ao qual o objeto AmlCompute está associado.

object_dict
Obrigatório

Um objeto JSON para converter em um objeto AmlCompute.

Retornos

Tipo Description

A representação AmlCompute do objeto JSON fornecido.

Exceções

Tipo Description

Comentários

Gera uma ComputeTargetException se o workspace fornecido não é o workspace ao qual a computação está associada.

detach

Não há suporte para desanexar o objeto AmlCompute. Use delete em vez disso.

detach()

Exceções

Tipo Description

get

Retorna o objeto de computação.

get()

get_active_runs

Retorna um gerador de execuções para essa computação.

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

Parâmetros

Nome Description
type
str

Filtra o gerador de execuções retornado pelo tipo fornecido. Confira add_type_provider para criar tipos de execução.

Valor padrão: None
tags
str ou dict

Filtra execuções por "marca" ou {"marca": "valor"}

Valor padrão: None
properties
str ou dict

Filtra execuções por "propriedade" ou {"propriedade": "valor"}

Valor padrão: None
status
str

Status de execução: "Running" ou "Queued"

Valor padrão: None

Retornos

Tipo Description
<xref:builtin.generator>

um gerador de ~_restclient.models.RunDto

get_status

Recupera o status detalhado atual do cluster AmlCompute.

get_status()

Retornos

Tipo Description

Um objeto de status detalhado para o cluster

list_nodes

Obtenha os detalhes (por exemplo, endereço IP, porta etc.) de todos os nós de computação no destino de computação.

list_nodes()

Retornos

Tipo Description

Os detalhes de todos os nós de computação no destino de computação.

list_quotas

Obtém as cotas de Workspace atribuídas no momento com base em VMFamily para determinado workspace e assinatura.

static list_quotas(workspace, location=None)

Parâmetros

Nome Description
workspace
Obrigatório
location
str

A localização das cotas. Se não for especificado, o padrão será o local do workspace.

Valor padrão: None

Retornos

Tipo Description

Lista de Cotas de Workspace atualmente atribuídas com base no VMFamily

list_usages

Obtém as informações de uso atuais, bem como os limites dos recursos do AML para determinado workspace e assinatura.

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

Parâmetros

Nome Description
workspace
Obrigatório
show_all

Especifica se os usos detalhados de recursos filho são necessários. Usa False como padrão

Valor padrão: False
location
str

A localização dos recursos. Se não for especificado, o padrão será o local do workspace.

Valor padrão: None

Retornos

Tipo Description

Lista de informações de uso atuais, bem como limites para recursos do AML

provisioning_configuration

Cria um objeto de configuração para provisionar um destino 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

Nome Description
vm_size
Obrigatório
str

O tamanho das VMs do agente. Mais detalhes podem ser encontrados aqui: https://aka.ms/azureml-vm-details. Observe que nem todos os tamanhos estão disponíveis em todas as regiões, conforme detalhado no link anterior. Se não for especificado, o padrão será Standard_NC6.

vm_priority
str

A prioridade da VM, dedicated ou lowpriority.

Valor padrão: dedicated
min_nodes
int

O número mínimo de nós a ser usado no cluster. Se não for especificado, o padrão será 0.

Valor padrão: 0
max_nodes
int

O número máximo de nós a ser usado no cluster. Se não for especificado, o padrão será 4.

Valor padrão: None
idle_seconds_before_scaledown
int

Tempo ocioso do nó em segundos antes de reduzir verticalmente o cluster. Se não for especificado, o padrão será 1800.

Valor padrão: 1800
admin_username
str

O nome da conta de usuário administrador que pode ser usada para SSH em nós.

Valor padrão: None
admin_user_password
str

A senha da conta do usuário administrador.

Valor padrão: None
admin_user_ssh_key
str

A chave pública SSH da conta do usuário administrador.

Valor padrão: None
vnet_resourcegroup_name
str

O nome do grupo de recursos no qual a rede virtual está localizada.

Valor padrão: None
vnet_name
str

O nome da rede virtual.

Valor padrão: None
subnet_name
str

O nome da sub-rede dentro da VNet.

Valor padrão: None
tags

Um dicionário de marcas de chave-valor para fornecer ao objeto de computação.

Valor padrão: None
description
str

Uma descrição a ser fornecida ao objeto de computação.

Valor padrão: None
remote_login_port_public_access
str

O estado da porta SSH pública. Os valores possíveis são:

  • Disabled: indica que a porta do SSH pública está fechada em todos os nós do cluster.

  • Enabled: indica que a porta ssh pública está aberta em todos os nós do cluster.

  • NotSpecified: indica que a porta do SSH pública estará fechada em todos os nós do cluster, se a VNet estiver definida, caso contrário, todos os nós públicos serão abertos. Pode ser esse valor padrão apenas durante o tempo de criação do cluster. Após a criação, ele será habilitado ou desabilitado.

Valor padrão: NotSpecified
identity_type

Os valores possíveis são:

  • SystemAssigned: identidade atribuída pelo sistema

  • UserAssigned: identidade atribuída pelo usuário. Requer que a ID de identidade seja definida.

Valor padrão: None
identity_id

Lista de IDs de recursos para a identidade atribuída pelo usuário. ex. ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity/userAssignedIdentities/']

Valor padrão: None
location
str

Local para provisionar o cluster.

Valor padrão: None
enable_node_public_ip

Habilita o IP do nó. Os valores possíveis são:

  • True: habilita o IP do nó.

  • False: desabilita o IP do nó.

  • NotSpecified: habilita o IP do nó.

Valor padrão: True

Retornos

Tipo Description

Um objeto de configuração a ser usado ao criar um objeto Compute.

Exceções

Tipo Description

refresh_state

Executar uma atualização local das propriedades do objeto.

Esse método atualiza as propriedades com base no estado atual do objeto de nuvem correspondente. Isso é usado principalmente para sondagem manual do estado de computação.

refresh_state()

remove_identity

Remove a identidade na computação.

remove_identity(identity_id=None)

Parâmetros

Nome Description
identity_id

Identidades atribuídas pelo usuário

Valor padrão: None

Comentários

A identidade Atribuída pelo Sistema será removida automaticamente se identity_id não for especificado

serialize

Converte esse objeto AmlCompute em um dicionário serializado JSON.

serialize()

Retornos

Tipo Description

A representação JSON desse objeto AmlCompute.

supported_vmsizes

Lista os tamanhos de VM com suporte em uma região.

static supported_vmsizes(workspace, location=None)

Parâmetros

Nome Description
workspace
Obrigatório
location
str

O local do cluster. Se não for especificado, o padrão será o local do workspace.

Valor padrão: None

Retornos

Tipo Description

Uma lista de tamanhos de VM com suporte em uma região com nomes de VM, VCPUs e RAM.

update

Atualiza o ScaleSettings para esse destino AmlCompute.

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

Parâmetros

Nome Description
min_nodes
int

O número mínimo de nós a ser usado no cluster.

Valor padrão: None
max_nodes
int

O número máximo de nós a ser usado no cluster.

Valor padrão: None
idle_seconds_before_scaledown
int

O tempo ocioso do nó em segundos antes de reduzir verticalmente o cluster.

Valor padrão: None

update_quotas

Atualiza a cota de uma família de VMs no workspace.

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

Parâmetros

Nome Description
workspace
Obrigatório
vm_family
Obrigatório
str

Nome da família de VMs

limit
int

A cota máxima permitida do recurso

Valor padrão: None
location
str

A local da cota. Se não for especificado, o padrão será o local do workspace.

Valor padrão: None

wait_for_completion

Aguarda o cluster AmlCompute concluir o provisionamento.

Isso pode ser configurado para aguardar um número mínimo de nós e para expirar após um determinado período de tempo.

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

Parâmetros

Nome Description
show_output

Booliano para fornecer uma saída mais detalhada.

Valor padrão: False
min_node_count
int

Número mínimo de nós a aguardar antes de considerar a conclusão do provisionamento. Isso não precisa ser igual ao número mínimo de nós com os quais a computação foi provisionada, mas não deverá ser maior que isso.

Valor padrão: None
timeout_in_minutes
int

A duração em minutos de espera antes de considerar que o provisionamento falhou.

Valor padrão: 25
is_delete_operation

Indica se a operação se destina a exclusão.

Valor padrão: False

Exceções

Tipo Description