AksEndpoint Classe
Notes
Il s’agit d’une classe expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.
Représente une collection de versions de service web derrière le même point de terminaison s’exécutant sur Azure Kubernetes Service.
Alors qu’un AksWebservice déploie un seul service avec un seul point de terminaison de scoring, la classe AksEndpoint vous permet de déployer plusieurs versions de service web derrière le même point de terminaison de scoring. Chaque version de service web peut être configurée pour traiter un pourcentage du trafic afin que vous puissiez déployer des modèles de manière contrôlée, par exemple pour des tests A/B. AksEndpoint permet le déploiement à partir d’un objet de modèle similaire à AksWebservice.
Initialisez le instance webservice.
Le constructeur webservice récupère une représentation cloud d’un objet Webservice associé à l’espace de travail fourni. Elle retourne une instance d’une classe enfant correspondant au type spécifique de l’objet Webservice récupéré.
- Héritage
-
AksEndpoint
Constructeur
AksEndpoint(workspace, name)
Paramètres
Variables
- versions
- dict[str, AksWebservice]
Dictionnaire du nom de version à l’objet de version. Contient toutes les versions déployées dans le cadre de ce point de terminaison.
Méthodes
create_version |
Ajoute une nouvelle version à un point de terminaison avec les propriétés fournies. |
delete_version |
Supprime une version dans un point de terminaison. |
deploy_configuration |
Crée un objet de configuration à déployer sur une cible de calcul AKS. |
serialize |
Convertit ce Webservice en dictionnaire JSON sérialisé. |
update |
Met à jour le point de terminaison avec les propriétés fournies. Les valeurs pour lesquelles None est spécifié restent inchangées dans ce point de terminaison. |
update_version |
Met à jour une version existante dans un point de terminaison avec les propriétés fournies. Les valeurs pour lesquelles None est spécifié restent inchangées dans cette version. |
create_version
Ajoute une nouvelle version à un point de terminaison avec les propriétés fournies.
create_version(version_name, autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, cpu_cores=None, memory_gb=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, traffic_percentile=None, is_default=None, is_control_version_type=None, cpu_cores_limit=None, memory_gb_limit=None)
Paramètres
- autoscale_enabled
- bool
Indique s’il est nécessaire ou non d’activer la mise à l’échelle automatique pour cette version dans un point de terminaison.
La valeur par défaut est True si num_replicas
a la valeur None.
- autoscale_min_replicas
- int
Nombre minimal de conteneurs à utiliser durant la mise à l’échelle automatique de cette version dans un point de terminaison. La valeur par défaut est 1.
- autoscale_max_replicas
- int
Nombre maximal de conteneurs à utiliser durant la mise à l’échelle automatique de cette version dans un point de terminaison. La valeur par défaut est 10.
- autoscale_refresh_seconds
- int
Fréquence à laquelle l’autoscaler doit tenter de mettre à l’échelle cette version dans un point de terminaison. La valeur par défaut est 1.
- autoscale_target_utilization
- int
Utilisation cible en pourcentage que l’autoscaler doit tenter de conserver pour cette version dans un point de terminaison. La valeur par défaut est 70.
- collect_model_data
- bool
Indique s’il est nécessaire ou non d’activer la collecte de données de modèle pour cette version dans un point de terminaison. Par défaut, False
- cpu_cores
- float
Nombre de cœurs de processeur à allouer pour cette version dans un point de terminaison. Peut être un nombre décimal. La valeur par défaut est 0.1
- memory_gb
- float
Quantité de mémoire (en Go) à allouer pour cette version dans un point de terminaison. Peut être un nombre décimal. La valeur par défaut est 0.5
- scoring_timeout_ms
- int
Délai d’expiration à appliquer pour le scoring des appels de cette version dans un point de terminaison. La valeur par défaut est 60000.
- replica_max_concurrent_requests
- int
Nombre maximal de demandes simultanées par réplica à autoriser pour cette version dans un point de terminaison. La valeur par défaut est de 1. Ne modifiez pas la valeur de ce paramètre (la valeur par défaut est 1), sauf indication contraire du support technique Microsoft ou d’un membre de l’équipe Azure Machine Learning.
- max_request_wait_time
- int
Durée maximale pendant laquelle une requête reste en file d’attente (en millisecondes) avant de retourner une erreur 503. La valeur par défaut est 500.
- num_replicas
- int
Nombre de conteneurs à allouer pour cette version dans un point de terminaison. Aucune valeur par défaut. Si ce paramètre n’est pas défini, l’autoscaler est activé par défaut.
Dictionnaire d’étiquettes clé-valeur à fournir à ce point de terminaison.
Dictionnaire de propriétés clé-valeur à fournir à ce point de terminaison. Vous ne pouvez pas changer ces propriétés après le déploiement. Toutefois, vous pouvez ajouter de nouvelles paires clé-valeur.
Liste d’objets Model à empaqueter avec le service mis à jour.
- inference_config
- InferenceConfig
Objet InferenceConfig utilisé pour fournir les propriétés de déploiement de modèle nécessaires.
- gpu_cores
- int
Nombre de cœurs de GPU à allouer pour cette version dans un point de terminaison. La valeur par défaut est 0.
- period_seconds
- int
Fréquence (en secondes) d’exécution de probe liveness. La valeur par défaut est 10 secondes. La valeur minimale est 1.
- initial_delay_seconds
- int
Nombre de secondes après le démarrage du conteneur avant le lancement des probes liveness. La valeur par défaut est 310.
- timeout_seconds
- int
Délai d’expiration en secondes de la probe liveness. La valeur par défaut est de 2 secondes. La valeur minimale est 1.
- success_threshold
- int
Nombre minimal de réussites consécutives pour que la probe liveness soit considérée comme réussie après avoir échoué. La valeur par défaut est de 1. La valeur minimale est 1.
- failure_threshold
- int
Quand un Pod démarre et que la probe liveness échoue, Kubernetes essaie FailureThreshold times avant d’abandonner. La valeur par défaut est 3. La valeur minimale est 1.
- traffic_percentile
- float
Volume de trafic absorbé par la version dans un point de terminaison.
- is_default
- bool
Indique s’il est nécessaire ou non de faire de cette version la version par défaut d’un point de terminaison. Valeur par défaut False.
- is_control_version_type
- bool
Indique s’il est nécessaire ou non de faire de cette version la version de contrôle d’un point de terminaison. Valeur par défaut False.
- cpu_cores_limit
- float
Nombre maximal de cœurs de processeur que ce Webservice est autorisé à utiliser. Peut être un nombre décimal.
- memory_gb_limit
- float
Quantité maximale de mémoire (en Go) que ce Webservice est autorisé à utiliser. Peut être un nombre décimal.
Exceptions
delete_version
Supprime une version dans un point de terminaison.
delete_version(version_name)
Paramètres
Exceptions
deploy_configuration
Crée un objet de configuration à déployer sur une cible de calcul 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, version_name=None, traffic_percentile=None, compute_target_name=None, cpu_cores_limit=None, memory_gb_limit=None)
Paramètres
- autoscale_enabled
- bool
Indique s’il est nécessaire ou non d’activer la mise à l’échelle automatique pour cette version dans un point de terminaison.
La valeur par défaut est True si num_replicas
a la valeur None.
- autoscale_min_replicas
- int
Nombre minimal de conteneurs à utiliser durant la mise à l’échelle automatique de cette version dans un point de terminaison. La valeur par défaut est de 1.
- autoscale_max_replicas
- int
Nombre maximal de conteneurs à utiliser durant la mise à l’échelle automatique de cette version dans un point de terminaison. La valeur par défaut est 10.
- autoscale_refresh_seconds
- int
Fréquence à laquelle l’autoscaler doit tenter de mettre à l’échelle cette version dans un point de terminaison. La valeur par défaut est de 1.
- autoscale_target_utilization
- int
Utilisation cible en pourcentage que l’autoscaler doit tenter de conserver pour cette version dans un point de terminaison. La valeur par défaut est 70.
- collect_model_data
- bool
Indique s’il est nécessaire ou non d’activer la collecte de données de modèle pour cette version dans un point de terminaison. Valeur par défaut False.
- auth_enabled
- bool
Indique s’il est nécessaire ou non d’activer l’authentification par clé pour cette version dans un point de terminaison. La valeur par défaut est True.
- cpu_cores
- float
Nombre de cœurs de processeur à allouer pour cette version dans un point de terminaison. Peut être un nombre décimal. La valeur par défaut est 0.1
- memory_gb
- float
Quantité de mémoire (en Go) à allouer pour cette version dans un point de terminaison. Peut être un nombre décimal. La valeur par défaut est 0.5
- enable_app_insights
- bool
Indique s’il est nécessaire ou non d’activer la journalisation ApplicationInsights pour cette version dans un point de terminaison. Valeur par défaut False.
- scoring_timeout_ms
- int
Délai d’expiration à appliquer pour le scoring des appels de cette version dans un point de terminaison. La valeur par défaut est 60 000.
- replica_max_concurrent_requests
- int
Nombre maximal de demandes simultanées par réplica à autoriser pour cette version dans un point de terminaison. La valeur par défaut est de 1. Ne modifiez pas la valeur de ce paramètre (la valeur par défaut est 1), sauf indication contraire du support technique Microsoft ou d’un membre de l’équipe Azure Machine Learning.
- max_request_wait_time
- int
Durée maximale pendant laquelle une requête reste en file d’attente (en millisecondes) avant de retourner une erreur 503. La valeur par défaut est 500.
- num_replicas
- int
Nombre de conteneurs à allouer pour cette version dans un point de terminaison. Aucune valeur par défaut. Si ce paramètre n’est pas défini, l’autoscaler est activé par défaut.
- primary_key
- str
Clé d’authentification primaire à utiliser pour ce point de terminaison.
- secondary_key
- str
Clé d’authentification secondaire à utiliser pour ce point de terminaison.
Dictionnaire d’étiquettes clé-valeur à fournir à ce point de terminaison.
Dictionnaire de propriétés clé-valeur à fournir à ce point de terminaison. Vous ne pouvez pas changer ces propriétés après le déploiement. Toutefois, vous pouvez ajouter de nouvelles paires clé-valeur
- gpu_cores
- int
Nombre de cœurs de GPU à allouer pour cette version dans un point de terminaison. La valeur par défaut est 0.
- period_seconds
- int
Fréquence (en secondes) d’exécution de probe liveness. La valeur par défaut est 10 secondes. La valeur minimale est 1.
- initial_delay_seconds
- int
Nombre de secondes après le démarrage du conteneur avant le lancement des probes liveness. La valeur par défaut est 310.
- timeout_seconds
- int
Délai d’expiration en secondes de la probe liveness. La valeur par défaut est de 2 secondes. La valeur minimale est 1.
- success_threshold
- int
Nombre minimal de réussites consécutives pour que la probe liveness soit considérée comme réussie après avoir échoué. La valeur par défaut est de 1. La valeur minimale est 1.
- failure_threshold
- int
Lorsqu’un Pod démarre et que la probe liveness échoue, Kubernetes essaie failureThreshold
fois avant d’abandonner. La valeur par défaut est 3. La valeur minimale est 1.
- namespace
- str
Espace de noms Kubernetes sur lequel déployer ce point de terminaison : jusqu’à 63 caractères alphanumériques minuscules (lettres allant de « a » à « z », chiffres allant de « 0 » à « 9 » et traits d’union (« - »)). Le premier caractère et le dernier caractère ne peuvent pas être des traits d’union.
- token_auth_enabled
- bool
Indique s’il est nécessaire ou non d’activer l’authentification par jeton pour ce point de terminaison. Si cette option est activée, les utilisateurs peuvent accéder au point de terminaison en récupérant un jeton d’accès à l’aide de leurs informations d’identification Azure Active Directory. Valeur par défaut False.
- traffic_percentile
- float
Volume de trafic absorbé par la version dans un point de terminaison.
- compute_target_name
- str
Nom de la cible de calcul sur laquelle effectuer le déploiement
- cpu_cores_limit
- float
Nombre maximal de cœurs de processeur que ce Webservice est autorisé à utiliser. Peut être un nombre décimal.
- memory_gb_limit
- float
Quantité maximale de mémoire (en Go) que ce Webservice est autorisé à utiliser. Peut être un nombre décimal.
Type de retour
Exceptions
serialize
Convertit ce Webservice en dictionnaire JSON sérialisé.
serialize()
Retours
Représentation JSON de ce Webservice.
Type de retour
Exceptions
update
Met à jour le point de terminaison avec les propriétés fournies.
Les valeurs pour lesquelles None est spécifié restent inchangées dans ce point de terminaison.
update(auth_enabled=None, token_auth_enabled=None, enable_app_insights=None, description=None, tags=None, properties=None)
Paramètres
- auth_enabled
- bool
Indique s’il est nécessaire ou non d’activer l’authentification par clé pour cette version dans un point de terminaison. La valeur par défaut est True.
- token_auth_enabled
- bool
Indique s’il est nécessaire ou non d’activer l’authentification par jeton pour ce point de terminaison. Si cette option est activée, les utilisateurs peuvent accéder au point de terminaison en récupérant un jeton d’accès à l’aide de leurs informations d’identification Azure Active Directory. Valeur par défaut False.
- enable_app_insights
- bool
Indique s’il est nécessaire ou non d’activer la journalisation Application Insights pour cette version dans un point de terminaison. Valeur par défaut False.
Dictionnaire d’étiquettes clé-valeur à fournir à ce point de terminaison.
Dictionnaire de propriétés clé-valeur à fournir à ce point de terminaison. Vous ne pouvez pas changer ces propriétés après le déploiement. Toutefois, vous pouvez ajouter de nouvelles paires clé-valeur.
Exceptions
update_version
Met à jour une version existante dans un point de terminaison avec les propriétés fournies.
Les valeurs pour lesquelles None est spécifié restent inchangées dans cette version.
update_version(version_name, autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, cpu_cores=None, memory_gb=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, traffic_percentile=None, is_default=None, is_control_version_type=None, cpu_cores_limit=None, memory_gb_limit=None)
Paramètres
- autoscale_enabled
- bool
Indique s’il est nécessaire ou non d’activer la mise à l’échelle automatique pour cette version dans un point de terminaison. La valeur par défaut est True si num_replicas a la valeur None.
- autoscale_min_replicas
- int
Nombre minimal de conteneurs à utiliser durant la mise à l’échelle automatique de cette version dans un point de terminaison. La valeur par défaut est de 1.
- autoscale_max_replicas
- int
Nombre maximal de conteneurs à utiliser durant la mise à l’échelle automatique de cette version dans un point de terminaison. La valeur par défaut est 10.
- autoscale_refresh_seconds
- int
Fréquence à laquelle l’autoscaler doit tenter de mettre à l’échelle cette version dans un point de terminaison. La valeur par défaut est 1.
- autoscale_target_utilization
- int
Utilisation cible en pourcentage que l’autoscaler doit tenter de conserver pour cette version dans un point de terminaison. La valeur par défaut est 70.
- collect_model_data
- bool
Indique s’il est nécessaire ou non d’activer la collecte de données de modèle pour cette version dans un point de terminaison. Valeur par défaut False.
- cpu_cores
- float
Nombre de cœurs de processeur à allouer pour cette version dans un point de terminaison. Peut être un nombre décimal. La valeur par défaut est 0.1
- memory_gb
- float
Quantité de mémoire (en Go) à allouer pour cette version dans un point de terminaison. Peut être un nombre décimal. La valeur par défaut est 0.5
- scoring_timeout_ms
- int
Délai d’expiration à appliquer pour le scoring des appels de cette version dans un point de terminaison. La valeur par défaut est 60000.
- replica_max_concurrent_requests
- int
Nombre maximal de demandes simultanées par réplica à autoriser pour cette version dans un point de terminaison. La valeur par défaut est de 1. Ne modifiez pas la valeur de ce paramètre (la valeur par défaut est 1), sauf indication contraire du support technique Microsoft ou d’un membre de l’équipe Azure Machine Learning.
- max_request_wait_time
- int
Durée maximale pendant laquelle une requête reste en file d’attente (en millisecondes) avant de retourner une erreur 503. La valeur par défaut est 500.
- num_replicas
- int
Nombre de conteneurs à allouer pour cette version dans un point de terminaison. Aucune valeur par défaut. Si ce paramètre n’est pas défini, l’autoscaler est activé par défaut.
Dictionnaire d’étiquettes clé-valeur à fournir à ce point de terminaison.
Dictionnaire de propriétés clé-valeur à fournir à ce point de terminaison. Vous ne pouvez pas changer ces propriétés après le déploiement. Toutefois, vous pouvez ajouter de nouvelles paires clé-valeur.
Liste d’objets Model à packager avec le service mis à jour
- inference_config
- InferenceConfig
Objet InferenceConfig utilisé pour fournir les propriétés de déploiement de modèle nécessaires.
- gpu_cores
- int
Nombre de cœurs de GPU à allouer pour cette version dans un point de terminaison. La valeur par défaut est 0.
- period_seconds
- int
Fréquence (en secondes) d’exécution de probe liveness. La valeur par défaut est 10 secondes. La valeur minimale est 1.
- initial_delay_seconds
- int
Nombre de secondes après le démarrage du conteneur avant le lancement des probes liveness. La valeur par défaut est 310.
- timeout_seconds
- int
Délai d’expiration en secondes de la probe liveness. La valeur par défaut est de 2 secondes. La valeur minimale est 1.
- success_threshold
- int
Nombre minimal de réussites consécutives pour que la probe liveness soit considérée comme réussie après avoir échoué. La valeur par défaut est de 1. La valeur minimale est 1.
- failure_threshold
- int
Quand un Pod démarre et que la probe liveness échoue, Kubernetes essaie FailureThreshold times avant d’abandonner. La valeur par défaut est 3. La valeur minimale est 1.
- traffic_percentile
- float
Volume de trafic absorbé par la version dans un point de terminaison.
- is_default
- bool
Indique s’il est nécessaire ou non de faire de cette version la version par défaut d’un point de terminaison. Valeur par défaut False.
- is_control_version_type
- bool
Indique s’il est nécessaire ou non de faire de cette version la version de contrôle d’un point de terminaison. Valeur par défaut False.
- cpu_cores_limit
- float
Nombre maximal de cœurs de processeur que ce Webservice est autorisé à utiliser. Peut être un nombre décimal.
- memory_gb_limit
- float
Quantité maximale de mémoire (en Go) que ce Webservice est autorisé à utiliser. Peut être un nombre décimal.
Exceptions
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour