Compartir a través de


Webservice Clase

Define la funcionalidad base para implementar modelos como puntos de conexión de servicio web en Azure Machine Learning.

El constructor de servicios web se usa para recuperar una representación en la nube de un objeto de servicio web asociado al área de trabajo proporcionada. Devuelve una instancia de una clase secundaria correspondiente al tipo específico del objeto Webservice recuperado. La clase Webservice permite implementar modelos de aprendizaje automático desde un Model objeto o Image .

Para más información sobre cómo trabajar con el servicio web, consulte Implementación de modelos con Azure Machine Learning.

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

Webservice(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
str

Nombre del objeto web que se va a recuperar.

workspace
Requerido

Objeto de área de trabajo que contiene el objeto Webservice que se va a recuperar.

name
Requerido
str

Nombre del objeto web que se va a recuperar.

Comentarios

En el ejemplo siguiente se muestra el patrón de implementación recomendado donde primero se crea un objeto de configuración con el deploy_configuration método de la clase secundaria de Webservice (en este caso AksWebservice) y, a continuación, se usa la configuración con el deploy método de la Model clase .


   # 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)

En el ejemplo siguiente se muestra cómo buscar un existente AciWebservice en un área de trabajo y eliminarlo si existe para que se pueda reutilizar el nombre.


   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)

Hay varias maneras de implementar un modelo como un servicio web, incluido con:

  • deploy método de Model para los modelos que ya están registrados en el área de trabajo.

  • deploy_from_image método de para imágenes ya creadas a partir de Webservice un modelo.

  • deploy_from_model método de para los modelos ya registrados en el área de Webservice trabajo. Este método creará una imagen.

  • deploy método de Webservice, que registrará un modelo y creará una imagen.

Para obtener información sobre cómo trabajar con servicios web, consulte

En la sección Variables se enumeran los atributos de una representación local del objeto webservice 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
auth_enabled

Indica si el servicio web tiene habilitada la autenticación.

compute_type
str

En qué tipo de proceso se implementa el servicio web.

created_time

Cuando se creó el servicio web.

azureml.core.Webservice.description

Descripción del objeto Webservice.

azureml.core.Webservice.tags

Diccionario de etiquetas para el objeto Webservice.

azureml.core.Webservice.name

Nombre del servicio web.

azureml.core.Webservice.properties

Diccionario de propiedades de valor de clave para el servicio web. Estas propiedades no se pueden cambiar después de la implementación, pero se pueden agregar nuevos pares de valor de clave.

created_by
str

Usuario que creó el servicio web.

error
str

Si el servicio web no se pudo implementar, contendrá el mensaje de error por el que se produjo un error.

azureml.core.Webservice.state

Estado actual del servicio web.

updated_time

La última vez que se actualizó el servicio web.

azureml.core.Webservice.workspace

Área de trabajo de Azure Machine Learning que contiene este servicio web.

token_auth_enabled

Indica si el servicio web tiene habilitada la autenticación de token.

Métodos

check_for_existing_webservice

Compruebe que existe un servicio web.

delete

Elimine este servicio web de su área de trabajo asociada.

Esta llamada de función no es asincrónica. La llamada se ejecuta hasta que se elimina el recurso. WebserviceException Se genera una excepción si hay un problema al eliminar el modelo del servicio de administración de modelos.

deploy

Implemente un servicio web desde cero o más Model objetos.

Esta función registrará los archivos de modelos proporcionados y creará una imagen en el proceso, todas asociadas con el especificado Workspace. Use esta función cuando tenga un directorio de modelos para implementar que no se hayan registrado previamente.

El servicio web resultante es un punto de conexión en tiempo real que se puede usar para las solicitudes de inferencia. Para obtener más información, consulte Consumo de un modelo implementado como servicio web.

deploy_from_image

Implemente un servicio web desde un Image objeto .

Use esta función si ya tiene un objeto Image creado para un modelo.

El servicio web resultante es un punto de conexión en tiempo real que se puede usar para las solicitudes de inferencia. Para obtener más información, consulte Consumo de un modelo implementado como servicio web.

deploy_from_model

Implemente un servicio web desde cero o más Model objetos.

Esta función es similar a deploy, pero no registra los modelos. Use esta función si tiene objetos de modelo que ya están registrados. Esto creará una imagen en el proceso, asociada al área de trabajo especificada.

El servicio web resultante es un punto de conexión en tiempo real que se puede usar para las solicitudes de inferencia. Para obtener más información, consulte Consumo de un modelo implementado como servicio web.

deploy_local_from_model

Compile e implemente un LocalWebservice para realizar pruebas.

Requiere que Docker esté instalado y configurado.

deserialize

