Webservice Classe

Définit les fonctionnalités de base pour le déploiement de modèles en tant que points de terminaison de service Web dans Azure Machine Learning.

Le constructeur WebService est utilisé pour récupérer une représentation Cloud d’un objet WebService associé à l’espace de travail fourni. Retourne une instance d’une classe enfant correspondant au type spécifique de l’objet WebService récupéré. La classe WebService permet de déployer des Machine Learning des modèles à partir d’un Model Image objet ou.

Pour plus d’informations sur l’utilisation de WebService, consultez déployer des modèles avec Azure machine learning.

Héritage
abc.ABC
Webservice

Constructeur

Webservice(workspace, name)

Paramètres

workspace
Workspace

Objet de l’espace de travail contenant l’objet WebService à récupérer.

name
<xref:str>

Nom de l’objet WebService à récupérer.

Remarques

L’exemple suivant montre le modèle de déploiement recommandé dans lequel vous créez d’abord un objet de configuration avec la deploy_configuration méthode de la classe enfant de WebService (dans ce cas AksWebservice ), puis utilisez la configuration avec la deploy méthode de la Model classe.


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

L’exemple complet est disponible dans https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb

L’exemple suivant montre comment rechercher un existant AciWebservice dans un espace de travail et le supprimer s’il existe afin que le nom puisse être réutilisé.


   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)

L’exemple complet est disponible dans https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/deploy-to-cloud/model-register-and-deploy.ipynb

Il existe plusieurs façons de déployer un modèle en tant que service Web, notamment avec :

  • deploy méthode de Model pour les modèles déjà inscrits dans l’espace de travail.

  • deploy_from_image méthode de Webservice pour les images déjà créées à partir d’un modèle.

  • deploy_from_model méthode de Webservice pour les modèles déjà inscrits dans l’espace de travail. Cette méthode crée une image.

  • deploy méthode du Webservice , qui inscrit un modèle et crée une image.

Pour plus d’informations sur l’utilisation des WebServices, consultez.

La section variables répertorie les attributs d’une représentation locale de l’objet WebService Cloud. Ces variables doivent être considérées comme étant en lecture seule. La modification de leurs valeurs ne sera pas reflétée dans l’objet Cloud correspondant.

Variables

auth_enabled
<xref:bool>

Indique si l’authentification du service Web est activée ou non.

compute_type
<xref:str>

Le type de calcul sur lequel le service Web est déployé.

created_time
<xref:datetime.datetime>

Lors de la création du service Web.

azureml.core.Webservice.description

Description de l’objet WebService.

azureml.core.Webservice.tags

Dictionnaire de balises pour l’objet WebService.

azureml.core.Webservice.name

Nom du service Web.

azureml.core.Webservice.properties

Dictionnaire des propriétés de valeur de clé pour le service Web. Ces propriétés ne peuvent pas être modifiées après le déploiement, toutefois, de nouvelles paires clé/valeur peuvent être ajoutées.

created_by
<xref:str>

Utilisateur qui a créé le service Web.

error
<xref:str>

En cas d’échec du déploiement du service Web, le message d’erreur indique la raison de l’échec.

azureml.core.Webservice.state

État actuel du service Web.

updated_time
<xref:datetime.datetime>

La dernière fois que le service Web a été mis à jour.

azureml.core.Webservice.workspace

Espace de travail Azure Machine Learning qui contient ce service Web.

token_auth_enabled
<xref:bool>

Indique si le service Web a activé l’authentification de jeton.

Méthodes

check_for_existing_webservice

Vérifiez que le service Web existe.

delete

Supprimer ce service Web de l’espace de travail qui lui est associé.

Cet appel de fonction n’est pas asynchrone. L’appel s’exécute jusqu’à ce que la ressource soit supprimée. Un WebserviceException est déclenché en cas de problème lors de la suppression du modèle du Service gestion des modèles.

deploy

Déployez un service Web à partir de zéro ou plusieurs Model objets.

Cette fonction inscrira tous les fichiers de modèles fournis et créera une image dans le processus, tous associés au spécifié Workspace . Utilisez cette fonction lorsque vous disposez d’un répertoire de modèles à déployer qui n’ont pas été enregistrés précédemment.

Le service Web résultant est un point de terminaison en temps réel qui peut être utilisé pour les demandes d’inférence. Pour plus d’informations, consultez consommer un modèle déployé en tant que service Web.

deploy_from_image

Déployez un service Web à partir d’un Image objet.

Utilisez cette fonction si vous disposez déjà d’un objet image créé pour un modèle.

Le service Web résultant est un point de terminaison en temps réel qui peut être utilisé pour les demandes d’inférence. Pour plus d’informations, consultez consommer un modèle déployé en tant que service Web.

deploy_from_model

Déployez un service Web à partir de zéro ou plusieurs Model objets.

Cette fonction est similaire à deploy , mais n’inscrit pas les modèles. Utilisez cette fonction si vous avez des objets de modèle déjà inscrits. Cette opération crée une image dans le processus, associée à l’espace de travail spécifié.

Le service Web résultant est un point de terminaison en temps réel qui peut être utilisé pour les demandes d’inférence. Pour plus d’informations, consultez consommer un modèle déployé en tant que service Web.

deploy_local_from_model

Générez et déployez un LocalWebservice à des fins de test.

Requiert l’installation et la configuration de Dockr.

deserialize

Convertit un objet JSON de réponse de service Gestion des modèles en objet WebService.

Échoue si l’espace de travail fourni n’est pas l’espace de travail dans lequel le service Web est inscrit.

get_keys

Récupérez les clés d’authentification pour ce service Web.

get_logs

Récupérez les journaux de ce service Web.

get_token

Récupère le jeton d’authentification pour ce service Web, limité à l’utilisateur actuel.

list

Répertorie les WebServices associés au correspondant Workspace .

Les résultats retournés peuvent être filtrés à l’aide de paramètres.

regen_key

Régénérez l’une des clés du service Web, à savoir la clé « primaire » ou « secondaire ».

Une WebserviceException est levée si key n’est pas spécifié ou n’est pas « Primary » ou « Secondary ».

run

Appelez ce service Web avec l’entrée fournie.

Méthode abstraite implémentée par les classes enfants de Webservice .

serialize

Convertissez cet objet WebService en dictionnaire JSON sérialisé.

Utilisez deserialize pour revenir en arrière dans un objet WebService.

update

Mettez à jour les paramètres WebService.

Il s’agit d’une méthode abstraite implémentée par les classes enfants de Webservice . Les paramètres possibles à mettre à jour varient en fonction du type d’enfant WebService. Par exemple, pour Azure Container Instances WebServices, consultez update pour connaître les paramètres spécifiques.

update_deployment_state

Actualisez l’état actuel de l’objet en mémoire.

Effectuez une mise à jour sur place des propriétés de l’objet en fonction de l’état actuel de l’objet Cloud correspondant. Surtout utile pour l’interrogation manuelle de l’état de création.

wait_for_deployment

Interroger automatiquement le déploiement de service Web en cours d’exécution.

Attendez que le service Web atteigne un état terminal. Lève une exception WebserviceException si elle atteint un état terminal non réussi ou dépasse le délai d’attente fourni.

check_for_existing_webservice

Vérifiez que le service Web existe.

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

Paramètres

workspace
Workspace
name
<xref:str>
overwrite
<xref:bool>
valeur par défaut: False
request_func
<xref:function>
valeur par défaut: None

fonction pour demander au service de vérifier si le nom du service existe

check_func
<xref:function>
valeur par défaut: None

fonction permettant de vérifier le contenu de la réponse de request_func

Exceptions

delete

Supprimer ce service Web de l’espace de travail qui lui est associé.

Cet appel de fonction n’est pas asynchrone. L’appel s’exécute jusqu’à ce que la ressource soit supprimée. Un WebserviceException est déclenché en cas de problème lors de la suppression du modèle du Service gestion des modèles.

delete()

Exceptions

deploy

Déployez un service Web à partir de zéro ou plusieurs Model objets.

Cette fonction inscrira tous les fichiers de modèles fournis et créera une image dans le processus, tous associés au spécifié Workspace . Utilisez cette fonction lorsque vous disposez d’un répertoire de modèles à déployer qui n’ont pas été enregistrés précédemment.

Le service Web résultant est un point de terminaison en temps réel qui peut être utilisé pour les demandes d’inférence. Pour plus d’informations, consultez consommer un modèle déployé en tant que service Web.

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

Paramètres

workspace
Workspace

Objet Workspace avec lequel associer le service Web.

name
<xref:str>

Nom à attribuer au service déployé. Doit être unique dans l’espace de travail, comporter uniquement des lettres minuscules, des chiffres ou des tirets, commencer par une lettre et comporter entre 3 et 32 caractères.

model_paths
list[<xref:str>]

Liste de chemins d’accès sur disque pour le modèle de fichiers ou de dossiers. Peut être une liste vide.

image_config
ImageConfig

Objet ImageConfig utilisé pour déterminer les propriétés d’image requises.

deployment_config
WebserviceDeploymentConfiguration
valeur par défaut: None

WebserviceDeploymentConfiguration utilisé pour configurer le service Web. Si aucun objet de configuration n’est fourni, un objet de configuration vide sera utilisé en fonction de la cible souhaitée.

deployment_target
ComputeTarget
valeur par défaut: None

Sur lequel ComputeTarget déployer le service Web. Comme Azure Container Instances n’est associé à aucun ComputeTarget , laissez ce paramètre sur aucun pour le déployer sur Azure Container instances.

overwrite
<xref:bool>
valeur par défaut: False

Remplacer le service existant si le service portant le nom existe déjà.

Retours

Objet WebService correspondant au service Web déployé.

Type de retour

Exceptions

deploy_from_image

Déployez un service Web à partir d’un Image objet.

Utilisez cette fonction si vous disposez déjà d’un objet image créé pour un modèle.

Le service Web résultant est un point de terminaison en temps réel qui peut être utilisé pour les demandes d’inférence. Pour plus d’informations, consultez consommer un modèle déployé en tant que service Web.

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

Paramètres

workspace
Workspace

Objet Workspace avec lequel associer le service Web.

name
<xref:str>

Nom à attribuer au service déployé. Doit être unique dans l’espace de travail, comporter uniquement des lettres minuscules, des chiffres ou des tirets, commencer par une lettre et comporter entre 3 et 32 caractères.

image
Image

ImageObjet à déployer.

deployment_config
WebserviceDeploymentConfiguration
valeur par défaut: None

WebserviceDeploymentConfiguration utilisé pour configurer le service Web. Si aucun objet de configuration n’est fourni, un objet de configuration vide sera utilisé en fonction de la cible souhaitée.

deployment_target
ComputeTarget
valeur par défaut: None

Sur lequel ComputeTarget déployer le service Web. Comme Azure Container Instances n’est associé à aucun ComputeTarget , laissez ce paramètre sur aucun pour le déployer sur Azure Container instances.

overwrite
<xref:bool>
valeur par défaut: False

Remplacer le service existant si le service portant le nom existe déjà.

Retours

Objet WebService correspondant au service Web déployé.

Type de retour

Exceptions

deploy_from_model

Déployez un service Web à partir de zéro ou plusieurs Model objets.

Cette fonction est similaire à deploy , mais n’inscrit pas les modèles. Utilisez cette fonction si vous avez des objets de modèle déjà inscrits. Cette opération crée une image dans le processus, associée à l’espace de travail spécifié.

Le service Web résultant est un point de terminaison en temps réel qui peut être utilisé pour les demandes d’inférence. Pour plus d’informations, consultez consommer un modèle déployé en tant que service Web.

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

Paramètres

workspace
Workspace

Objet Workspace avec lequel associer le service Web.

name
<xref:str>

Nom à attribuer au service déployé. Doit être unique dans l’espace de travail, comporter uniquement des lettres minuscules, des chiffres ou des tirets, commencer par une lettre et comporter entre 3 et 32 caractères.

models
list[Model]

Liste d’objets de modèle. Peut être une liste vide.

image_config
ImageConfig

Objet ImageConfig utilisé pour déterminer les propriétés d’image requises.

deployment_config
WebserviceDeploymentConfiguration
valeur par défaut: None

WebserviceDeploymentConfiguration utilisé pour configurer le service Web. Si aucun objet de configuration n’est fourni, un objet de configuration vide sera utilisé en fonction de la cible souhaitée.

deployment_target
ComputeTarget
valeur par défaut: None

Sur lequel ComputeTarget déployer le service Web. Comme ACI n’est associé à aucun ComputeTarget , laissez ce paramètre sur aucun pour le déployer sur ACI.

overwrite
<xref:bool>
valeur par défaut: False

Remplacer le service existant si le service portant le nom existe déjà.

Retours

Objet WebService correspondant au service Web déployé.

Type de retour

Exceptions

deploy_local_from_model

Générez et déployez un LocalWebservice à des fins de test.

Requiert l’installation et la configuration de Dockr.

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

Paramètres

workspace
Workspace

Objet de l’espace de travail auquel associer le service Web.

name
<xref:str>

Nom à attribuer au service déployé. Doit être unique sur l’ordinateur local.

models
list[Model]

Liste d’objets de modèle. Peut être une liste vide.

image_config
ImageConfig

Objet ImageConfig utilisé pour déterminer les propriétés d’image de service requises.

deployment_config
LocalWebserviceDeploymentConfiguration
valeur par défaut: None

LocalWebserviceDeploymentConfiguration utilisé pour configurer le service Web. Si aucun objet de configuration n’est fourni, un objet de configuration vide sera utilisé.

wait
<xref:bool>
valeur par défaut: False

Indique s’il faut attendre que le conteneur d’ancrage de LocalWebservice signale comme sain. Lève une exception si le conteneur se bloque. La valeur par défaut est False.

Type de retour

Exceptions

deserialize

Convertit un objet JSON de réponse de service Gestion des modèles en objet WebService.

Échoue si l’espace de travail fourni n’est pas l’espace de travail dans lequel le service Web est inscrit.

deserialize(workspace, webservice_payload)

Paramètres

cls

Indique qu’il s’agit d’une méthode de classe.

workspace
Workspace

Objet de l’espace de travail sous lequel le service Web est inscrit.

webservice_payload
<xref:dict>

Objet JSON à convertir en objet WebService.

Retours

Représentation WebService de l’objet JSON fourni.

Type de retour

Exceptions

get_keys

Récupérez les clés d’authentification pour ce service Web.

get_keys()

Retours

Clés d’authentification pour ce service Web.

Type de retour

(<xref:str>, <xref:str>)

Exceptions

get_logs

Récupérez les journaux de ce service Web.

get_logs(num_lines=5000, init=False)

Paramètres

num_lines
<xref:int>
valeur par défaut: 5000

Nombre maximal de lignes de journal à récupérer.

init
<xref:bool>
valeur par défaut: False

Obtient les journaux du conteneur init

Retours

Journaux pour ce service Web.

Type de retour

<xref:str>

Exceptions

get_token

Récupère le jeton d’authentification pour ce service Web, limité à l’utilisateur actuel.

get_token()

Retours

Le jeton d’authentification pour ce service Web et le moment où il doit être actualisé après.

Type de retour

<xref:str>, <xref:datetime>

Exceptions

list

Répertorie les WebServices associés au correspondant Workspace .

Les résultats retournés peuvent être filtrés à l’aide de paramètres.

list(workspace, compute_type=None, image_name=None, image_id=None, model_name=None, model_id=None, tags=None, properties=None, image_digest=None)

Paramètres

workspace
Workspace

Objet Workspace dans lequel répertorier les WebServices.

compute_type
<xref:str>
valeur par défaut: None

