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


RemoteCompute Класс

Управляет удаленным целевым объектом вычислений для использования в Машинном обучении Azure.

Машинное обучение Azure поддерживает подключение удаленного ресурса вычислений к рабочей области. Удаленный ресурс может быть виртуальной машиной Azure, удаленным сервером в организации или локальной средой, если ресурс доступен для Машинного обучения Azure. Дополнительные сведения см. в статье о целевых объектах вычислений в Машинном обучении Azure.

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

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

Наследование
RemoteCompute

Конструктор

RemoteCompute(workspace, name)

Параметры

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

Объект рабочей области, содержащий извлекаемый объект RemoteCompute.

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

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

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

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

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

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

Комментарии

Следующие регионы Azure не поддерживают использование общедоступного IP-адреса виртуальной машины или кластера HDInsight для присоединения целевого объекта вычислений.

  • Восточная часть США

  • Западная часть США 2

  • Центрально-южная часть США

Вместо этого используйте идентификатор Azure Resource Manager виртуальной машины или кластера HDInsight. Значение ИД ресурса виртуальной машины может быть создано с использованием ИД подписки, имени группы ресурсов и имени виртуальной машины с помощью следующего формата строки: /subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.Compute/virtualMachines/<vm_name>.

В следующем примере показано, как создать и подключить Виртуальную машину для обработки и анализа данных (DSVM) в качестве целевого объекта вычислений.


   from azureml.core.compute import ComputeTarget, RemoteCompute
   from azureml.core.compute_target import ComputeTargetException

   username = os.getenv('AZUREML_DSVM_USERNAME', default='<my_username>')
   address = os.getenv('AZUREML_DSVM_ADDRESS', default='<ip_address_or_fqdn>')

   compute_target_name = 'cpudsvm'
   # if you want to connect using SSH key instead of username/password you can provide parameters private_key_file and private_key_passphrase
   try:
       attached_dsvm_compute = RemoteCompute(workspace=ws, name=compute_target_name)
       print('found existing:', attached_dsvm_compute.name)
   except ComputeTargetException:
       attach_config = RemoteCompute.attach_configuration(address=address,
                                                          ssh_port=22,
                                                          username=username,
                                                          private_key_file='./.ssh/id_rsa')


   # Attaching a virtual machine using the public IP address of the VM is no longer supported.
   # Instead, use resourceId of the VM.
   # The resourceId of the VM can be constructed using the following string format:
   # /subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.Compute/virtualMachines/<vm_name>.
   # You can also use subscription_id, resource_group and vm_name without constructing resourceId.
       attach_config = RemoteCompute.attach_configuration(resource_id='<resource_id>',
                                                          ssh_port=22,
                                                          username='username',
                                                          private_key_file='./.ssh/id_rsa')

       attached_dsvm_compute = ComputeTarget.attach(ws, compute_target_name, attach_config)

       attached_dsvm_compute.wait_for_completion(show_output=True)

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

Методы

attach

НЕ РЕКОМЕНДУЕТСЯ. Вместо этого рекомендуется использовать метод attach_configuration.

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

attach_configuration

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

Подключение виртуальной машины с помощью общедоступного IP-адреса виртуальной машины больше не поддерживается. Вместо этого используйте resourceId виртуальной машины. Значение resourceId виртуальной машины может быть создано с помощью следующего формата строки: "/subscriptions/<subscription_id>/resourceGroups/<resource_group>/ providers/Microsoft.Compute/virtualMachines/<vm_name>".

Можно также использовать subscription_id, resource_group и vm_name без создания resourceId. Для получения дополнительной информации см. https://aka.ms/azureml-compute-vm.

delete

Удаление не поддерживается для объекта RemoteCompute. Взамен рекомендуется использовать detach.

deserialize

Преобразование объекта JSON в объект DsvmCompute.

detach

Окончательное удаление объекта RemoteCompute и его отсоединение от связанной рабочей области.

Базовые облачные объекты при этом сохраняются, удаляется только связь.

get_credentials

Извлечение учетных данных для целевого объекта RemoteCompute.

refresh_state

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

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

serialize

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

attach

НЕ РЕКОМЕНДУЕТСЯ. Вместо этого рекомендуется использовать метод attach_configuration.

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

static attach(workspace, name, username, address, ssh_port=22, password='', private_key_file='', private_key_passphrase='')

Параметры

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

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

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

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

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

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

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

Адрес подключаемого ресурса.

ssh_port
int
значение по умолчанию: 22

Предоставленный для ресурса порт. Значение по умолчанию — 22.

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

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

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

Путь к файлу, содержащему закрытый ключ для ресурса.

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

Фраза закрытого ключа, необходимая для доступа к ресурсу.

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

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

Возвращаемый тип

Исключения

attach_configuration

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

Подключение виртуальной машины с помощью общедоступного IP-адреса виртуальной машины больше не поддерживается. Вместо этого используйте resourceId виртуальной машины. Значение resourceId виртуальной машины может быть создано с помощью следующего формата строки: "/subscriptions/<subscription_id>/resourceGroups/<resource_group>/ providers/Microsoft.Compute/virtualMachines/<vm_name>".

Можно также использовать subscription_id, resource_group и vm_name без создания resourceId. Для получения дополнительной информации см. https://aka.ms/azureml-compute-vm.

static attach_configuration(username, subscription_id=None, resource_group=None, vm_name=None, resource_id=None, address=None, ssh_port=22, password='', private_key_file='', private_key_passphrase='')

Параметры

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

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

subscription_id
str
значение по умолчанию: None

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

resource_group
str
значение по умолчанию: None

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

vm_name
str
значение по умолчанию: None

Имя виртуальной машины.

resource_id
str
значение по умолчанию: None

Идентификатор ресурса Azure Resource Manager (ARM) для существующего ресурса.

address
str
значение по умолчанию: None

Адрес существующего ресурса.

ssh_port
int
значение по умолчанию: 22

Предоставленный для ресурса порт. Значение по умолчанию — 22.

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

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

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

Путь к файлу, содержащему закрытый ключ для ресурса.

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

Фраза закрытого ключа, необходимая для доступа к ресурсу.

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

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

Возвращаемый тип

Исключения

delete

Удаление не поддерживается для объекта RemoteCompute. Взамен рекомендуется использовать detach.

delete()

Исключения

deserialize

Преобразование объекта JSON в объект DsvmCompute.

static deserialize(workspace, object_dict)

Параметры

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

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

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

Объект JSON, который преобразуется в объект RemoteCompute.

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

Представление RemoteCompute указанного объекта JSON.

Возвращаемый тип

Исключения

Комментарии

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

detach

Окончательное удаление объекта RemoteCompute и его отсоединение от связанной рабочей области.

Базовые облачные объекты при этом сохраняются, удаляется только связь.

detach()

Исключения

get_credentials

Извлечение учетных данных для целевого объекта RemoteCompute.

get_credentials()

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

Учетные данные для целевого объекта RemoteCompute.

Возвращаемый тип

Исключения

refresh_state

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

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

refresh_state()

Исключения

serialize

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

serialize()

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

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

Возвращаемый тип

Исключения