Поделиться через


AmlCompute Класс

Управляет вычислительными ресурсами Машинного обучения Azure в Машинном обучении Azure.

Вычисление машинного обучения Azure (AmlCompute) — это инфраструктура управляемых вычислений, которая позволяет легко создавать одно или многоузловое вычисление. Вычислительные ресурсы создаются в регионе рабочей области в качестве ресурса, который можно предоставить другим пользователям. Дополнительные сведения см. в статье "Что такое целевые объекты вычислений в Машинном обучении Azure"?

Конструктор ComputeTarget класса.

Получение облачного представления объекта Вычислений, связанного с предоставленной рабочей областью. Возвращает экземпляр дочернего класса, соответствующего конкретному типу извлеченного вычислительного объекта.

Конструктор

AmlCompute(workspace, name)

Параметры

Имя Описание
workspace
Обязательно

Объект рабочей области, содержащий объект AmlCompute для извлечения.

name
Обязательно
str

Имя извлекаемого объекта AmlCompute.

workspace
Обязательно

Объект рабочей области, содержащий объект Compute для извлечения.

name
Обязательно
str

Имя извлекаемого объекта Вычислений.

Комментарии

В следующем примере создается постоянный целевой объект вычислений, подготовленный AmlCompute . Параметр provisioning_configuration в этом примере имеет тип AmlComputeProvisioningConfiguration, который является дочерним классом 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)

Полный пример доступен из https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/training/train-on-amlcompute/train-on-amlcompute.ipynb

Методы

add_identity

Добавьте идентификаторы удостоверений и (или) идентификаторов для этого целевого объекта AmlCompute.

delete

Удалите объект AmlCompute из связанной рабочей области.

deserialize

Преобразуйте объект JSON в объект AmlCompute.

detach

Отсоединение не поддерживается для объекта AmlCompute. Вместо этого используйте delete.

get

Возвращает вычислительный объект.

get_active_runs

Возвращает генератор запусков для этого вычисления.

get_status

Получите текущее подробное состояние кластера AmlCompute.

list_nodes

Получите сведения (например, IP-адрес, порт и т. д.) всех вычислительных узлов в целевом объекте вычислений.

list_quotas

Получите назначенные квоты рабочей области на основе VMFamily для данной рабочей области и подписки.

list_usages

Получите текущие сведения об использовании, а также ограничения для ресурсов AML для данной рабочей области и подписки.

provisioning_configuration

Создайте объект конфигурации для подготовки целевого объекта AmlCompute.

refresh_state

Выполните обновление на месте свойств объекта.

Этот метод обновляет свойства на основе текущего состояния соответствующего облачного объекта. Это в основном используется для ручного опроса состояния вычислений.

remove_identity

Удалите удостоверение в вычислительных ресурсах.

serialize

Преобразуйте этот объект AmlCompute в сериализованный словарь JSON.

supported_vmsizes

Вывод списка поддерживаемых размеров виртуальных машин в регионе.

update

Обновите целевой ScaleSettings объект AmlCompute.

update_quotas

Обновление квоты для семейства виртуальных машин в рабочей области.

wait_for_completion

Дождитесь завершения подготовки кластера AmlCompute.

Это можно настроить для ожидания минимального количества узлов и времени ожидания по истечении заданного периода времени.

add_identity

Добавьте идентификаторы удостоверений и (или) идентификаторов для этого целевого объекта AmlCompute.

add_identity(identity_type, identity_id=None)

Параметры

Имя Описание
identity_type
Обязательно

Возможны следующие значения:

  • SystemAssigned — назначенное системой удостоверение

  • UserAssigned — назначаемое пользователем удостоверение. Требуется задать идентификатор удостоверения.

identity_id

Список идентификаторов ресурсов для назначаемого пользователем удостоверения. Например. ['/subscriptions/<subid>/resourceGroups/<rg>/providers/Microsoft.ManagedIdentity /userAssignedIdentities/<id>']

Default value: None

Комментарии

identity_id следует указывать только в том случае, если identity_type == UserAssigned

delete

Удалите объект AmlCompute из связанной рабочей области.

delete()

Исключения

Тип Описание

Комментарии

Если этот объект был создан с помощью Машинного обучения Azure, соответствующие облачные объекты также будут удалены. Если этот объект был создан внешне и подключен только к рабочей области, этот метод вызывает и ComputeTargetException ничего не изменится.

