AksWebservice Класс
Представляет модель машинного обучения, развернутую в качестве конечной точки веб-службы в Службе Kubernetes Azure.
Развернутая служба создается из модели, скрипта и связанных файлов. Результирующая веб-служба — это конечная точка HTTP с балансировкой нагрузки с API REST. Через этот API вы можете отправлять данные в модель и получать от нее прогнозы.
AksWebservice развертывает одну службу в одной конечной точке. Чтобы развернуть несколько служб в одной конечной точке, используйте класс AksEndpoint.
Дополнительные сведения приведены в статье Развертывание модели в кластере Службы Azure Kubernetes.
Инициализируйте экземпляр Webservice.
Конструктор Веб-службы извлекает облачное представление объекта Webservice, связанного с предоставленной рабочей областью. Он вернет экземпляр дочернего класса, соответствующий конкретному типу извлеченного объекта Webservice.
- Наследование
-
AksWebservice
Конструктор
AksWebservice(workspace, name)
Параметры
Комментарии
Рекомендуемый шаблон развертывания предусматривает создание объекта конфигурации развертывания с помощью метода deploy_configuration
с его последующим использованием с методом 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)
Полный пример можно найти по адресу: https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb
Существует несколько способов развернуть модель в качестве веб-службы:
Метод
deploy
класса Model для моделей, уже зарегистрированных в рабочей области.Метод
deploy_from_image
класса Webservice.Метод
deploy_from_model
класса Webservice для моделей, уже зарегистрированных в рабочей области. Этот метод создаст образ.Метод
deploy
класса Webservice, который будет регистрировать модель и создавать образ.
См. сведения о работе с объектами WebService:
Использование модели Машинного обучения Azure, развернутой в качестве веб-службы
Мониторинг и сбор данных из конечных точек веб-службы Машинного обучения
В разделе Переменные перечислены атрибуты локального представления облачного объекта AksWebservice. Эти переменные должны считаться доступными только для чтения. Изменение их значений не будет отражено в соответствующем облачном объекте.
Переменные
- enable_app_insights
- bool
Включено ли ведение журнала AppInsights для Webservice.
- autoscaler
- AutoScaler
Объект Autoscaler для WebService.
- compute_name
- str
Имя ComputeTarget, в которой развернут объект WebService.
- container_resource_requirements
- ContainerResourceRequirements
Требования к ресурсам контейнера для Webservice.
- liveness_probe_requirements
- LivenessProbeRequirements
Требования к пробе активности для WebService.
- data_collection
- DataCollection
Объект DataCollection для WebService.
- max_concurrent_requests_per_container
- int
Максимальное количество одновременных запросов на контейнер для WebService.
- max_request_wait_time
- int
Максимальное время ожидания запроса для WebService в миллисекундах.
- num_replicas
- int
Число реплик для WebService. Каждая реплика соответствует pod AKS.
- scoring_timeout_ms
- int
Время ожидания оценки для WebService, в миллисекундах.
- azureml.core.webservice.AksWebservice.scoring_uri
- str
Конечная точка оценки для WebService.
- is_default
- bool
Указывает, является ли WebService версией по умолчанию для родительского AksEndpoint.
- traffic_percentile
- int
Процент трафика для маршрутизации к WebService в родительском AksEndpoint.
- version_type
- VersionType
Тип версии для WebService в родительском AksEndpoint.
- token_auth_enabled
- bool
Указывает, включена ли проверка подлинности на основе маркера для WebService.
- environment
- Environment
Объект Environment, который использовался для создания WebService.
- deployment_status
- str
Состояние развертывания WebService.
- namespace
- str
Пространство имен AKS для WebService.
- azureml.core.webservice.AksWebservice.swagger_uri
- str
Конечная точка Swagger для WebService.
Методы
add_properties |
Добавляет пары "ключ-значение" в словарь свойств этой веб-службы. |
add_tags |
Добавление пар "ключ-значение" в словарь тегов этого объекта WebService. Вызывает исключение WebserviceException. |
deploy_configuration |
Создание объекта конфигурации для развертывания целевого объекта вычислений AKS. |
get_access_token |
Получение маркера проверки подлинности для этого объекта WebService. |
get_token |
НЕ РЕКОМЕНДУЕТСЯ. Используйте метод Получение маркера проверки подлинности для этого объекта WebService. |
remove_tags |
Удаление указанных ключей из словаря тегов этого объекта WebService. |
run |
Вызов этого объекта WebService с помощью предоставленных входных данных. |
serialize |
Преобразует этот объект WebService в сериализованный словарь JSON. |
update |
Обновляет Webservice с помощью предоставленных свойств. Оставленные значения None будут отображаться в этой веб-службе без изменений. |
add_properties
Добавляет пары "ключ-значение" в словарь свойств этой веб-службы.
add_properties(properties)
Параметры
add_tags
Добавление пар "ключ-значение" в словарь тегов этого объекта WebService.
Вызывает исключение WebserviceException.
add_tags(tags)
Параметры
Исключения
deploy_configuration
Создание объекта конфигурации для развертывания целевого объекта вычислений AKS.
static deploy_configuration(autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, auth_enabled=None, cpu_cores=None, memory_gb=None, enable_app_insights=None, scoring_timeout_ms=None, replica_max_concurrent_requests=None, max_request_wait_time=None, num_replicas=None, primary_key=None, secondary_key=None, tags=None, properties=None, description=None, gpu_cores=None, period_seconds=None, initial_delay_seconds=None, timeout_seconds=None, success_threshold=None, failure_threshold=None, namespace=None, token_auth_enabled=None, compute_target_name=None, cpu_cores_limit=None, memory_gb_limit=None, blobfuse_enabled=None)
Параметры
- autoscale_enabled
- bool
Указывает, следует ли включить автомасштабирование для этого объекта WebService. По умолчанию имеет значение true, если num_replicas имеет значение None.
- autoscale_min_replicas
- int
Минимальное число контейнеров, используемых при автомасштабировании этого объекта WebService. По умолчанию равен 1.
- autoscale_max_replicas
- int
Максимальное число контейнеров, используемых при автомасштабировании этой Веб-службы. Значение по умолчанию равно 10.
- autoscale_refresh_seconds
- int
Частота, с которой должны выполняться попытки автомасштабирования этой Веб-службы. По умолчанию равен 1.
- autoscale_target_utilization
- int
Целевой объем использования, который нужно пытаться поддерживать при автомасштабировании этой Веб-службы (в процентах от 100). Значение по умолчанию — 70.
- collect_model_data
- bool
Указывает, следует ли включить сбор данных модели для этой веб-службы. Значение по умолчанию — False.
- auth_enabled
- bool
Указывает, следует ли включить проверку подлинности для этого объект WebService. Значение по умолчанию: true.
- cpu_cores
- float
Количество ядер ЦП, выделяемых для этой Веб-службы. Может выражаться десятичным числом. Значение по умолчанию — 0.1. Соответствует запросу ядра Pod, а не ограничению в службе Azure Kubernetes.
- memory_gb
- float
Объем памяти (в ГБ), выделяемой для этого объекта WebService. Может выражаться десятичным числом. Значение по умолчанию — 0.5. Соответствует запросу памяти Pod, а не ограничению в службе Azure Kubernetes.
- enable_app_insights
- bool
Указывает, следует ли включить ведение журнала Application Insights для этого объекта WebService. Значение по умолчанию — False.
- scoring_timeout_ms
- int
Время ожидания для вызовов оценок этой Веб-службы. Значение по умолчанию — 60000.
- replica_max_concurrent_requests
- int
Максимальное количество одновременных запросов на реплику, которое будет разрешено для этой Веб-службы. По умолчанию равен 1. Не изменяйте этот параметр со значения по умолчанию 1, если это не требует служба технической поддержки Майкрософт или член команды Машинного обучения Azure.
- max_request_wait_time
- int
Максимальный период времени (в миллисекундах), в течение которого запрос будет оставаться в очереди до возврата ошибки 503. По умолчанию: 500.
- num_replicas
- int
Количество контейнеров, выделяемых для этой Веб-службы. Значения по умолчанию нет. Если этот параметр не задан, средство автомасштабирования будет включено по умолчанию.
- primary_key
- str
Первичный ключ проверки подлинности, используемый для этой Веб-службы.
- secondary_key
- str
Вторичный ключ проверки подлинности, используемый для этой Веб-службы.
Словарь тегов значений ключа для предоставления этой Веб-службе.
Словарь свойств значений ключа для предоставления этой Веб-службе. Эти свойства нельзя изменить после развертывания, однако можно добавить новые пары "ключ-значение".
- gpu_cores
- int
Количество ядер GPU, выделяемых для этого объекта WebService. Значение по умолчанию — 0.
- period_seconds
- int
Частота (в секундах) выполнения пробы активности. Значение по умолчанию — 10 секунд. Минимальное значение — 1.
- initial_delay_seconds
- int
Количество секунд после запуска контейнера перед инициированием пробы активности. Значение по умолчанию — 310.
- timeout_seconds
- int
Период в секундах, после которого истекает время ожидания пробы активности. Значение по умолчанию — 2 секунды. Минимальное значение — 1.
- success_threshold
- int
Минимальное число последовательных успешных попыток проведения пробы активности после сбоя, которое нужно, чтобы проба считалась успешной. По умолчанию равен 1. Минимальное значение — 1.
- failure_threshold
- int
Количество попыток (failureThreshold), выполняемых Kubernetes, до их полного прекращения в случае запуска pod, но сбоя пробы активности. Значение по умолчанию — 3. Минимальное значение — 1.
- namespace
- str
Пространство имен Kubernetes, в котором развертывается эта Веб-служба: до 63 строчных букв, цифр (a–z, 0–9) и дефисов (-). Первый и последний символы не могут быть дефисами.
- token_auth_enabled
- bool
Указывает, следует ли включить проверку подлинности с помощью маркера для этого объекта WebService. Если этот параметр включен, пользователи могут получить маркер доступа для доступа к этому объекту WebService с помощью учетных данных Azure Active Directory. Значение по умолчанию — False.
- compute_target_name
- str
Имя целевого объект вычислений, в который будет выполняться развертывание
- cpu_cores_limit
- float
Максимальное число ядер ЦП, которое может использовать этот объект WebService. Может выражаться десятичным числом.
- memory_gb_limit
- float
Максимальный объем памяти (в ГБ), который может использовать этот объект WebService. Может выражаться десятичным числом.
- blobfuse_enabled
- bool
Следует ли включить blobfuse для загрузки модели для этой Веб-службы. Значение по умолчанию: true.
Возвращаемое значение
Объект конфигурации, используемый при развертывании объекта AksWebservice.
Возвращаемый тип
Исключения
get_access_token
Получение маркера проверки подлинности для этого объекта WebService.
get_access_token()
Возвращаемое значение
Объект, описывающий маркер проверки подлинности для этого объекта WebService.
Возвращаемый тип
Исключения
get_token
НЕ РЕКОМЕНДУЕТСЯ. Используйте метод get_access_token
.
Получение маркера проверки подлинности для этого объекта WebService.
get_token()
Возвращаемое значение
Маркер проверки подлинности для этого объекта WebService и время его обновления.
Возвращаемый тип
Исключения
remove_tags
Удаление указанных ключей из словаря тегов этого объекта WebService.
remove_tags(tags)
Параметры
run
Вызов этого объекта WebService с помощью предоставленных входных данных.
run(input_data)
Параметры
- input_data
- <xref:varies>
Входные данные для вызова WebService.
Возвращаемое значение
Результат вызова WebService.
Возвращаемый тип
Исключения
serialize
Преобразует этот объект WebService в сериализованный словарь JSON.
serialize()
Возвращаемое значение
Представление JSON этого объекта WebService.
Возвращаемый тип
update
Обновляет Webservice с помощью предоставленных свойств.
Оставленные значения None будут отображаться в этой веб-службе без изменений.
update(image=None, autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, auth_enabled=None, cpu_cores=None, memory_gb=None, enable_app_insights=None, scoring_timeout_ms=None, replica_max_concurrent_requests=None, max_request_wait_time=None, num_replicas=None, tags=None, properties=None, description=None, models=None, inference_config=None, gpu_cores=None, period_seconds=None, initial_delay_seconds=None, timeout_seconds=None, success_threshold=None, failure_threshold=None, namespace=None, token_auth_enabled=None, cpu_cores_limit=None, memory_gb_limit=None, **kwargs)
Параметры
- autoscale_enabled
- bool
Включить или отключить автомасштабирование этого объекта WebService.
- autoscale_min_replicas
- int
Минимальное число контейнеров, используемых при автомасштабировании этого объекта WebService.
- autoscale_max_replicas
- int
Максимальное число контейнеров, используемых при автомасштабировании этого объекта WebService.
- autoscale_refresh_seconds
- int
Частота, с которой должны выполняться попытки автомасштабирования этого объекта WebService.
- autoscale_target_utilization
- int
Целевой объем использования, который нужно пытаться поддерживать при автомасштабировании этого объекта WebService (в процентах от 100).
- collect_model_data
- bool
Включение или отключение сбора данных модели для этого объекта WebService.
- auth_enabled
- bool
Указывает, следует ли включить проверку подлинности для этого объекта Webservice.
- cpu_cores
- float
Количество ядер ЦП, выделяемых для этого объекта WebService. Может выражаться десятичным числом
- memory_gb
- float
Объем памяти (в ГБ), выделяемой для этого объекта WebService. Может выражаться десятичным числом
- enable_app_insights
- bool
Указывает, следует ли включить ведение журнала Application Insights для этого объекта WebService
- scoring_timeout_ms
- int
Время ожидания для вызовов оценок этого объекта WebService.
- replica_max_concurrent_requests
- int
Максимальное количество одновременных запросов на реплику, которое будет разрешено для этого объекта WebService.
- max_request_wait_time
- int
Максимальный период времени (в миллисекундах), в течение которого запрос будет оставаться в очереди до возврата ошибки 503
- num_replicas
- int
Количество контейнеров, выделяемых для этого объекта WebService.
Словарь тегов значений ключа для предоставления этому объекту WebService. Заменит существующие теги.
Словарь свойств значений ключа, добавляемых в словарь существующих свойств
Список объектов модели для упаковки в обновленную службу
- inference_config
- InferenceConfig
Объект InferenceConfig, используемый для предоставления требуемых свойств развертывания модели.
- gpu_cores
- int
Количество ядер GPU, выделяемых для этого объекта WebService.
- period_seconds
- int
Частота (в секундах) выполнения пробы активности. Значение по умолчанию — 10 секунд. Минимальное значение — 1.
- initial_delay_seconds
- int
Количество секунд после запуска контейнера до начала пробы активности.
- timeout_seconds
- int
Количество секунд, после которого истекает время ожидания пробы активности. Значение по умолчанию — 1 секунда. Минимальное значение — 1.
- success_threshold
- int
Минимальное число последовательных успешных попыток пробы активности после сбоя, после которых проба будет считаться успешной. По умолчанию равен 1. Минимальное значение — 1.
- failure_threshold
- int
Количество попыток (failureThreshold), выполняемых Kubernetes, до их полного прекращения в случае запуска pod, но сбоя пробы активности. Значение по умолчанию — 3. Минимальное значение — 1.
- namespace
- str
Пространство имен Kubernetes, в котором развертывается эта Веб-служба: до 63 строчных букв, цифр (a–z, 0–9) и дефисов (-). Первый и последний символы не могут быть дефисами.
- token_auth_enabled
- bool
Указывает, следует ли включить проверку подлинности с помощью маркера для этого объекта WebService. Если этот параметр включен, пользователи могут получить маркер доступа для доступа к этой веб-службе с помощью учетных данных Azure Active Directory. Значение по умолчанию — False.
- cpu_cores_limit
- float
Максимальное число ядер ЦП, которое может использовать этот объект WebService. Может выражаться десятичным числом.
- memory_gb_limit
- float
Максимальный объем памяти (в ГБ), который может использовать этот объект WebService. Может выражаться десятичным числом.
- kwargs
- <xref:varies>
Включите params для поддержки миграции веб-службы AKS в подключенную конечную точку Kubernetes и развертывания. is_migration=True|False, compute_target=.
Исключения
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по