AciWebservice Classe

Représente un modèle Machine Learning déployé en tant que point de terminaison de service web sur Azure Container Instances.

Un service déployé est créé à partir d’un modèle, d’un script et des fichiers associés. Le service web résultant est un point de terminaison HTTP à charge équilibrée avec une API REST. Vous pouvez envoyer des données à cette API et recevoir la prédiction retournée par le modèle.

Pour plus d’informations, consultez Déployer un modèle dans Azure Container Instances.

Initialisez le instance webservice.

Le constructeur Webservice récupère une représentation cloud d’un objet Webservice associé à l’espace de travail fourni. Il retourne une instance d’une classe enfant correspondant au type spécifique de l’objet Webservice récupéré.

Héritage
AciWebservice

Constructeur

AciWebservice(workspace, name)

Paramètres

workspace
Workspace
Obligatoire

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

name
str
Obligatoire

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

Remarques

Le modèle de déploiement recommandé consiste à créer un objet de configuration de déploiement avec la méthode deploy_configuration, puis à l’utiliser avec la méthode deploy de la classe Model, comme indiqué ci-dessous.


   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)

Il existe plusieurs façons de déployer un modèle en tant que service web, notamment avec les méthodes suivantes :

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

  • Méthode deploy_from_image de Webservice.

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

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

Pour plus d’informations sur l’utilisation des services web, consultez

La section Variables liste les attributs d’une représentation locale de l’objet cloud AciWebservice. Ces variables doivent être considérées comme étant en lecture seule. Le changement de leurs valeurs n’est pas reflété dans l’objet cloud correspondant.

Variables

enable_app_insights
bool

Indique si la journalisation AppInsights est activée pour le Webservice.

cname
str

Enregistrement CNAME du Webservice.

container_resource_requirements
ContainerResourceRequirements

Impératifs liés aux ressources d’un conteneur pour le Webservice.

encryption_properties
EncryptionProperties

Propriétés de chiffrement du Webservice.

vnet_configuration
VnetConfiguration

La configuration des propriétés de réseau virtuel du Webservice doit être créée et fournie par l’utilisateur.

azureml.core.webservice.AciWebservice.location
str

Emplacement sur lequel le Webservice est déployé.

public_ip
str

Adresse IP publique du Webservice.

azureml.core.webservice.AciWebservice.scoring_uri
str

Point de terminaison de scoring du Webservice

ssl_enabled
bool

Indique si SSL est activé ou non pour le Webservice

public_fqdn
str

FQDN public du Webservice

environment
Environment

Objet Environment utilisé pour créer le Webservice

azureml.core.webservice.AciWebservice.models
list[Model]

Liste des modèles déployés sur le Webservice

azureml.core.webservice.AciWebservice.swagger_uri
str

Point de terminaison Swagger du Webservice

Méthodes

add_properties

Ajoutez des paires clé-valeur au dictionnaire de propriétés de ce Webservice.

add_tags

Ajoutez des paires clé-valeur au dictionnaire d’étiquettes de ce Webservice.

deploy_configuration

Crée un objet de configuration pour le déploiement d’un AciWebservice.

get_token

Récupère le jeton d’authentification de ce service web, limité à l’utilisateur actif.

Notes

Non implémenté.

remove_tags

Supprime les clés spécifiées du dictionnaire d’étiquettes de ce Webservice.

run

Appelle ce Webservice avec l’entrée fournie.

serialize

Convertit ce Webservice en dictionnaire JSON sérialisé.

update

Met à jour le Webservice avec les propriétés fournies.

Les valeurs pour lesquelles None est spécifié restent inchangées dans ce Webservice.

add_properties

Ajoutez des paires clé-valeur au dictionnaire de propriétés de ce Webservice.

add_properties(properties)

Paramètres

properties
dict[str, str]
Obligatoire

Dictionnaire de propriétés à ajouter.

add_tags

Ajoutez des paires clé-valeur au dictionnaire d’étiquettes de ce Webservice.

add_tags(tags)

Paramètres

tags
dict[str, str]
Obligatoire

Dictionnaire d’étiquettes à ajouter.

Exceptions

deploy_configuration

Crée un objet de configuration pour le déploiement d’un AciWebservice.

static deploy_configuration(cpu_cores=None, memory_gb=None, tags=None, properties=None, description=None, location=None, auth_enabled=None, ssl_enabled=None, enable_app_insights=None, ssl_cert_pem_file=None, ssl_key_pem_file=None, ssl_cname=None, dns_name_label=None, primary_key=None, secondary_key=None, collect_model_data=None, cmk_vault_base_url=None, cmk_key_name=None, cmk_key_version=None, vnet_name=None, subnet_name=None)

Paramètres

cpu_cores
float
valeur par défaut: None

Nombre de cœurs UC à allouer pour ce service Web. Peut être un nombre décimal. La valeur par défaut est 0.1

memory_gb
float
valeur par défaut: None

Quantité de mémoire (en Go) à allouer pour ce Webservice. Peut être un nombre décimal. La valeur par défaut est 0.5

tags
dict[str, str]
valeur par défaut: None

Dictionnaire des étiquettes de valeur de clé à attribuer à ce service Web.