deserialize

Преобразуйте объект JSON в объект AmlCompute.

static deserialize(workspace, object_dict)

Параметры

Имя Описание
workspace
Обязательно

Объект рабочей области, с которым связан объект AmlCompute.

object_dict
Обязательно

Объект JSON для преобразования в объект AmlCompute.

Возвращаемое значение

Тип Описание

Представление предоставленного объекта JSON в AmlCompute.

Исключения

Тип Описание

Комментарии

Вызывает, ComputeTargetException если указанная рабочая область не является рабочей областью, с которым связана вычисление.

detach

Отсоединение не поддерживается для объекта AmlCompute. Вместо этого используйте delete.

detach()

Исключения

Тип Описание

get

Возвращает вычислительный объект.

get()

get_active_runs

Возвращает генератор запусков для этого вычисления.

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

Параметры

Имя Описание
type
str

Отфильтруйте возвращаемый генератор запусков по указанному типу. См. сведения add_type_provider о создании типов выполнения.

Default value: None
tags
str или dict

Фильтрация выполняется по тегу или {"tag": "value"}

Default value: None
properties
str или dict

Фильтрация выполняется по свойству или {"property": "value"}

Default value: None
status
str

Состояние выполнения : "Выполнение" или "Очередь"

Default value: None

Возвращаемое значение

Тип Описание
<xref:builtin.generator>

генератор ~_restclient.models.RunDto

get_status

Получите текущее подробное состояние кластера AmlCompute.

get_status()

Возвращаемое значение

Тип Описание

Подробный объект состояния для кластера

list_nodes

Получите сведения (например, IP-адрес, порт и т. д.) всех вычислительных узлов в целевом объекте вычислений.

list_nodes()

Возвращаемое значение

Тип Описание

Сведения обо всех вычислительных узлах в целевом объекте вычислений.

list_quotas

Получите назначенные квоты рабочей области на основе VMFamily для данной рабочей области и подписки.

static list_quotas(workspace, location=None)

Параметры

Имя Описание
workspace
Обязательно
location
str

Расположение квот. Если этот параметр не указан, по умолчанию используется расположение рабочей области.

Default value: None

Возвращаемое значение

Тип Описание

Список назначенных квот рабочей области на основе VMFamily

list_usages

Получите текущие сведения об использовании, а также ограничения для ресурсов AML для данной рабочей области и подписки.

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

Параметры

Имя Описание
workspace
Обязательно
show_all

Указывает, требуются ли подробные сведения об использовании дочерних ресурсов. Значение по умолчанию — False.

Default value: False
location
str

Расположение ресурсов. Если этот параметр не указан, по умолчанию используется расположение рабочей области.

Default value: None

Возвращаемое значение

Тип Описание

Список текущих сведений об использовании, а также ограничения для ресурсов AML

provisioning_configuration

Создайте объект конфигурации для подготовки целевого объекта 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)

Параметры

Имя Описание
vm_size
Обязательно
str

Размер виртуальных машин агента. Дополнительные сведения см. здесь: https://aka.ms/azureml-vm-details. Обратите внимание, что не все размеры доступны во всех регионах, как описано в предыдущей ссылке. Если значение не указано, по умолчанию используется Standard_NC6.

vm_priority
str

Приоритет виртуальной машины, выделенный или низкий приоритет.

Default value: dedicated
min_nodes
int

Минимальное количество узлов, используемых в кластере. Если значение не указано, значение по умолчанию — 0.

Default value: 0
max_nodes
int

Максимальное количество узлов, используемых в кластере. Если значение не указано, по умолчанию используется значение 4.

Default value: None
idle_seconds_before_scaledown
int

Время простоя узла в секундах перед масштабированием кластера. Если значение не указано, по умолчанию используется значение 1800.

Default value: 1800
admin_username
str

Имя учетной записи администратора, которую можно использовать для SSH на узлах.

Default value: None
admin_user_password
str

Пароль учетной записи администратора.

Default value: None
admin_user_ssh_key
str

Открытый ключ SSH учетной записи администратора.

Default value: None
vnet_resourcegroup_name
str

Имя группы ресурсов, в которой находится виртуальная сеть.

Default value: None
vnet_name
str

Имя виртуальной сети.

Default value: None
subnet_name
str

Имя подсети внутри виртуальной сети.

Default value: None
tags

