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


ComputeTarget Класс

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

Целевой объект вычислений — это назначенный вычислительный ресурс или среда, в которой выполняется скрипт обучения или размещается развертывание службы. Это может быть локальный компьютер или облачный ресурс вычислений. Дополнительные сведения см. в статье "Что такое целевые объекты вычислений в Машинном обучении Azure"?

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

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

Конструктор

ComputeTarget(workspace, name)

Параметры

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

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

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

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

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

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

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

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

Комментарии

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

Методы

attach

Подключите объект Compute к рабочей области с помощью указанного имени и сведений о конфигурации.

create

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

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

delete

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

Этот абстрактный метод реализуется дочерними классами ComputeTarget.

deserialize

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

detach

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

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

get_status

Получение текущего состояния подготовки объекта Compute.

list

Список всех объектов ComputeTarget в рабочей области.

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

refresh_state

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

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

Этот абстрактный метод реализуется дочерними классами ComputeTarget.

serialize

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

wait_for_completion

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

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

attach

Подключите объект Compute к рабочей области с помощью указанного имени и сведений о конфигурации.

static attach(workspace, name, attach_configuration)

Параметры

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

Объект рабочей области, к которому необходимо подключить объект Compute.

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

Имя для связывания с объектом Compute.

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

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

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

Тип Описание

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

Исключения

Тип Описание

Комментарии

Тип объекта, передаваемого параметру attach_configuration , является ComputeTargetAttachConfiguration объектом, построенным с помощью attach_configuration функции на любом из дочерних классов ComputeTarget.

В следующем примере показано, как подключить учетную запись ADLA к рабочей области с помощью attach_configuration метода AdlaCompute.


   adla_compute_name = 'testadl' # Name to associate with new compute in workspace

   # ADLA account details needed to attach as compute to workspace
   adla_account_name = "<adla_account_name>" # Name of the Azure Data Lake Analytics account
   adla_resource_group = "<adla_resource_group>" # Name of the resource group which contains this account

   try:
       # check if already attached
       adla_compute = AdlaCompute(ws, adla_compute_name)
   except ComputeTargetException:
       print('attaching adla compute...')
       attach_config = AdlaCompute.attach_configuration(resource_group=adla_resource_group, account_name=adla_account_name)
       adla_compute = ComputeTarget.attach(ws, adla_compute_name, attach_config)
       adla_compute.wait_for_completion()

   print("Using ADLA compute:{}".format(adla_compute.cluster_resource_id))
   print("Provisioning state:{}".format(adla_compute.provisioning_state))
   print("Provisioning errors:{}".format(adla_compute.provisioning_errors))

Полный пример доступен из https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-adla-as-compute-target.ipynb

create

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

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

static create(workspace, name, provisioning_configuration)

Параметры

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

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

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

Имя для связывания с объектом Compute.

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

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

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

Тип Описание

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

Исключения

Тип Описание

Комментарии

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

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


   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

delete

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

Этот абстрактный метод реализуется дочерними классами ComputeTarget.

abstract delete()

Комментарии

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

deserialize

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

abstract static deserialize(workspace, object_dict)

Параметры

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

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

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

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

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

Тип Описание

Вычисляемое представление предоставленного объекта JSON.

Комментарии

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

detach

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

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

abstract detach()

get_status

Получение текущего состояния подготовки объекта Compute.

get_status()

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

Тип Описание
str

Текущая версия provisioning_state.

Комментарии

Возвращаемые значения перечислены в справочнике по REST API Azure для provisioningState.

list

Список всех объектов ComputeTarget в рабочей области.

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

static list(workspace)

Параметры

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

Объект рабочей области, содержащий объекты для списка.

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

Тип Описание

Список целевых объектов вычислений в рабочей области.

Исключения

Тип Описание

refresh_state

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

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

Этот абстрактный метод реализуется дочерними классами ComputeTarget.

abstract refresh_state()

serialize

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

abstract serialize()

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

Тип Описание

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

wait_for_completion

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

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

wait_for_completion(show_output=False, is_delete_operation=False)

Параметры

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

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

Default value: False
is_delete_operation

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

Default value: False

Исключения

Тип Описание