Filtre pour répertorier uniquement les types de service Web spécifiques. Les options sont « ACI », « AKS ».

image_name
<xref:str>
valeur par défaut: None

Filtrez la liste pour inclure uniquement les services WebService déployés avec le nom d’image spécifique.

image_id
<xref:str>
valeur par défaut: None

Filtrez la liste pour inclure uniquement les services WebService déployés avec l’ID d’image spécifique.

model_name
<xref:str>
valeur par défaut: None

Filtrez la liste pour inclure uniquement les services WebService déployés avec le nom de modèle spécifique.

model_id
<xref:str>
valeur par défaut: None

Filtrez la liste pour inclure uniquement les services WebService déployés avec l’ID de modèle spécifique.

tags
list
valeur par défaut: None

Filtrez en fonction de la liste fournie, par « clé » ou « [clé, valeur] ». Exemple : [« clé », [« Key2 », « valeur Key2 »]]

properties
list
valeur par défaut: None

Filtrez en fonction de la liste fournie, par « clé » ou « [clé, valeur] ». Exemple : [« clé », [« Key2 », « valeur Key2 »]]

image_digest
<xref:str>
valeur par défaut: None

Filtrez la liste pour inclure uniquement les services WebService déployés avec le condensé d’image spécifique.

Retours

Liste filtrée de WebServices dans l’espace de travail fourni.

Type de retour

Exceptions

regen_key

Régénérez l’une des clés du service Web, à savoir la clé « primaire » ou « secondaire ».

Une WebserviceException est levée si key n’est pas spécifié ou n’est pas « Primary » ou « Secondary ».

regen_key(key, set_key=None)

Paramètres

key
<xref:str>

Clé à régénérer. Les options sont « Primary » ou « Secondary ».

set_key
<xref:str>
valeur par défaut: None

Valeur spécifiée par l’utilisateur qui autorise la spécification manuelle de la valeur de la clé.

Exceptions

run

Appelez ce service Web avec l’entrée fournie.

Méthode abstraite implémentée par les classes enfants de Webservice .

run(input)

Paramètres

input
<xref:varies>

Données d’entrée avec lesquelles appeler le service Web. Il s’agit des données que votre modèle de Machine Learning attend comme entrée pour exécuter des prédictions.

Retours

Résultat de l’appel du service Web. Cela renverra des prédictions exécutées à partir de votre modèle de Machine Learning.

Type de retour

<xref:dict>

Exceptions

serialize

Convertissez cet objet WebService en dictionnaire JSON sérialisé.

Utilisez deserialize pour revenir en arrière dans un objet WebService.

serialize()

Retours

Représentation JSON de ce service Web.

Type de retour

<xref:dict>

Exceptions

update

Mettez à jour les paramètres WebService.

Il s’agit d’une méthode abstraite implémentée par les classes enfants de Webservice . Les paramètres possibles à mettre à jour varient en fonction du type d’enfant WebService. Par exemple, pour Azure Container Instances WebServices, consultez update pour connaître les paramètres spécifiques.

update(*args)

Paramètres

args
<xref:varies>

Valeurs à mettre à jour.

Exceptions

update_deployment_state

Actualisez l’état actuel de l’objet en mémoire.

Effectuez une mise à jour sur place des propriétés de l’objet en fonction de l’état actuel de l’objet Cloud correspondant. Surtout utile pour l’interrogation manuelle de l’état de création.

update_deployment_state()

Exceptions

wait_for_deployment

Interroger automatiquement le déploiement de service Web en cours d’exécution.

Attendez que le service Web atteigne un état terminal. Lève une exception WebserviceException si elle atteint un état terminal non réussi ou dépasse le délai d’attente fourni.

wait_for_deployment(show_output=False, timeout_sec=None)

Paramètres

show_output
<xref:bool>
valeur par défaut: False

Indique s’il faut imprimer une sortie plus détaillée.

timeout_sec
<xref:float>
valeur par défaut: None

Lève une exception si le déploiement dépasse le délai d’attente donné.

Exceptions