AksWebservice Clase
Representa un modelo de aprendizaje automático implementado como punto de conexión de servicio web en Azure Kubernetes Service.
Se crea un servicio implementado a partir de un modelo, un script y archivos asociados. El servicio web resultante es un punto de conexión HTTP con equilibrio de carga con una API REST. Puede enviar datos a esta API y recibir la predicción devuelta por el modelo.
AksWebservice implementa un único servicio en un punto de conexión. Para implementar varios servicios en un punto de conexión, use la AksEndpoint clase .
Para más información, consulte Implementación de un modelo en un clúster de Azure Kubernetes Service.
Inicialice la instancia del servicio web.
El constructor de servicios web recupera una representación en la nube de un objeto de servicio web asociado al área de trabajo proporcionada. Devolverá una instancia de una clase secundaria correspondiente al tipo específico del objeto Webservice recuperado.
Constructor
AksWebservice(workspace, name)
Parámetros
| Nombre | Description |
|---|---|
|
workspace
Requerido
|
Objeto de área de trabajo que contiene el objeto Webservice que se va a recuperar. |
|
name
Requerido
|
Nombre del objeto web que se va a recuperar. |
Comentarios
El patrón de implementación recomendado es crear un objeto de configuración de implementación con el deploy_configuration método y, a continuación, usarlo con el deploy método de la Model clase como se muestra a continuación.
# 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)
Hay varias maneras de implementar un modelo como un servicio web, incluido con:
deploymétodo de Model para los modelos que ya están registrados en el área de trabajo.deploy_from_imagemétodo de Webservice.deploy_from_modelmétodo de para los modelos ya registrados en el área de Webservice trabajo. Este método creará una imagen.deploymétodo de Webservice, que registrará un modelo y creará una imagen.
Para obtener información sobre cómo trabajar con servicios web, consulte
Consumir un modelo de Azure Machine Learning que está implementado como un servicio web
Supervisión y recopilación de datos de los puntos de conexión del servicio web ML
En la sección Variables se enumeran los atributos de una representación local del objeto AksWebservice en la nube. Estas variables deben considerarse de solo lectura. El cambio de sus valores no se reflejará en el objeto de nube correspondiente.
Variables
| Nombre | Description |
|---|---|
|
enable_app_insights
|
Indica si el registro de AppInsights está habilitado para el servicio web. |
|
autoscaler
|
Objeto Autoscaler para el servicio web. |
|
compute_name
|
Nombre del objeto ComputeTarget en el que se implementa el servicio web. |
|
container_resource_requirements
|
Requisitos de recursos de contenedor para el servicio web. |
|
liveness_probe_requirements
|
Requisitos de sondeo de ejecución para el servicio web. |
|
data_collection
|
Objeto DataCollection para el servicio web. |
|
max_concurrent_requests_per_container
|
Número máximo de solicitudes simultáneas por contenedor para el servicio web. |
|
max_request_wait_time
|
Tiempo máximo de espera de solicitud para el servicio web, en milisegundos. |
|
num_replicas
|
Número de réplicas para el servicio web. Cada réplica corresponde a un pod de AKS. |
|
scoring_timeout_ms
|
Tiempo de espera de puntuación para el servicio web, en milisegundos. |
|
azureml.core.webservice.AksWebservice.scoring_uri
|
Punto de conexión de puntuación para el servicio web |
|
is_default
|
Si el servicio web es la versión predeterminada para aksEndpoint principal. |
|
traffic_percentile
|
Porcentaje de tráfico que se va a enrutar al servicio web en aksEndpoint primario. |
|
version_type
|
Tipo de versión para el servicio web en aksEndpoint primario. |
|
token_auth_enabled
|
Si la autenticación de tokens está habilitada o no para el servicio web. |
|
environment
|
Objeto Environment que se usó para crear el servicio web. |
|
azureml.core.webservice.AksWebservice.models
|
Lista de modelos implementados en el servicio web. |
|
deployment_status
|
Estado de implementación del servicio web. |
|
namespace
|
Espacio de nombres de AKS del servicio web. |
|
azureml.core.webservice.AksWebservice.swagger_uri
|
Punto de conexión de swagger para el servicio web. |
Métodos
| add_properties |
Agregue pares clave-valor al diccionario de propiedades de este servicio web. |
| add_tags |
Agregue pares clave-valor al diccionario de etiquetas de este servicio web. Genera un WebserviceExceptionobjeto . |
| deploy_configuration |
Cree un objeto de configuración para implementar en un destino de proceso de AKS. |
| get_access_token |
Recupere el token de autenticación para este servicio web. |
| get_token |
OBSOLESCENTE. Use Recupere el token de autenticación para este servicio web. |
| remove_tags |
Quite las claves especificadas del diccionario de etiquetas de este servicio web. |
| run |
Llame a este servicio web con la entrada proporcionada. |
| serialize |
Convierta este servicio web en un diccionario serializado JSON. |
| update |
Actualice el servicio web con las propiedades proporcionadas. Los valores que quedan como Ninguno permanecerán sin cambios en este servicio web. |
add_properties
add_tags
Agregue pares clave-valor al diccionario de etiquetas de este servicio web.
Genera un WebserviceExceptionobjeto .
add_tags(tags)
Parámetros
| Nombre | Description |
|---|---|
|
tags
Requerido
|
Diccionario de etiquetas que se van a agregar. |
Excepciones
| Tipo | Description |
|---|---|
deploy_configuration
Cree un objeto de configuración para implementar en un destino de proceso de 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)
Parámetros
| Nombre | Description |
|---|---|
|
autoscale_enabled
|
Indica si se va a habilitar o no el escalado automático para este servicio web. El valor predeterminado es True si num_replicas es Ninguno. Valor predeterminado: None
|
|
autoscale_min_replicas
|
El número mínimo de contenedores que se van a usar al escalar automáticamente este servicio web. De manera predeterminada, su valor es 1. Valor predeterminado: None
|
|
autoscale_max_replicas
|
Número máximo de contenedores que se van a usar al escalar automáticamente este servicio web. El valor predeterminado es 10. Valor predeterminado: None
|
|
autoscale_refresh_seconds
|
Con qué frecuencia el escalador automático debe intentar escalar este servicio web. De manera predeterminada, su valor es 1. Valor predeterminado: None
|
|
autoscale_target_utilization
|
El uso de destino (en porcentaje de 100) que el escalador automático debe intentar mantener para este servicio web. El valor predeterminado es 70. Valor predeterminado: None
|
|
collect_model_data
|
Si se va a habilitar o no la recopilación de datos del modelo para este servicio web. El valor predeterminado es False. Valor predeterminado: None
|
|
auth_enabled
|
Si se va a habilitar o no la autenticación de clave para este servicio web. El valor predeterminado es True. Valor predeterminado: None
|
|
cpu_cores
|
Número de núcleos de CPU que se van a asignar para este servicio web. Puede ser un decimal. El valor predeterminado es 0.1. Corresponde a la solicitud principal del pod, no al límite, en Azure Kubernetes Service. Valor predeterminado: None
|
|
memory_gb
|
Cantidad de memoria (en GB) que se va a asignar para este servicio web. Puede ser un decimal. El valor predeterminado es 0,5. Corresponde a la solicitud de memoria del pod, no al límite, en Azure Kubernetes Service. Valor predeterminado: None
|
|
enable_app_insights
|
Si se va a habilitar o no el registro de Application Insights para este servicio web. El valor predeterminado es False. Valor predeterminado: None
|
|
scoring_timeout_ms
|
Tiempo de espera para exigir llamadas de puntuación a este servicio web. El valor predeterminado es 60000. Valor predeterminado: None
|
|
replica_max_concurrent_requests
|
Número de solicitudes simultáneas máximas por réplica que permiten este servicio web. De manera predeterminada, su valor es 1. No cambie esta configuración del valor predeterminado de 1 a menos que lo indique el soporte técnico de Microsoft o un miembro del equipo de Azure Machine Learning. Valor predeterminado: None
|
|
max_request_wait_time
|
La cantidad máxima de tiempo que una solicitud permanecerá en la cola (en milisegundos) antes de devolver un error 503. El valor predeterminado es 500. Valor predeterminado: None
|
|
num_replicas
|
Número de contenedores que se van a asignar para este servicio web. No hay ningún valor predeterminado, si este parámetro no está establecido, el escalador automático está habilitado de forma predeterminada. Valor predeterminado: None
|
|
primary_key
|
Clave de autenticación principal que se va a usar para este servicio web. Valor predeterminado: None
|
|
secondary_key
|
Clave de autenticación secundaria que se va a usar para este servicio web. Valor predeterminado: None
|
|
tags
|
Diccionario de etiquetas de valor de clave para proporcionar este servicio web. Valor predeterminado: None
|
|
properties
|
Diccionario de propiedades de valor de clave para proporcionar este servicio web. Estas propiedades no se pueden cambiar después de la implementación, pero se pueden agregar nuevos pares de valor de clave. Valor predeterminado: None
|
|
description
|
Descripción para proporcionar este servicio web. Valor predeterminado: None
|
|
gpu_cores
|
Número de núcleos de GPU que se van a asignar para este servicio web. El valor predeterminado es 0. Valor predeterminado: None
|
|
period_seconds
|
Frecuencia (en segundos) en que se ejecutará el sondeo de ejecución. El valor predeterminado es de 10 segundos. El valor mínimo es 1. Valor predeterminado: None
|
|
initial_delay_seconds
|
Número de segundos después de que se haya iniciado el contenedor antes de iniciar los sondeos de ejecución. El valor predeterminado es 310. Valor predeterminado: None
|
|
timeout_seconds
|
Número de segundos después del cual se agota el tiempo de espera del sondeo de ejecución. El valor predeterminado es 2 segundos. El valor mínimo es 1. Valor predeterminado: None
|
|
success_threshold
|
Los éxitos consecutivos mínimos para el sondeo de ejecución que se deben considerar correctos después de haber producido un error. De manera predeterminada, su valor es 1. El valor mínimo es 1. Valor predeterminado: None
|
|
failure_threshold
|
Cuando se inicie un pod y se produzca un error en el sondeo de ejecución, Kubernetes probará las veces especificadas en failureThreshold antes de abandonarlo. El valor predeterminado es 3. El valor mínimo es 1. Valor predeterminado: None
|
|
namespace
|
Espacio de nombres de Kubernetes en el que se va a implementar este servicio web: hasta 63 caracteres alfanuméricos en minúsculas ('a'-'z', '0'-'9') y guiones ('-'). Los caracteres primero y último no pueden ser guiones. Valor predeterminado: None
|
|
token_auth_enabled
|
Si se va a habilitar o no la autenticación del token para este servicio web. Si esto está habilitado, los usuarios pueden acceder a este servicio web mediante la captura de un token de acceso mediante sus credenciales de Azure Active Directory. El valor predeterminado es False. Valor predeterminado: None
|
|
compute_target_name
|
Nombre del destino de proceso en el que se va a realizar la implementación Valor predeterminado: None
|
|
cpu_cores_limit
|
El número máximo de núcleos de CPU que puede usar este servicio web. Puede ser un decimal. Valor predeterminado: None
|
|
memory_gb_limit
|
La cantidad máxima de memoria (en GB) que este servicio web puede usar. Puede ser un decimal. Valor predeterminado: None
|
|
blobfuse_enabled
|
Si se va a habilitar blobfuse para la descarga de modelos para este servicio web. El valor predeterminado es True Valor predeterminado: None
|
Devoluciones
| Tipo | Description |
|---|---|
|
Objeto de configuración que se va a usar al implementar un aksWebservice. |
Excepciones
| Tipo | Description |
|---|---|
get_access_token
Recupere el token de autenticación para este servicio web.
get_access_token()
Devoluciones
| Tipo | Description |
|---|---|
|
Objeto que describe el token de autenticación para este servicio web. |
Excepciones
| Tipo | Description |
|---|---|
get_token
OBSOLESCENTE. Use get_access_token el método en su lugar.
Recupere el token de autenticación para este servicio web.
get_token()
Devoluciones
| Tipo | Description |
|---|---|
|
Token de autenticación para este servicio web y cuándo actualizarlo. |
Excepciones
| Tipo | Description |
|---|---|
remove_tags
run
Llame a este servicio web con la entrada proporcionada.
run(input_data)
Parámetros
| Nombre | Description |
|---|---|
|
input_data
Requerido
|
<xref:varies>
Entrada para llamar al servicio web con |
Devoluciones
| Tipo | Description |
|---|---|
|
Resultado de llamar al servicio web |
Excepciones
| Tipo | Description |
|---|---|
serialize
Convierta este servicio web en un diccionario serializado JSON.
serialize()
Devoluciones
| Tipo | Description |
|---|---|
|
Representación JSON de este servicio web. |
update
Actualice el servicio web con las propiedades proporcionadas.
Los valores que quedan como Ninguno permanecerán sin cambios en este servicio web.
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)
Parámetros
| Nombre | Description |
|---|---|
|
image
|
Nueva imagen que se va a implementar en el servicio web Valor predeterminado: None
|
|
autoscale_enabled
|
Habilitar o deshabilitar el escalado automático de este servicio web Valor predeterminado: None
|
|
autoscale_min_replicas
|
El número mínimo de contenedores que se van a usar al escalar automáticamente este servicio web Valor predeterminado: None
|
|
autoscale_max_replicas
|
El número máximo de contenedores que se van a usar al escalar automáticamente este servicio web Valor predeterminado: None
|
|
autoscale_refresh_seconds
|
Frecuencia con la que el escalador automático debe intentar escalar este servicio web Valor predeterminado: None
|
|
autoscale_target_utilization
|
El uso de destino (en porcentaje de 100) que el escalador automático debe intentar mantener para este servicio web Valor predeterminado: None
|
|
collect_model_data
|
Habilitar o deshabilitar la recopilación de datos del modelo para este servicio web Valor predeterminado: None
|
|
auth_enabled
|
Si se va a habilitar o no la autenticación para este servicio web Valor predeterminado: None
|
|
cpu_cores
|
Número de núcleos de CPU que se van a asignar para este servicio web. Puede ser un decimal Valor predeterminado: None
|
|
memory_gb
|
Cantidad de memoria (en GB) que se va a asignar para este servicio web. Puede ser un decimal Valor predeterminado: None
|
|
enable_app_insights
|
Si se va a habilitar o no el registro de Application Insights para este servicio web Valor predeterminado: None
|
|
scoring_timeout_ms
|
Tiempo de espera para exigir llamadas de puntuación a este servicio web Valor predeterminado: None
|
|
replica_max_concurrent_requests
|
Número de solicitudes simultáneas máximas por réplica que permiten este servicio web. Valor predeterminado: None
|
|
max_request_wait_time
|
La cantidad máxima de tiempo que una solicitud permanecerá en la cola (en milisegundos) antes de devolver un error 503. Valor predeterminado: None
|
|
num_replicas
|
Número de contenedores que se van a asignar para este servicio web Valor predeterminado: None
|
|
tags
|
Diccionario de etiquetas de valor de clave para proporcionar este servicio web. Reemplazará las etiquetas existentes. Valor predeterminado: None
|
|
properties
|
Diccionario de propiedades de valor clave que se van a agregar al diccionario de propiedades existentes Valor predeterminado: None
|
|
description
|
Descripción para proporcionar este servicio web Valor predeterminado: None
|
|
models
|
Lista de objetos Model que se van a empaquetar con el servicio actualizado Valor predeterminado: None
|
|
inference_config
|
Objeto InferenceConfig usado para proporcionar las propiedades de implementación del modelo necesarias. Valor predeterminado: None
|
|
gpu_cores
|
Número de núcleos de GPU que se van a asignar para este servicio web Valor predeterminado: None
|
|
period_seconds
|
Frecuencia (en segundos) en que se ejecutará el sondeo de ejecución. El valor predeterminado es de 10 segundos. El valor mínimo es 1. Valor predeterminado: None
|
|
initial_delay_seconds
|
Número de segundos después de que se haya iniciado el contenedor antes de iniciar los sondeos de ejecución. Valor predeterminado: None
|
|
timeout_seconds
|
Número de segundos después del cual se agota el tiempo de espera del sondeo de ejecución. El valor predeterminado es 1 segundo. El valor mínimo es 1. Valor predeterminado: None
|
|
success_threshold
|
Número mínimo de valores correctos consecutivos para que el sondeo de ejecución se considere correcto después de que se haya producido un error. De manera predeterminada, su valor es 1. El valor mínimo es 1. Valor predeterminado: None
|
|
failure_threshold
|
Cuando se inicie un pod y se produzca un error en el sondeo de ejecución, Kubernetes probará las veces especificadas en failureThreshold antes de abandonarlo. El valor predeterminado es 3. El valor mínimo es 1. Valor predeterminado: None
|
|
namespace
|
Espacio de nombres de Kubernetes en el que se va a implementar este servicio web: hasta 63 caracteres alfanuméricos en minúsculas ('a'-'z', '0'-'9') y guiones ('-'). Los caracteres primero y último no pueden ser guiones. Valor predeterminado: None
|
|
token_auth_enabled
|
Si se va a habilitar o no la autenticación del token para este servicio web. Si esto está habilitado, los usuarios pueden acceder a este servicio web mediante la captura del token de acceso mediante sus credenciales de Azure Active Directory. El valor predeterminado es False. Valor predeterminado: None
|
|
cpu_cores_limit
|
El número máximo de núcleos de CPU que puede usar este servicio web. Puede ser un decimal. Valor predeterminado: None
|
|
memory_gb_limit
|
La cantidad máxima de memoria (en GB) que este servicio web puede usar. Puede ser un decimal. Valor predeterminado: None
|
|
kwargs
Requerido
|
<xref:varies>
incluya parámetros para admitir la migración del servicio web de AKS al punto de conexión y la implementación en línea de Kubernetes. is_migration=True|False, compute_target=<destino de proceso con la extensión AzureML instalada para hospedar el punto de conexión y la implementación> en línea de Kubernetes migrados. |
Excepciones
| Tipo | Description |
|---|---|