Словарь тегов значений ключа для предоставления вычислительному объекту.

Default value: None
description
str

Описание для предоставления вычислительному объекту.

Default value: None
remote_login_port_public_access
str

Состояние общедоступного порта SSH. Возможны следующие значения:

  • Отключен. Указывает, что общедоступный порт SSH закрыт на всех узлах кластера.

  • Включено. Указывает, что общедоступный порт SSH открыт на всех узлах кластера.

  • NotSpecified — указывает, что общедоступный порт SSH закрыт на всех узлах кластера, если виртуальная сеть определена, в противном случае открывается все общедоступные узлы. Это значение по умолчанию может быть только во время создания кластера. После создания он будет включен или отключен.

Default value: NotSpecified
identity_type

Возможны следующие значения:

  • SystemAssigned — назначенное системой удостоверение

  • UserAssigned — назначаемое пользователем удостоверение. Требуется задать идентификатор удостоверения.

Default value: None
identity_id

Список идентификаторов ресурсов для назначаемого пользователем удостоверения. Например. ['/subscriptions/<subid>/resourceGroups/<rg>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<id>']

Default value: None
location
str

Расположение для подготовки кластера в.

Default value: None
enable_node_public_ip

Включите общедоступный IP-адрес узла. Возможны следующие значения:

  • True. Включение общедоступного IP-адреса узла.

  • False — отключить общедоступный IP-адрес узла.

  • NotSpecified — включение общедоступного IP-адреса узла.

Default value: True

Возвращаемое значение

Тип Описание

Объект конфигурации, используемый при создании вычислительного объекта.

Исключения

Тип Описание

refresh_state

Выполните обновление на месте свойств объекта.

Этот метод обновляет свойства на основе текущего состояния соответствующего облачного объекта. Это в основном используется для ручного опроса состояния вычислений.

refresh_state()

remove_identity

Удалите удостоверение в вычислительных ресурсах.

remove_identity(identity_id=None)

Параметры

Имя Описание
identity_id

Назначенные пользователем удостоверения

Default value: None

Комментарии

Назначенное системой удостоверение будет автоматически удалено, если identity_id не указан

serialize

Преобразуйте этот объект AmlCompute в сериализованный словарь JSON.

serialize()

Возвращаемое значение

Тип Описание

Представление JSON этого объекта AmlCompute.

supported_vmsizes

Вывод списка поддерживаемых размеров виртуальных машин в регионе.

static supported_vmsizes(workspace, location=None)

Параметры

Имя Описание
workspace
Обязательно
location
str

Расположение кластера. Если этот параметр не указан, по умолчанию используется расположение рабочей области.

Default value: None

Возвращаемое значение

Тип Описание

Список поддерживаемых размеров виртуальных машин в регионе с именами виртуальных машин, виртуальных ЦП и ОЗУ.

update

Обновите целевой ScaleSettings объект AmlCompute.

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

Параметры

Имя Описание
min_nodes
int

Минимальное количество узлов, используемых в кластере.

Default value: None
max_nodes
int

Максимальное количество узлов, используемых в кластере.

Default value: None
idle_seconds_before_scaledown
int

Время простоя узла в секундах перед масштабированием кластера.

Default value: None

update_quotas

Обновление квоты для семейства виртуальных машин в рабочей области.

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

Параметры

Имя Описание
workspace
Обязательно
vm_family
Обязательно
str

Имя семейства виртуальных машин

limit
int

Максимальная разрешенная квота ресурса

Default value: None
location
str

Расположение квоты. Если этот параметр не указан, по умолчанию используется расположение рабочей области.

Default value: None

wait_for_completion

Дождитесь завершения подготовки кластера AmlCompute.

Это можно настроить для ожидания минимального количества узлов и времени ожидания по истечении заданного периода времени.

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

Параметры

Имя Описание
show_output

Логическое значение для предоставления более подробных выходных данных.

Default value: False
min_node_count
int

Минимальное количество узлов, ожидающих завершения подготовки. Это не должно соответствовать минимальному количеству узлов, с которыми был подготовлен вычислительный ресурс, однако он не должен быть больше этого.

Default value: None
timeout_in_minutes
int

Длительность в минутах ожидания перед началом подготовки завершилась ошибкой.

Default value: 25
is_delete_operation

Указывает, предназначена ли операция для удаления.

Default value: False

Исключения

Тип Описание