Webservice Класс
Определяет базовые функциональные возможности развертывания моделей в качестве конечных точек веб-службы в Машинном обучении Azure.
Конструктор веб-службы используется для получения облачного представления объекта веб-службы, связанного с предоставленной рабочей областью. Возвращает экземпляр дочернего класса, соответствующего конкретному типу полученного объекта веб-службы. Класс веб-службы позволяет развертывать модели машинного обучения из объекта Model или Image объекта.
Дополнительные сведения о работе с веб-службой см. в статье "Развертывание моделей с помощью машинного обучения Azure".
Инициализация экземпляра веб-службы.
Конструктор веб-службы получает облачное представление объекта веб-службы, связанного с предоставленной рабочей областью. Он вернет экземпляр дочернего класса, соответствующего конкретному типу извлеченного объекта веб-службы.
Конструктор
Webservice(workspace, name)
Параметры
| Имя | Описание |
|---|---|
|
workspace
Обязательно
|
Объект рабочей области, содержащий объект веб-службы для извлечения. |
|
name
Обязательно
|
Имя извлекаемого объекта веб-службы. |
|
workspace
Обязательно
|
Объект рабочей области, содержащий объект веб-службы для извлечения. |
|
name
Обязательно
|
Имя извлекаемого объекта веб-службы. |
Комментарии
В следующем примере показан рекомендуемый шаблон развертывания, в котором сначала создается объект конфигурации с deploy_configuration методом дочернего класса веб-службы (в данном случае AksWebservice), а затем используется конфигурация с deploy методом Model класса.
# Set the web service configuration (using default here)
aks_config = AksWebservice.deploy_configuration()
# # Enable token auth and disable (key) auth on the webservice
# aks_config = AksWebservice.deploy_configuration(token_auth_enabled=True, auth_enabled=False)
В следующем примере показано, как найти существующую AciWebservice в рабочей области и удалить ее, если она существует, чтобы имя можно было повторно использовать.
from azureml.core.model import InferenceConfig
from azureml.core.webservice import AciWebservice
service_name = 'my-custom-env-service'
inference_config = InferenceConfig(entry_script='score.py', environment=environment)
aci_config = AciWebservice.deploy_configuration(cpu_cores=1, memory_gb=1)
service = Model.deploy(workspace=ws,
name=service_name,
models=[model],
inference_config=inference_config,
deployment_config=aci_config,
overwrite=True)
service.wait_for_deployment(show_output=True)
Существует несколько способов развертывания модели в качестве веб-службы, в том числе с помощью следующих способов:
deployМетод для моделей Model , уже зарегистрированных в рабочей области.deploy_from_imageМетод для образов, уже созданных Webservice из модели.deploy_from_modelМетод для моделей Webservice , уже зарегистрированных в рабочей области. Этот метод создаст изображение.deployWebserviceметод , который будет регистрировать модель и создавать изображение.
Сведения о работе с веб-службами см. в разделе
Использование модели Машинного обучения Azure, развернутой в качестве веб-службы
Мониторинг и сбор данных из конечных точек веб-службы Машинного обучения
В разделе "Переменные" перечислены атрибуты локального представления объекта облачной веб-службы. Эти переменные должны рассматриваться только для чтения. Изменение их значений не будет отражено в соответствующем облачном объекте.
Переменные
| Имя | Описание |
|---|---|
|
auth_enabled
|
Включена ли проверка подлинности веб-службы. |
|
compute_type
|
Какой тип вычислений развертывается веб-служба. |
|
created_time
|
После создания веб-службы. |
|
azureml.core.Webservice.description
|
Описание объекта веб-службы. |
|
azureml.core.Webservice.tags
|
Словарь тегов для объекта Webservice. |
|
azureml.core.Webservice.name
|
Имя веб-службы. |
|
azureml.core.Webservice.properties
|
Словарь свойств значения ключа для веб-службы. Эти свойства нельзя изменить после развертывания, однако можно добавить новые пары значений ключей. |
|
created_by
|
Пользователь, создавший веб-службу. |
|
error
|
Если веб-служба не удалось развернуть, это будет содержать сообщение об ошибке для причины сбоя. |
|
azureml.core.Webservice.state
|
Текущее состояние веб-службы. |
|
updated_time
|
При последнем обновлении веб-службы. |
|
azureml.core.Webservice.workspace
|
Рабочая область машинного обучения Azure, содержащая эту веб-службу. |
|
token_auth_enabled
|
Включена ли проверка подлинности маркеров в веб-службе. |
Методы
| check_for_existing_webservice |
Проверьте наличие веб-службы. |
| delete |
Удалите эту веб-службу из связанной рабочей области. Этот вызов функции не является асинхронным. Вызов выполняется до удаления ресурса. Возникает WebserviceException проблема при удалении модели из службы управления моделями. |
| deploy |
Разверните веб-службу из нуля или нескольких Model объектов. Эта функция будет регистрировать все файлы моделей, предоставленные и создавать изображение в процессе, все связанные с указанным Workspace. Используйте эту функцию, если у вас есть каталог моделей для развертывания, которые ранее не были зарегистрированы. Результирующая веб-служба — это конечная точка в режиме реального времени, которая может использоваться для запросов вывода. Дополнительные сведения см. в разделе "Использование модели, развернутой как веб-служба". |
| deploy_from_image |
Развертывание веб-службы из Image объекта. Используйте эту функцию, если у вас уже есть объект Image, созданный для модели. Результирующая веб-служба — это конечная точка в режиме реального времени, которая может использоваться для запросов вывода. Дополнительные сведения см. в разделе "Использование модели, развернутой как веб-служба". |
| deploy_from_model |
Разверните веб-службу из нуля или нескольких Model объектов. Эта функция аналогична deploy, но не регистрирует модели. Используйте эту функцию, если у вас уже зарегистрированы объекты модели. При этом будет создан образ в процессе, связанный с указанной рабочей областью. Результирующая веб-служба — это конечная точка в режиме реального времени, которая может использоваться для запросов вывода. Дополнительные сведения см. в разделе "Использование модели, развернутой как веб-служба". |
| deploy_local_from_model |
Создание и развертывание LocalWebservice для тестирования. Требуется, чтобы Docker был установлен и настроен. |
| deserialize |
Преобразуйте объект JSON ответа службы управления моделями в объект webservice. Завершится ошибкой, если указанная рабочая область не является рабочей областью, в ней зарегистрирована веб-служба. |
| get_keys |
Получение ключей проверки подлинности для этой веб-службы. |
| get_logs |
Получение журналов для этой веб-службы. |
| get_token |
Получение маркера проверки подлинности для этой веб-службы, заданного текущим пользователем. |
| list |
Вывод списка веб-служб, связанных с соответствующим Workspace. Возвращаемые результаты можно фильтровать с помощью параметров. |
| regen_key |
Повторно создайте один из ключей веб-службы, первичный или вторичный ключ. Вызывается WebserviceException , если |
| run |
Вызовите эту веб-службу с предоставленными входными данными. Абстрактный метод, реализованный дочерними классами Webservice. |
| serialize |
Преобразуйте этот объект веб-службы в сериализованный словарь JSON. Используется deserialize для преобразования обратно в объект webservice. |
| update |
Обновите параметры веб-службы. Это абстрактный метод, реализованный дочерними классами Webservice. Возможные параметры для обновления зависят от дочернего типа веб-службы. Например, для веб-служб экземпляров контейнеров Azure см update . сведения о конкретных параметрах. |
| update_deployment_state |
Обновите текущее состояние объекта в памяти. Выполните обновление на месте свойств объекта на основе текущего состояния соответствующего облачного объекта. В первую очередь полезно для опроса состояния создания вручную. |
| wait_for_deployment |
Автоматически опрашивание выполняющихся развертываний веб-служб. Подождите, пока веб-служба достигнет состояния терминала. Вызовет WebserviceException исключение, если оно достигает состояния терминала, отличного от успешного выполнения, или превышает заданное время ожидания. |
check_for_existing_webservice
Проверьте наличие веб-службы.
static check_for_existing_webservice(workspace, name, overwrite=False, request_func=None, check_func=None)
Параметры
| Имя | Описание |
|---|---|
|
workspace
Обязательно
|
|
|
name
Обязательно
|
|
|
overwrite
|
Default value: False
|
|
request_func
|
<xref:function>
функция для запроса службы для проверки наличия имени службы Default value: None
|
|
check_func
|
<xref:function>
функция для проверки содержимого ответа request_func Default value: None
|
Исключения
| Тип | Описание |
|---|---|
delete
Удалите эту веб-службу из связанной рабочей области.
Этот вызов функции не является асинхронным. Вызов выполняется до удаления ресурса. Возникает WebserviceException проблема при удалении модели из службы управления моделями.
delete()
Исключения
| Тип | Описание |
|---|---|
deploy
Разверните веб-службу из нуля или нескольких Model объектов.
Эта функция будет регистрировать все файлы моделей, предоставленные и создавать изображение в процессе, все связанные с указанным Workspace. Используйте эту функцию, если у вас есть каталог моделей для развертывания, которые ранее не были зарегистрированы.
Результирующая веб-служба — это конечная точка в режиме реального времени, которая может использоваться для запросов вывода. Дополнительные сведения см. в разделе "Использование модели, развернутой как веб-служба".
static deploy(workspace, name, model_paths, image_config, deployment_config=None, deployment_target=None, overwrite=False)
Параметры
| Имя | Описание |
|---|---|
|
workspace
Обязательно
|
Объект рабочей области для связывания веб-службы с. |
|
name
Обязательно
|
Имя для предоставления развернутой службы. Должен быть уникальным для рабочей области, состоящий только из строчных букв, чисел или дефисов, начинаться с буквы и иметь длину от 3 до 32 символов. |
|
model_paths
Обязательно
|
Список путей на диске к файлам или папкам модели. Может быть пустым списком. |
|
image_config
Обязательно
|
Объект ImageConfig, используемый для определения необходимых свойств изображения. |
|
deployment_config
|
Служба WebserviceDeploymentConfiguration, используемая для настройки веб-службы. Если он не указан, пустой объект конфигурации будет использоваться на основе требуемого целевого объекта. Default value: None
|
|
deployment_target
|
A ComputeTarget для развертывания веб-службы в. Так как экземпляры контейнеров Azure не связаны ComputeTarget, оставьте этот параметр как None для развертывания в экземплярах контейнеров Azure. Default value: None
|
|
overwrite
|
Перезаписать существующую службу, если служба уже существует с именем. Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Объект веб-службы, соответствующий развернутой веб-службе. |
Исключения
| Тип | Описание |
|---|---|
deploy_from_image
Развертывание веб-службы из Image объекта.
Используйте эту функцию, если у вас уже есть объект Image, созданный для модели.
Результирующая веб-служба — это конечная точка в режиме реального времени, которая может использоваться для запросов вывода. Дополнительные сведения см. в разделе "Использование модели, развернутой как веб-служба".
static deploy_from_image(workspace, name, image, deployment_config=None, deployment_target=None, overwrite=False)
Параметры
| Имя | Описание |
|---|---|
|
workspace
Обязательно
|
Объект рабочей области для связывания веб-службы с. |
|
name
Обязательно
|
Имя для предоставления развернутой службы. Должен быть уникальным для рабочей области, состоящий только из строчных букв, чисел или дефисов, начинаться с буквы и иметь длину от 3 до 32 символов. |
|
image
Обязательно
|
Объект Image для развертывания. |
|
deployment_config
|
Служба WebserviceDeploymentConfiguration, используемая для настройки веб-службы. Если он не указан, пустой объект конфигурации будет использоваться на основе требуемого целевого объекта. Default value: None
|
|
deployment_target
|
A ComputeTarget для развертывания веб-службы в. Так как экземпляры контейнеров Azure не связаны ComputeTarget, оставьте этот параметр как None для развертывания в экземплярах контейнеров Azure. Default value: None
|
|
overwrite
|
Перезаписать существующую службу, если служба уже существует с именем. Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Объект веб-службы, соответствующий развернутой веб-службе. |
Исключения
| Тип | Описание |
|---|---|
deploy_from_model
Разверните веб-службу из нуля или нескольких Model объектов.
Эта функция аналогична deploy, но не регистрирует модели. Используйте эту функцию, если у вас уже зарегистрированы объекты модели. При этом будет создан образ в процессе, связанный с указанной рабочей областью.
Результирующая веб-служба — это конечная точка в режиме реального времени, которая может использоваться для запросов вывода. Дополнительные сведения см. в разделе "Использование модели, развернутой как веб-служба".
static deploy_from_model(workspace, name, models, image_config, deployment_config=None, deployment_target=None, overwrite=False)
Параметры
| Имя | Описание |
|---|---|
|
workspace
Обязательно
|
Объект рабочей области для связывания веб-службы с. |
|
name
Обязательно
|
Имя для предоставления развернутой службы. Должен быть уникальным для рабочей области, состоящий только из строчных букв, чисел или дефисов, начинаться с буквы и иметь длину от 3 до 32 символов. |
|
models
Обязательно
|
Список объектов модели. Может быть пустым списком. |
|
image_config
Обязательно
|
Объект ImageConfig, используемый для определения необходимых свойств изображения. |
|
deployment_config
|
Служба WebserviceDeploymentConfiguration, используемая для настройки веб-службы. Если он не указан, пустой объект конфигурации будет использоваться на основе требуемого целевого объекта. Default value: None
|
|
deployment_target
|
A ComputeTarget для развертывания веб-службы в. Так как ACI не связан ComputeTarget, оставьте этот параметр как None для развертывания в ACI. Default value: None
|
|
overwrite
|
Перезаписать существующую службу, если служба уже существует с именем. Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Объект веб-службы, соответствующий развернутой веб-службе. |
Исключения
| Тип | Описание |
|---|---|
deploy_local_from_model
Создание и развертывание LocalWebservice для тестирования.
Требуется, чтобы Docker был установлен и настроен.
static deploy_local_from_model(workspace, name, models, image_config, deployment_config=None, wait=False)
Параметры
| Имя | Описание |
|---|---|
|
workspace
Обязательно
|
Объект рабочей области, с которым необходимо связать веб-службу. |
|
name
Обязательно
|
Имя для предоставления развернутой службы. Должен быть уникальным на локальном компьютере. |
|
models
Обязательно
|
Список объектов модели. Может быть пустым списком. |
|
image_config
Обязательно
|
Объект ImageConfig, используемый для определения необходимых свойств образа службы. |
|
deployment_config
|
Значение LocalWebserviceDeploymentConfiguration, используемое для настройки веб-службы. Если он не указан, будет использоваться пустой объект конфигурации. Default value: None
|
|
wait
|
Следует ли ожидать, чтобы контейнер Docker LocalWebservice сообщал о работоспособности. Вызывает исключение, если контейнер завершает работу. Значение по умолчанию — False. Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
Исключения
| Тип | Описание |
|---|---|
deserialize
Преобразуйте объект JSON ответа службы управления моделями в объект webservice.
Завершится ошибкой, если указанная рабочая область не является рабочей областью, в ней зарегистрирована веб-служба.
deserialize(workspace, webservice_payload)
Параметры
| Имя | Описание |
|---|---|
|
cls
Обязательно
|
Указывает, что это метод класса. |
|
workspace
Обязательно
|
Объект рабочей области, в который регистрируется веб-служба. |
|
webservice_payload
Обязательно
|
Объект JSON для преобразования в объект webservice. |
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Представление веб-службы предоставленного объекта JSON. |
get_keys
Получение ключей проверки подлинности для этой веб-службы.
get_keys()
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Ключи проверки подлинности для этой веб-службы. |
Исключения
| Тип | Описание |
|---|---|
get_logs
Получение журналов для этой веб-службы.
get_logs(num_lines=5000, init=False)
Параметры
| Имя | Описание |
|---|---|
|
num_lines
|
Максимальное количество строк журнала для получения. Default value: 5000
|
|
init
|
Получение журналов контейнера init Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Журналы для этой веб-службы. |
Исключения
| Тип | Описание |
|---|---|
get_token
Получение маркера проверки подлинности для этой веб-службы, заданного текущим пользователем.
get_token()
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Маркер проверки подлинности для этой веб-службы и после обновления. |
Исключения
| Тип | Описание |
|---|---|
list
Вывод списка веб-служб, связанных с соответствующим Workspace.
Возвращаемые результаты можно фильтровать с помощью параметров.
static list(workspace, compute_type=None, image_name=None, image_id=None, model_name=None, model_id=None, tags=None, properties=None, image_digest=None)
Параметры
| Имя | Описание |
|---|---|
|
workspace
Обязательно
|
Объект Рабочей области для перечисления веб-служб. |
|
compute_type
|
Фильтруйте только определенные типы веб-служб. Параметры: ACI, AKS. Default value: None
|
|
image_name
|
Список фильтров, чтобы включить только веб-службы, развернутые с определенным именем образа. Default value: None
|
|
image_id
|
Список фильтров для включения только веб-служб, развернутых с определенным идентификатором образа. Default value: None
|
|
model_name
|
Список фильтров для включения только веб-служб, развернутых с определенным именем модели. Default value: None
|
|
model_id
|
Список фильтров, чтобы включить только веб-службы, развернутые с определенным идентификатором модели. Default value: None
|
|
tags
|
Фильтруйте по указанному списку по ключу или [ключу, значению]. Пример. ['key', ['key2', 'key2 value']] Default value: None
|
|
properties
|
Фильтруйте по указанному списку по ключу или [ключу, значению]. Пример. ['key', ['key2', 'key2 value']] Default value: None
|
|
image_digest
|
Список фильтров для включения только веб-служб, развернутых с определенным дайджестом образа. Default value: None
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Отфильтрованный список веб-служб в предоставленной рабочей области. |
Исключения
| Тип | Описание |
|---|---|
regen_key
Повторно создайте один из ключей веб-службы, первичный или вторичный ключ.
Вызывается WebserviceException , если key он не указан или не является первичным или вторичным.
regen_key(key, set_key=None)
Параметры
| Имя | Описание |
|---|---|
|
key
Обязательно
|
Ключ для повторного создания. Параметры : "Primary" или "Secondary". |
|
set_key
|
Указанное пользователем значение, позволяющее вручную указать значение ключа Default value: None
|
Исключения
| Тип | Описание |
|---|---|
run
Вызовите эту веб-службу с предоставленными входными данными.
Абстрактный метод, реализованный дочерними классами Webservice.
abstract run(input)
Параметры
| Имя | Описание |
|---|---|
|
input
Обязательно
|
<xref:varies>
Входные данные для вызова веб-службы. Это данные, которые модель машинного обучения ожидает в качестве входных данных для выполнения прогнозов. |
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Результат вызова веб-службы. Это вернет прогнозы, выполняемые из модели машинного обучения. |
Исключения
| Тип | Описание |
|---|---|
serialize
Преобразуйте этот объект веб-службы в сериализованный словарь JSON.
Используется deserialize для преобразования обратно в объект webservice.
serialize()
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Представление JSON этой веб-службы. |
update
Обновите параметры веб-службы.
Это абстрактный метод, реализованный дочерними классами Webservice. Возможные параметры для обновления зависят от дочернего типа веб-службы. Например, для веб-служб экземпляров контейнеров Azure см update . сведения о конкретных параметрах.
abstract update(*args)
Параметры
| Имя | Описание |
|---|---|
|
args
Обязательно
|
<xref:varies>
Значения для обновления. |
Исключения
| Тип | Описание |
|---|---|
update_deployment_state
Обновите текущее состояние объекта в памяти.
Выполните обновление на месте свойств объекта на основе текущего состояния соответствующего облачного объекта. В первую очередь полезно для опроса состояния создания вручную.
update_deployment_state()
wait_for_deployment
Автоматически опрашивание выполняющихся развертываний веб-служб.
Подождите, пока веб-служба достигнет состояния терминала. Вызовет WebserviceException исключение, если оно достигает состояния терминала, отличного от успешного выполнения, или превышает заданное время ожидания.
wait_for_deployment(show_output=False, timeout_sec=None)
Параметры
| Имя | Описание |
|---|---|
|
show_output
|
Указывает, следует ли печатать более подробные выходные данные. Default value: False
|
|
timeout_sec
|
Создайте исключение, если развертывание превышает заданное время ожидания. Default value: None
|
Исключения
| Тип | Описание |
|---|---|