Convierta un objeto JSON de respuesta del Servicio de administración de modelos en un objeto Webservice.

Se producirá un error si el área de trabajo proporcionada no es el área de trabajo en la que está registrado el servicio web.

get_keys

Recupere las claves de autenticación de este servicio web.

get_logs

Recupere los registros de este servicio web.

get_token

Recupere el token de autenticación de este servicio web, con ámbito para el usuario actual.

list

Enumere los servicios web asociados con el objeto correspondiente Workspace.

Los resultados devueltos se pueden filtrar mediante parámetros.

regen_key

Vuelva a generar una de las claves del servicio web, ya sea la clave "Principal" o "Secundaria".

WebserviceException Se genera un si key no se especifica o no es "Principal" o "Secundario".

run

Llame a este servicio web con la entrada proporcionada.

Método abstracto implementado por clases secundarias de Webservice.

serialize

Convierta este objeto Webservice en un diccionario serializado JSON.

Use deserialize para volver a convertir en un objeto Webservice.

update

Actualice los parámetros del servicio web.

Se trata de un método abstracto implementado por clases secundarias de Webservice. Los parámetros posibles para actualizar varían en función del tipo secundario webservice. Por ejemplo, para los servicios web de Azure Container Instances, consulte update para obtener parámetros específicos.

update_deployment_state

Actualice el estado actual del objeto en memoria.

Realice una actualización local de las propiedades del objeto en función del estado actual del objeto en la nube correspondiente. Principalmente útil para el sondeo manual del estado de creación.

wait_for_deployment

Sondee automáticamente en la implementación de servicios web en ejecución.

Espere a que el servicio web llegue a un estado de terminal. Producirá un WebserviceException si alcanza un estado terminal no correcto o supera el tiempo de espera proporcionado.

check_for_existing_webservice

Compruebe que existe un servicio web.

static check_for_existing_webservice(workspace, name, overwrite=False, request_func=None, check_func=None)

Parámetros

Nombre Description
workspace
Requerido
name
Requerido
str
overwrite
Valor predeterminado: False
request_func
<xref:function>

function to request service to check if service name exists

Valor predeterminado: None
check_func
<xref:function>

función para comprobar el contenido de la respuesta de request_func

Valor predeterminado: None

Excepciones

Tipo Description

delete

Elimine este servicio web de su área de trabajo asociada.

Esta llamada de función no es asincrónica. La llamada se ejecuta hasta que se elimina el recurso. WebserviceException Se genera una excepción si hay un problema al eliminar el modelo del servicio de administración de modelos.

delete()

Excepciones

Tipo Description

deploy

Implemente un servicio web desde cero o más Model objetos.

Esta función registrará los archivos de modelos proporcionados y creará una imagen en el proceso, todas asociadas con el especificado Workspace. Use esta función cuando tenga un directorio de modelos para implementar que no se hayan registrado previamente.

El servicio web resultante es un punto de conexión en tiempo real que se puede usar para las solicitudes de inferencia. Para obtener más información, consulte Consumo de un modelo implementado como servicio web.

static deploy(workspace, name, model_paths, image_config, deployment_config=None, deployment_target=None, overwrite=False)

Parámetros

Nombre Description
workspace
Requerido

Objeto Workspace al que se va a asociar el servicio web.

name
Requerido
str

Nombre que se va a asignar al servicio implementado. Debe ser único para el área de trabajo, solo consta de letras minúsculas, números o guiones, comenzar con una letra y tener entre 3 y 32 caracteres.

model_paths
Requerido

Lista de rutas de acceso en disco a archivos o carpetas de modelos. Puede ser una lista vacía.

image_config
Requerido

Objeto ImageConfig usado para determinar las propiedades de imagen necesarias.

deployment_config

WebserviceDeploymentConfiguration usado para configurar el servicio web. Si no se proporciona uno, se usará un objeto de configuración vacío en función del destino deseado.

Valor predeterminado: None
deployment_target

ComputeTarget que se va a implementar el servicio web en. Como Azure Container Instances no tiene asociado ComputeTarget, deje este parámetro como Ninguno para implementar en Azure Container Instances.

Valor predeterminado: None
overwrite

Sobrescriba el servicio existente si el servicio con el nombre ya existe.

Valor predeterminado: False

Devoluciones

Tipo Description

Objeto webservice correspondiente al servicio web implementado.

Excepciones

Tipo Description

deploy_from_image

Implemente un servicio web desde un Image objeto .

Use esta función si ya tiene un objeto Image creado para un modelo.

El servicio web resultante es un punto de conexión en tiempo real que se puede usar para las solicitudes de inferencia. Para obtener más información, consulte Consumo de un modelo implementado como servicio web.

static deploy_from_image(workspace, name, image, deployment_config=None, deployment_target=None, overwrite=False)