properties
dict[str, str]
valeur par défaut: None

Dictionnaire de propriétés (clé-valeur) à fournir à ce service Web. Vous ne pouvez pas changer ces propriétés après le déploiement. Toutefois, vous pouvez ajouter de nouvelles paires clé-valeur.

description
str
valeur par défaut: None

Description à fournir à ce Webservice.

location
str
valeur par défaut: None

Région Azure dans laquelle déployer ce service web. Si elle n’est pas spécifiée, l’emplacement de l’espace de travail sera utilisé. Pour plus d’informations sur les régions disponibles, consultez Produits par région.

auth_enabled
bool
valeur par défaut: None

Indique s’il faut activer ou pas l’authentification pour ce service web. Valeur par défaut False.

ssl_enabled
bool
valeur par défaut: None

Indique s’il faut activer ou pas SSL pour ce service web. Valeur par défaut False.

enable_app_insights
bool
valeur par défaut: None

Indique s’il faut activer ou pas AppInsights pour ce service web. Valeur par défaut False.

ssl_cert_pem_file
str
valeur par défaut: None

Fichier de certificat requis si SSL est activé.

ssl_key_pem_file
str
valeur par défaut: None

Fichier de clé requis si SSL est activé.

ssl_cname
str
valeur par défaut: None

cname si SSL est activé.

dns_name_label
str
valeur par défaut: None

Étiquette du nom DNS pour le point de terminaison de scoring. En l’absence d’indication, une étiquette de nom DNS unique est générée pour le point de terminaison de scoring.

primary_key
str
valeur par défaut: None

Clé d’authentification primaire à utiliser pour ce Webservice.

secondary_key
str
valeur par défaut: None

Clé d’authentification secondaire à utiliser pour ce Webservice.

collect_model_data
bool
valeur par défaut: None

Indique s’il est nécessaire ou non d’activer la collecte de données de modèle pour le Webservice.

cmk_vault_base_url
str
valeur par défaut: None

URL de base du coffre de clés gérées par le client

cmk_key_name
str
valeur par défaut: None

nom de la clé gérée par le client.

cmk_key_version
str
valeur par défaut: None

version de la clé gérée par le client.

vnet_name
str
valeur par défaut: None

nom du réseau virtuel.

subnet_name
str
valeur par défaut: None

nom du sous-réseau au sein du réseau virtuel.

Retours

Objet de configuration à utiliser au moment du déploiement d’un objet Webservice.

Type de retour

Exceptions

get_token

Récupère le jeton d’authentification de ce service web, limité à l’utilisateur actif.

Notes

Non implémenté.

get_token()

Retours

Jeton d’authentification de ce service Web et le moment auquel il doit être actualisé après.

Type de retour

Exceptions

azureml.exceptions.NotImplementedError

remove_tags

Supprime les clés spécifiées du dictionnaire d’étiquettes de ce Webservice.

remove_tags(tags)

Paramètres

tags
list[str]
Obligatoire

Liste des clés à supprimer.

run

Appelle ce Webservice avec l’entrée fournie.

run(input_data)

Paramètres

input_data
<xref:varies>
Obligatoire

Entrée avec laquelle appeler le service Web.

Retours

Résultat de l’appel du service Web.

Type de retour

Exceptions

serialize

Convertit ce Webservice en dictionnaire JSON sérialisé.

serialize()

Retours

Représentation JSON de cet objet Webservice.

Type de retour

update

Met à jour le Webservice avec les propriétés fournies.

Les valeurs pour lesquelles None est spécifié restent inchangées dans ce Webservice.

update(image=None, tags=None, properties=None, description=None, auth_enabled=None, ssl_enabled=None, ssl_cert_pem_file=None, ssl_key_pem_file=None, ssl_cname=None, enable_app_insights=None, models=None, inference_config=None)

Paramètres

image
Image
valeur par défaut: None

Nouvelle image à déployer sur le Webservice.

tags
dict[str, str]
valeur par défaut: None

Dictionnaire des étiquettes de valeur de clé à attribuer à ce service Web. Remplace les étiquettes existantes.

properties
dict[str, str]
valeur par défaut: None

Dictionnaire de propriétés (clé-valeur) à ajouter au dictionnaire de propriétés existant.

description
str
valeur par défaut: None

Description à fournir à ce Webservice.

auth_enabled
bool
valeur par défaut: None

Active ou désactive l’authentification pour ce Webservice.

ssl_enabled
bool
valeur par défaut: None

Indique s’il faut activer ou pas SSL pour ce service web.

ssl_cert_pem_file
str
valeur par défaut: None

Fichier de certificat requis si SSL est activé.

ssl_key_pem_file
str
valeur par défaut: None

Fichier de clé requis si SSL est activé.

ssl_cname
str
valeur par défaut: None

cname si SSL est activé.

enable_app_insights
bool
valeur par défaut: None

Indique s’il faut activer ou pas AppInsights pour ce service web.

models
list[Model]
valeur par défaut: None

Liste d’objets Model à packager dans le service mis à jour.

inference_config
InferenceConfig
valeur par défaut: None

Objet InferenceConfig utilisé pour fournir les propriétés de déploiement de modèle nécessaires.

Type de retour