Gérer des modèles BigQuery ML dans Vertex AI
Vous pouvez enregistrer des modèles BigQuery ML auprès de Vertex AI Model Registry, afin de les gérer avec vos modèles Vertex AI sans avoir à les exporter. Lorsque vous enregistrez des modèles dans Model Registry, vous pouvez gérer les versions, évaluer les modèles et les déployer pour la prédiction en ligne à l'aide d'une seule interface et sans avoir besoin d'un conteneur de déploiement. Si vous ne connaissez pas Vertex AI et son intégration à BigQuery ML, consultez la page Vertex AI pour les utilisateurs de BigQuery.
Pour en savoir plus sur la prédiction Vertex AI, consultez la page Présentation de l'obtention de prédictions sur Vertex AI.
Pour savoir comment gérer vos modèles BigQuery ML à partir du registre de modèles Vertex AI, consultez la page Présentation du registre de modèles Vertex AI.
Prérequis
Pour enregistrer des modèles BigQuery ML dans Model Registry, vous devez remplir plusieurs conditions préalables.
Activer l'API Vertex AI
Vous devez activer l'API Vertex AI dans votre projet avant d'enregistrer des modèles BigQuery ML dans Model Registry. Pour ce faire, utilisez la page API et services de la console Google Cloud ou exécutez la commande Google Cloud CLI suivante:
gcloud --project PROJECT_ID services enable aiplatform.googleapis.com
Accorder des autorisations IAM
Le compte de service ou le compte utilisateur que vous utilisez pour enregistrer des modèles BigQuery ML dans Model Registry doit disposer du rôle Administrateur Vertex AI (roles/aiplatform.admin
). Pour en savoir plus sur les rôles et les autorisations Vertex AI, consultez la page Contrôle des accès avec IAM.
Utilisez la commande suivante pour accorder le rôle Administrateur Vertex AI à un compte de service:
gcloud projects add-iam-policy-binding PROJECT_ID --member=serviceAccount:SERVICE_ACCOUNT_EMAIL --role=roles/aiplatform.admin --condition=None
Utilisez la commande suivante pour attribuer le rôle d'administrateur Vertex AI à un compte utilisateur:
gcloud projects add-iam-policy-binding PROJECT_ID --member=user:USER_ACCOUNT --role=roles/aiplatform.admin --condition=None
Enregistrer des modèles
Lorsque vous créez un modèle BigQuery ML, vous pouvez utiliser l'option MODEL_REGISTRY
dans l'instruction CREATE MODEL
pour enregistrer le modèle dans le Model Registry. L'instruction CREATE MODEL
contient également l'option VERTEX_AI_MODEL_ID
permettant de spécifier l'ID de modèle et l'option VERTEX_AI_MODEL_VERSION_ALIASES
permettant de spécifier un ou plusieurs alias de version de modèle, que vous pouvez utiliser pour simplifier le déploiement, gérer les modèles et activer Vertex Explainable AI sur les modèles.
Si vous définissez l'option MODEL_REGISTRY
lorsque vous créez un modèle, il s'affiche automatiquement dans Model Registry une fois l'entraînement terminé dans BigQuery ML. Vous pouvez utiliser la colonne Source de la page Registre de modèles de la console Google Cloud pour voir d'où provient un modèle.
Une fois un modèle BigQuery ML enregistré, vous pouvez utiliser les fonctionnalités de Model Registry avec ce modèle. Vous pouvez déployer le modèle sur un point de terminaison, comparer des versions de modèle, effectuer des prédictions, surveiller le modèle et afficher les évaluations de modèle. En outre, si vous souhaitez comprendre quelles caractéristiques contribuent à vos prédictions, vous pouvez utiliser Vertex Explainable AI pour obtenir des explications basées sur les caractéristiques de votre modèle.
Tous les modèles créés à l'aide de BigQuery ML continuent de s'afficher dans l'interface utilisateur de BigQuery, qu'ils soient enregistrés dans Model Registry ou non.
Spécifier un ID de modèle Vertex AI
Pour faciliter la gestion des modèles, spécifiez un ID de modèle Vertex AI à l'aide de l'option VERTEX_AI_MODEL_ID
lorsque vous créez le modèle. L'ID de modèle est associé à votre modèle BigQuery ML et est visible dans Model Registry.
L'ID de modèle Vertex AI n'accepte pas les lettres majuscules. Si vous ne spécifiez pas d'ID de modèle Vertex AI, l'ID de modèle BigQuery ML est utilisé. Dans ce cas, assurez-vous que l'ID du modèle BigQuery ML est également en minuscules. Pour obtenir la liste complète des exigences liées aux ID de modèle, consultez les spécifications dans la documentation de référence sur l'importation.
Pour mettre à jour l'ID de modèle Vertex AI, vous devez supprimer le modèle et le recréer avec le bon nouvel ID de modèle Vertex AI. Vous ne pouvez pas mettre à jour l'ID de modèle Vertex AI à l'aide de la commande ALTER MODEL
.
Spécifier un alias de modèle Vertex AI
Pour spécifier un alias de modèle, spécifiez l'option VERTEX_AI_MODEL_VERSION_ALIASES
lorsque vous créez le modèle. Les alias de modèle sont utiles pour récupérer ou déployer une version de modèle particulière par référence sans avoir à connaître l'ID de la version spécifique. De cette manière, ils fonctionnent comme les tags Docker ou les références de branche dans Git.
Pour en savoir plus sur le fonctionnement des alias de Model Registry, consultez la page Utiliser des alias de version de modèle.
Enregistrer plusieurs versions de modèles BigQuery ML
Si vous souhaitez créer une version d'un modèle BigQuery ML existant et la comparer à d'autres dans Model Registry, vous devez spécifier un ID de modèle BigQuery ML différent lors de la création du modèle, puis l'enregistrer sur l'ID du modèle Model Registry d'origine.
Si vous créez ou remplacez un modèle BigQuery ML et que vous utilisez un ID de modèle BigQuery ML déjà associé à un modèle dans Model Registry, la version de modèle Model Registry existante est supprimée et remplacée par le nouveau modèle.
Enregistrer un modèle BigQuery ML existant dans Model Registry
Les modèles BigQuery ML ne sont pas automatiquement ajoutés à Model Registry. Vous pouvez utiliser l'instruction ALTER MODEL
pour ajouter un ID de modèle et l'enregistrer dans le Model Registry, et également mettre à jour des métadonnées telles que la description et les libellés du modèle.
Pour en savoir plus sur la mise à jour des métadonnées de modèle dans BigQuery ML, consultez la page Mettre à jour les métadonnées de modèle.
Pour enregistrer un modèle existant, procédez comme suit :
SQL
ALTER MODEL [IF EXISTS] <model_name> SET OPTIONS (vertex_ai_model_id="VERTEX_AI_MODEL_ID");
bq
Vous pouvez mettre à jour un modèle à l'aide de l'outil de ligne de commande bq. Pour ce faire, exécutez la commande bq update
et spécifiez un ID de modèle. vertex_model_id
peut être un nouvel ID ou un ID de modèle Model Registry existant.
Chaque modèle BigQuery ML ne peut être enregistré que dans un seul ID de modèle dans Model Registry.
bq update --model --vertex_ai_model_id "VERTEX_AI_MODEL_ID" PROJECT_ID:DATASET.MODEL
API
- Accédez à la page Method: models.patch.
- Renseignez les champs Paramètres de requête et Corps de la requête.
- Cliquez sur le bouton Execute (Exécuter).
{
"trainingRuns": [
{
"vertexAiModelId": "VERTEX_AI_MODEL_ID"
}
}
```
Si vous spécifiez un nouvel ID de modèle lors de l'enregistrement du modèle, le modèle BigQuery ML s'affiche en tant que version 1 du modèle dans Model Registry. Pour ajouter le modèle en tant que nouvelle version d'un modèle existant, spécifiez l'ID du modèle existant. Le nouveau modèle est alors automatiquement enregistré en tant que dernière version du modèle existant.
Modifier l'ID de modèle d'un modèle BigQuery ML enregistré
Une fois qu'un modèle BigQuery ML est enregistré dans Model Registry, vous ne pouvez plus modifier la valeur VERTEX_AI_MODEL_ID
. Pour enregistrer le modèle avec un nouveau VERTEX_AI_MODEL_ID
, utilisez l'une des options suivantes:
Supprimez le modèle et recréez-le si le coût de réentraînement est acceptable.
Copiez le modèle, puis utilisez l'instruction
ALTER MODEL
pour enregistrer le nouveau modèle avec une nouvelle valeurVERTEX_AI_MODEL_ID
.
Considérations relatives aux emplacements
Si vous enregistrez un modèle BigQuery ML multirégional dans Model Registry, il devient un modèle régional dans Vertex AI. Un modèle américain multirégional BigQuery ML est synchronisé avec Vertex AI (us-central1) et un modèle européen multirégional BigQuery ML est synchronisé avec Vertex AI (europe-west4). Pour les modèles dans une seule région, il n'y a pas de modification.
Pour savoir comment mettre à jour les emplacements de modèle, consultez la section Choisir votre emplacement.
Supprimer des modèles BigQuery ML du registre de modèles
Pour supprimer un modèle BigQuery ML de Model Registry, supprimez-le dans BigQuery ML. Le modèle est automatiquement supprimé du référentiel de modèles.
Il existe plusieurs façons de supprimer un modèle BigQuery ML. Pour en savoir plus, consultez la section Supprimer des modèles.
Si vous souhaitez supprimer un modèle dans BigQuery ML qui a été enregistré dans Model Registry et déployé sur un point de terminaison, vous devez d'abord utiliser Model Registry pour annuler le déploiement du modèle. Vous pouvez ensuite revenir à BigQuery ML et supprimer le modèle. Pour savoir comment désinstaller un modèle, consultez la section Supprimer un point de terminaison.
Étape suivante
Utilisez le notebook Prédictions en ligne avec BigQuery ML pour entraîner un modèle à l'aide de BigQuery ML, l'enregistrer dans Model Registry et le déployer sur un point de terminaison pour obtenir des prédictions en temps réel.