AmlCompute Класс
Управляет вычислительным кластером AML в Машинном обучении Microsoft Azure.
Вычислительная среда Машинного обучения Microsoft Azure (AmlCompute) — это управляемая вычислительная инфраструктура, которая позволяет c легкостью создавать одно- и многоузловые вычислительные среды. Она создается в регионе вашей рабочей области и является ресурсом, который можно использовать совместно с другими пользователями. Дополнительные сведения см. в статье Целевые объекты вычислений в Машинном обучении Microsoft Azure.
Конструктор ComputeTarget класса.
Получение облачного представления вычислительного объекта, связанного с предоставленной рабочей областью. Возвращает экземпляр дочернего класса, соответствующий конкретному типу извлеченного объекта Compute.
- Наследование
-
AmlCompute
Конструктор
AmlCompute(workspace, name)
Параметры
Имя | Описание |
---|---|
workspace
Обязательно
|
Объект рабочей области, содержащий извлекаемый объект AmlCompute. |
name
Обязательно
|
Имя извлекаемого объекта AmlCompute. |
workspace
Обязательно
|
Объект рабочей области, содержащий извлекаемый объект вычислений. |
name
Обязательно
|
Имя извлекаемого объекта Compute. |
Комментарии
В следующем примере создается постоянный объект вычислений, подготовленный с помощью 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
Обязательно
|
Возможны следующие значения:
|
identity_id
|
Список идентификаторов ресурсов для удостоверения, назначенного пользователем. Например: ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity /userAssignedIdentities/'] 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. |
Возвращаемое значение
Тип | Описание |
---|---|
Представление AmlCompute указанного объекта JSON. |
Исключения
Тип | Описание |
---|---|
Комментарии
Генерирует ComputeTargetException, если указана не та рабочая область, с которой связано вычисление.
detach
Окончательное удаление не поддерживается для объекта AmlCompute. Взамен рекомендуется использовать delete.
detach()
Исключения
Тип | Описание |
---|---|
get
Возвращает объект вычисления.
get()
get_active_runs
Возвращает генератор запусков для этого вычисления.
get_active_runs(type=None, tags=None, properties=None, status=None)
Параметры
Имя | Описание |
---|---|
type
|
Фильтрует возвращенный генератор запусков по предоставленному типу. См. раздел add_type_provider для создания типов запуска. Default value: None
|
tags
|
Для запуска фильтрации используется "метка" или {"метка": "значение"} Default value: None
|
properties
|
Для фильтрации используется "свойство" или {"свойство": "значение"} Default value: None
|
status
|
Состояние выполнения — "Выполняется" или "В очереди". 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
|
Расположение квот. Если не указано иное, по умолчанию будет задано расположение рабочей области. Default value: None
|
Возвращаемое значение
Тип | Описание |
---|---|
Перечисляет назначенные в настоящее время квоты рабочей области на основе VMFamily. |
list_usages
Получите сведения о ткущем использовании, а также ограничения ресурсов AML для указанной рабочей области и подписки.
static list_usages(workspace, show_all=False, location=None)
Параметры
Имя | Описание |
---|---|
workspace
Обязательно
|
|
show_all
|
Указывает, требуется ли подробные сведения об использовании дочерних ресурсов. Значение по умолчанию — False. Default value: False
|
location
|
Расположение ресурса. Если не указано иное, по умолчанию будет задано расположение рабочей области. 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
Обязательно
|
Размер виртуальных машин агента. Дополнительные сведения приведены в https://aka.ms/azureml-vm-details. Обратите внимание, что все размеры доступны не во всех регионах (см. предыдущую ссылку). Если не указано, по умолчанию используется значение Standard_NC6. |
vm_priority
|
Приоритет виртуальной машины: выделенные или низкоприоритетные. Default value: dedicated
|
min_nodes
|
Минимальное количество узлов в кластере. Если значение не указано, по умолчанию равно 0. Default value: 0
|
max_nodes
|
Максимальное количество узлов в кластере. Если значение не указано, по умолчанию равно 4. Default value: None
|
idle_seconds_before_scaledown
|
Время простоя узла в секундах перед масштабированием кластера. Если значение не указано, по умолчанию равно 1800. Default value: 1800
|
admin_username
|
Имя учетной записи администратора, которую можно использовать для входа в узлы по протоколу SSH. Default value: None
|
admin_user_password
|
Пароль учетной записи администратора. Default value: None
|
admin_user_ssh_key
|
Открытый ключ SSH учетной записи администратора. Default value: None
|
vnet_resourcegroup_name
|
Имя группы ресурсов, в которой находится виртуальная сеть. Default value: None
|
vnet_name
|
Имя виртуальной сети. Default value: None
|
subnet_name
|
Имя подсети в виртуальной сети. Default value: None
|
tags
|
Словарь тегов значений ключа, которые необходимо указать для объекта вычислений. Default value: None
|
description
|
Описание, которое необходимо указать для объекта вычислений. Default value: None
|
remote_login_port_public_access
|
Состояние общедоступного порта SSH. Возможны следующие значения:
Default value: NotSpecified
|
identity_type
|
Возможны следующие значения:
Default value: None
|
identity_id
|
Список идентификаторов ресурсов для удостоверения, назначенного пользователем. Например: ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity/userAssignedIdentities/'] Default value: None
|
location
|
Расположение для подготовки кластера. Default value: None
|
enable_node_public_ip
|
Включение общедоступного 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
|
Расположение кластера. Если не указано иное, по умолчанию будет задано расположение рабочей области. Default value: None
|
Возвращаемое значение
Тип | Описание |
---|---|
Список поддерживаемых размеров виртуальных машин в регионе с именами виртуальных машин, количеством виртуальных ЦП и объемом оперативной памяти. |
update
Обновление ScaleSettings для этого целевого объекта AmlCompute.
update(min_nodes=None, max_nodes=None, idle_seconds_before_scaledown=None)
Параметры
Имя | Описание |
---|---|
min_nodes
|
Минимальное количество узлов в кластере. Default value: None
|
max_nodes
|
Максимальное количество узлов в кластере. Default value: None
|
idle_seconds_before_scaledown
|
Время простоя узла в секундах перед масштабированием кластера. Default value: None
|
update_quotas
Обновление квоты для семейства виртуальных машин в рабочей области.
static update_quotas(workspace, vm_family, limit=None, location=None)
Параметры
Имя | Описание |
---|---|
workspace
Обязательно
|
|
vm_family
Обязательно
|
Имя семейства виртуальных машин. |
limit
|
Максимально допустимая квота ресурса. Default value: None
|
location
|
Расположение квоты. Если не указано иное, по умолчанию будет задано расположение рабочей области. 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
|
Минимальное количество ожидаемых узлов, которого необходимо достигнуть для завершения подготовки. Оно не обязательно равно минимальному количеству узлов, определенному при подготовке вычислительного кластера, но не должно быть больше этого значения. Default value: None
|
timeout_in_minutes
|
Время ожидания в минутах, по истечении которого подготовка считается невыполненной. Default value: 25
|
is_delete_operation
|
Указывает, предназначена ли операция для удаления. Default value: False
|
Исключения
Тип | Описание |
---|---|