Parámetros

Nombre Description
workspace
Requerido

Objeto Workspace al que se va a asociar el servicio web.

name
Requerido
str

Nombre que se va a asignar al servicio implementado. Debe ser único para el área de trabajo, solo consta de letras minúsculas, números o guiones, comenzar con una letra y tener entre 3 y 32 caracteres.

image
Requerido

Objeto Image que se va a implementar.

deployment_config

WebserviceDeploymentConfiguration usado para configurar el servicio web. Si no se proporciona uno, se usará un objeto de configuración vacío en función del destino deseado.

Valor predeterminado: None
deployment_target

ComputeTarget que se va a implementar el servicio web en. Como Azure Container Instances no tiene asociado ComputeTarget, deje este parámetro como Ninguno para implementar en Azure Container Instances.

Valor predeterminado: None
overwrite

Sobrescriba el servicio existente si el servicio con el nombre ya existe.

Valor predeterminado: False

Devoluciones

Tipo Description

Objeto webservice correspondiente al servicio web implementado.

Excepciones

Tipo Description

deploy_from_model

Implemente un servicio web desde cero o más Model objetos.

Esta función es similar a deploy, pero no registra los modelos. Use esta función si tiene objetos de modelo que ya están registrados. Esto creará una imagen en el proceso, asociada al área de trabajo especificada.

El servicio web resultante es un punto de conexión en tiempo real que se puede usar para las solicitudes de inferencia. Para obtener más información, consulte Consumo de un modelo implementado como servicio web.

static deploy_from_model(workspace, name, models, image_config, deployment_config=None, deployment_target=None, overwrite=False)

Parámetros

Nombre Description
workspace
Requerido

Objeto Workspace al que se va a asociar el servicio web.

name
Requerido
str

Nombre que se va a asignar al servicio implementado. Debe ser único para el área de trabajo, solo consta de letras minúsculas, números o guiones, comenzar con una letra y tener entre 3 y 32 caracteres.

models
Requerido

Lista de objetos de modelo. Puede ser una lista vacía.

image_config
Requerido

Objeto ImageConfig usado para determinar las propiedades de imagen necesarias.

deployment_config

WebserviceDeploymentConfiguration usado para configurar el servicio web. Si no se proporciona uno, se usará un objeto de configuración vacío en función del destino deseado.

Valor predeterminado: None
deployment_target

ComputeTarget que se va a implementar el servicio web en. Como ACI no tiene asociado ComputeTarget, deje este parámetro como None para implementar en ACI.

Valor predeterminado: None
overwrite

Sobrescriba el servicio existente si el servicio con el nombre ya existe.

Valor predeterminado: False

Devoluciones

Tipo Description

Objeto webservice correspondiente al servicio web implementado.

Excepciones

Tipo Description

deploy_local_from_model

Compile e implemente un LocalWebservice para realizar pruebas.

Requiere que Docker esté instalado y configurado.

static deploy_local_from_model(workspace, name, models, image_config, deployment_config=None, wait=False)

Parámetros

Nombre Description
workspace
Requerido

Objeto Workspace con el que se va a asociar el servicio web.

name
Requerido
str

Nombre que se va a asignar al servicio implementado. Debe ser único en el equipo local.

models
Requerido

Lista de objetos de modelo. Puede ser una lista vacía.

image_config
Requerido

Objeto ImageConfig usado para determinar las propiedades de imagen de servicio necesarias.

deployment_config

LocalWebserviceDeploymentConfiguration usado para configurar el servicio web. Si no se proporciona uno, se usará un objeto de configuración vacío.

Valor predeterminado: None
wait

Si se espera a que el contenedor de Docker de LocalWebservice informe como correcto. Produce una excepción si el contenedor se bloquea. El valor predeterminado es False.

Valor predeterminado: False

Devoluciones

Tipo Description

Excepciones

Tipo Description

deserialize

Convierta un objeto JSON de respuesta del Servicio de administración de modelos en un objeto Webservice.

Se producirá un error si el área de trabajo proporcionada no es el área de trabajo en la que está registrado el servicio web.

deserialize(workspace, webservice_payload)

Parámetros

Nombre Description
cls
Requerido

Indica que se trata de un método de clase.

workspace
Requerido

Objeto de área de trabajo en el que está registrado el servicio web.

webservice_payload
Requerido

Objeto JSON que se va a convertir en un objeto Webservice.

Devoluciones

Tipo Description

Representación del servicio web del objeto JSON proporcionado.

get_keys

Recupere las claves de autenticación de este servicio web.

get_keys()

Devoluciones

Tipo Description
(str, str)

Claves de autenticación para este servicio web.

Excepciones

Tipo Description

get_logs

Recupere los registros de este servicio web.

get_logs(num_lines=5000, init=False)

Parámetros

Nombre Description
num_lines
int

Número máximo de líneas de registro que se van a recuperar.

Valor predeterminado: 5000
init

Obtención de registros del contenedor de inicialización

Valor predeterminado: False

Devoluciones

Tipo Description
str

Los registros de este servicio web.

Excepciones

Tipo Description

get_token

Recupere el token de autenticación de este servicio web, con ámbito para el usuario actual.

get_token()

Devoluciones

Tipo Description

Token de autenticación para este servicio web y cuándo se debe actualizar después.

Excepciones

Tipo Description

list

Enumere los servicios web asociados con el objeto correspondiente Workspace.

Los resultados devueltos se pueden filtrar mediante parámetros.

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)

Parámetros

Nombre Description
workspace
Requerido

Objeto Workspace en el que se van a enumerar los servicios web.

compute_type
str

Filtre para enumerar solo tipos específicos de servicios web. Las opciones son "ACI", "AKS".

Valor predeterminado: None
image_name
str

Lista de filtros para incluir solo servicios web implementados con el nombre de imagen específico.

Valor predeterminado: None
image_id
str

Lista de filtros para incluir solo servicios web implementados con el identificador de imagen específico.

Valor predeterminado: None
model_name
str

Lista de filtros para incluir solo servicios web implementados con el nombre de modelo específico.

Valor predeterminado: None
model_id
str

Lista de filtros para incluir solo servicios web implementados con el identificador de modelo específico.

Valor predeterminado: None
tags

Filtre en función de la lista proporcionada por "key" o "[key, value]". Por ejemplo, ['key', ['key2', 'key2 value']]

Valor predeterminado: None
properties

Filtre en función de la lista proporcionada por "key" o "[key, value]". Por ejemplo, ['key', ['key2', 'key2 value']]

Valor predeterminado: None
image_digest
str

Lista de filtros para incluir solo servicios web implementados con el resumen de imagen específico.

Valor predeterminado: None

Devoluciones

Tipo Description

Lista filtrada de servicios web en el área de trabajo proporcionada.

Excepciones

Tipo Description

regen_key

Vuelva a generar una de las claves del servicio web, ya sea la clave "Principal" o "Secundaria".

WebserviceException Se genera un si key no se especifica o no es "Principal" o "Secundario".

regen_key(key, set_key=None)

Parámetros

Nombre Description
key
Requerido
str

Clave que se va a regenerar. Las opciones son "Principal" o "Secundaria".

set_key
str

Valor especificado por el usuario que permite la especificación manual del valor de la clave

Valor predeterminado: None

Excepciones

Tipo Description

run

Llame a este servicio web con la entrada proporcionada.

Método abstracto implementado por clases secundarias de Webservice.

abstract run(input)

Parámetros

Nombre Description
input
Requerido
<xref:varies>

Datos de entrada con los que llamar al servicio web. Estos son los datos que espera el modelo de machine Learning como entrada para ejecutar predicciones.

Devoluciones

Tipo Description

Resultado de llamar al servicio web. Esto devolverá las predicciones que se ejecutan desde el modelo de aprendizaje automático.

Excepciones

Tipo Description

serialize

Convierta este objeto Webservice en un diccionario serializado JSON.

Use deserialize para volver a convertir en un objeto Webservice.

serialize()

Devoluciones

Tipo Description

Representación JSON de este servicio web.

update

Actualice los parámetros del servicio web.

Se trata de un método abstracto implementado por clases secundarias de Webservice. Los parámetros posibles para actualizar varían en función del tipo secundario webservice. Por ejemplo, para los servicios web de Azure Container Instances, consulte update para obtener parámetros específicos.

abstract update(*args)

Parámetros

Nombre Description
args
Requerido
<xref:varies>

Valores que se van a actualizar.

Excepciones

Tipo Description

update_deployment_state

Actualice el estado actual del objeto en memoria.

Realice una actualización local de las propiedades del objeto en función del estado actual del objeto en la nube correspondiente. Principalmente útil para el sondeo manual del estado de creación.

update_deployment_state()

wait_for_deployment

Sondee automáticamente en la implementación de servicios web en ejecución.

Espere a que el servicio web llegue a un estado de terminal. Producirá un WebserviceException si alcanza un estado terminal no correcto o supera el tiempo de espera proporcionado.

wait_for_deployment(show_output=False, timeout_sec=None)

Parámetros

Nombre Description
show_output

Indica si se va a imprimir una salida más detallada.

Valor predeterminado: False
timeout_sec

Genere una excepción si la implementación supera el tiempo de espera especificado.

Valor predeterminado: None

Excepciones

Tipo Description