Avant de pouvoir obtenir des inférences en ligne à partir d'un modèle entraîné, vous devez déployer le modèle sur un point de terminaison. Pour ce faire, vous pouvez utiliser la console Google Cloud , Google Cloud CLI ou l'API Vertex AI.
Ce document décrit la procédure de déploiement de modèles sur des points de terminaison.
Déroulement du déploiement d'un modèle
Le déploiement d'un modèle associe des ressources physiques au modèle afin qu'il puisse diffuser des inférences en ligne avec une faible latence.
Vous pouvez déployer plusieurs modèles sur un point de terminaison ou le même modèle sur plusieurs points de terminaison. Pour en savoir plus, consultez Motifs de déploiement de plusieurs modèles sur le même point de terminaison.
Préparer le déploiement d'un modèle sur un point de terminaison
Lors du déploiement du modèle, vous prenez les décisions importantes suivantes concernant l'exécution de l'inférence en ligne :
Ressource créée | Paramètre spécifié lors de la création de la ressource |
---|---|
Point de terminaison | Emplacement dans lequel exécuter les inférences |
Modèle | Conteneur à utiliser (ModelContainerSpec ) |
DeployedModel | Ressources de calcul à utiliser pour l'inférence en ligne |
Une fois le modèle déployé sur le point de terminaison, ces paramètres de déploiement ne peuvent plus être modifiés. Pour les modifier, vous devez redéployer votre modèle.
La première étape du processus de déploiement consiste à choisir le type de point de terminaison à utiliser. Pour en savoir plus, consultez Choisir un type de point de terminaison.
Ensuite, assurez-vous que le modèle est visible dans Vertex AI Model Registry. Cette étape est nécessaire pour que le modèle puisse être déployé. Pour en savoir plus sur Model Registry, y compris sur l'importation d'artefacts de modèle ou leur création directement dans Model Registry, consultez Présentation de Vertex AI Model Registry.
Vous devez ensuite choisir les ressources de calcul à utiliser pour diffuser le modèle.
Le type d'entraînement (AutoML ou personnalisé) et le type de données (AutoML) du modèle déterminent les types de ressources physiques disponibles pour le modèle. Après le déploiement du modèle, vous pouvez mutate
certaines de ces ressources sans créer de déploiement.
La ressource de point de terminaison fournit le point de terminaison (URL) du service que vous utilisez pour demander l'inférence. Exemple :
https://us-central1-aiplatform.googleapis.com/v1/projects/{project}/locations/{location}/endpoints/{endpoint}:predict
Déployer un modèle sur un point de terminaison
Vous pouvez déployer un modèle sur un point de terminaison en utilisant la console Google Cloud ou en utilisant la gcloud CLI ou l'API Vertex AI.
Déployer un modèle sur un point de terminaison public à l'aide de la console Google Cloud
Dans la console Google Cloud , vous pouvez déployer un modèle sur un point de terminaison public dédié ou partagé existant, ou vous pouvez créer un point de terminaison lors du processus de déploiement. Pour en savoir plus, consultez Déployer un modèle à l'aide de la console Google Cloud .
Déployer un modèle sur un point de terminaison public à l'aide de la gcloud CLI ou de l'API Vertex AI
Lorsque vous déployez un modèle à l'aide de la gcloud CLI ou de l'API Vertex AI, vous devez d'abord créer un point de terminaison dédié ou partagé, puis y déployer le modèle. Pour plus d'informations, consultez :
- Créer un point de terminaison public dédié ou partagé
- Déployer un modèle à l'aide de la gcloud CLI ou de l'API Vertex AI
Déployer un modèle sur un point de terminaison Private Service Connect
Pour en savoir plus, consultez Utiliser des points de terminaison Private Service Connect pour l'inférence en ligne.
Utiliser un déploiement progressif pour mettre à jour un modèle déployé
Vous pouvez utiliser un déploiement continu pour remplacer un modèle déployé par une nouvelle version du même modèle. Le nouveau modèle réutilise les ressources de calcul de l'ancien. Pour en savoir plus, consultez Utiliser un déploiement progressif pour remplacer un modèle déployé.
Déployer un modèle et supprimer le point de terminaison
Vous pouvez annuler le déploiement d'un modèle et supprimer le point de terminaison. Pour en savoir plus, consultez Annuler le déploiement d'un modèle et supprimer le point de terminaison.
Motifs de déploiement de plusieurs modèles sur le même point de terminaison
Le déploiement de deux modèles sur le même point de terminaison vous permet de remplacer progressivement un modèle par l'autre. Par exemple, supposons que vous utilisiez un modèle et que vous cherchiez un moyen d'améliorer la précision de ce modèle avec de nouvelles données d'entraînement. Toutefois, vous ne souhaitez pas mettre à jour votre application pour qu'elle pointe vers une nouvelle URL de point de terminaison et vous ne souhaitez pas modifier soudainement l'application. Vous pouvez ajouter le nouveau modèle au même point de terminaison, diffuser un petit pourcentage de trafic, puis augmenter progressivement la répartition du trafic pour le nouveau modèle jusqu'à ce qu'il diffuse 100% du trafic.
Étant donné que les ressources sont associées au modèle plutôt qu'au point de terminaison, vous pouvez déployer des modèles de différents types sur le même point de terminaison. Toutefois, la bonne pratique consiste à déployer des modèles d'un type spécifique (par exemple, AutoML tabulaire ou entraînement personnalisé) sur un point de terminaison. Cette configuration est plus facile à gérer.
Motifs de déploiement d'un modèle sur plusieurs points de terminaison
Vous souhaitez peut-être déployer vos modèles avec différentes ressources pour divers environnements d'application, tels que les tests et la production. Vous pouvez également être compatible avec différents SLO pour vos requêtes d'inférence. Il est possible que l'une de vos applications présente des besoins de performances bien plus élevés que les autres. Dans ce cas, vous avez la possibilité de déployer ce modèle sur un point de terminaison plus performant avec davantage de ressources de machine. Pour optimiser les coûts, vous pouvez également déployer le modèle sur un point de terminaison à faible performances avec moins de ressources de machine.
Comportement du scaling
L'autoscaling de l'inférence Vertex AI ajuste le nombre de nœuds d'inférence en fonction du nombre de requêtes simultanées. Cela vous permet de vous adapter de manière dynamique aux variations de charge des requêtes tout en gérant les coûts. Pour en savoir plus, consultez Mettre à l'échelle les nœuds d'inférence pour Vertex AI Inference.
Étapes suivantes
- Choisissez un type de point de terminaison.
- Déployez un modèle à l'aide de la console Google Cloud .
- Découvrez la journalisation des requêtes et des réponses d'inférence pour les points de terminaison dédiés et les points de terminaison Private Service Connect.
- Découvrez comment obtenir une inférence en ligne.
- Découvrez comment modifier les paramètres par défaut pour la journalisation des inférences.