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 et déployer les modèles 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 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.

Avant de commencer

Enable the Vertex AI API.

Enable the API

Autorisations requises

Pour obtenir les autorisations nécessaires pour enregistrer des modèles BigQuery ML dans Model Registry, demandez à votre administrateur de vous attribuer le rôle IAM Administrateur Vertex AI (roles/aiplatform.admin) sur votre projet. Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Enregistrer des modèles

Lorsque vous créez un modèle BigQuery ML, vous pouvez l'enregistrer dans Model Registry de différentes manières :

  • Dans la console Google Cloud , sélectionnez le modèle dans le volet Explorateur, puis cliquez sur Enregistrer dans l'onglet Registre. (Aperçu)
  • Utilisez l'instruction CREATE MODEL. Dans l'instruction CREATE MODEL, vous pouvez utiliser les options suivantes pour enregistrer le modèle dans le registre de modèles :

    • MODEL_REGISTRY : enregistrez le modèle dans Model Registry.
    • VERTEX_AI_MODEL_ID : spécifiez un ID de modèle à utiliser pour le modèle dans Model Registry. L'ID de modèle est associé à votre modèle BigQuery ML et est visible dans Model Registry. Chaque modèle BigQuery ML ne peut être enregistré que dans un seul ID de modèle dans Model Registry.
    • VERTEX_AI_MODEL_VERSION_ALIASES : spécifiez un ou plusieurs alias de version de modèle. Vous pouvez les 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 lors de la création d'un modèle, celui-ci est enregistré dans Model Registry et s'y affiche automatiquement une fois l'entraînement terminé dans BigQuery ML. Vous pouvez utiliser la colonne Source de la page Registre de modèles de la consoleGoogle Cloud pour voir d'où provient un modèle.

Une fois qu'un modèle BigQuery ML est enregistré, vous pouvez utiliser les fonctionnalités Model Registry suivantes avec ce 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.

L'exemple suivant montre comment créer et enregistrer un modèle k-means :

CREATE OR REPLACE MODEL `mydataset.my_kmeans_model`
  MODEL_TYPE = 'KMEANS',
  MODEL_REGISTRY = 'VERTEX_AI',
  VERTEX_AI_MODEL_ID = 'customer_clustering';

Enregistrer un modèle BigQuery ML existant dans Model Registry

Si vous n'enregistrez pas un modèle dans Vertex AI lorsque vous le créez, vous pouvez utiliser SQL, l'outil de ligne de commande bq ou l'API BigQuery pour l'enregistrer ultérieurement.

Les exemples suivants montrent comment enregistrer un modèle existant :

Console

  1. Accédez à la page BigQuery.

    Accéder à BigQuery

  2. Dans le volet Explorateur, localisez le modèle que vous souhaitez enregistrer.

  3. Cliquez sur le nom du modèle pour ouvrir le volet d'informations.

  4. Dans le volet des détails du modèle, sélectionnez l'onglet Registre.

  5. Cliquez sur S'inscrire.

  6. Dans le volet Enregistrer le modèle dans Vertex Model Registry, effectuez l'une des opérations suivantes :

    • Sélectionnez Enregistrer en tant que nouveau modèle. Dans Nom du modèle, saisissez un nom pour le modèle.

    • Sélectionnez Enregistrer en tant que nouvelle version d'un modèle existant.

      1. Dans Nom du modèle, saisissez un nom pour le modèle.
      2. Facultatif. Si vous souhaitez utiliser un alias de version, sélectionnez Alias de version, puis saisissez le nom de l'alias de version.
  7. Cliquez sur S'inscrire.

SQL

Utilisez l'instruction ALTER MODEL :

ALTER MODEL IF EXISTS mymodel SET OPTIONS (vertex_ai_model_id='my_vertex_ai_model_id');

bq

Exécutez la commande bq update avec l'option --model :

  bq update --model --vertex_ai_model_id 'my_vertex_ai_model_id' myproject:mydataset.mymodel

API

Exécutez la méthode models.patch. Transmettez un objet Model contenant un objet trainingRuns avec un champ vertexAiModelId renseigné :

{
  "trainingRuns": [
    {
      "vertexAiModelId": my_vertex_ai_model_id
    }
}

Enregistrer plusieurs versions de modèles BigQuery ML

Le premier modèle BigQuery ML que vous enregistrez sous un ID de modèle donné s'affiche en tant que version 1 de ce modèle dans Model Registry. Vous pouvez enregistrer d'autres modèles BigQuery ML en tant que versions différentes du modèle enregistré en spécifiant le même ID de modèle Vertex AI lorsque vous créez ou modifiez ces modèles BigQuery ML.

Par exemple, vous pouvez créer model1 dans BigQuery ML et l'enregistrer dans Model Registry sous le nom regression_model. model1 s'affiche en tant que version 1 de regression_model dans Model Registry. Si vous créez ensuite model2 dans BigQuery ML et que vous l'enregistrez dans Model Registry en tant que regression_model, model2 s'affiche comme version 2 de regression_model dans Model Registry.

Si vous créez ou remplacez un modèle BigQuery ML et que vous utilisez un nom 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. En reprenant l'exemple précédent, si vous créez ou remplacez model2 dans BigQuery ML à l'aide de l'instruction CREATE OR REPLACE MODEL avec les options MODEL_REGISTRY et VERTEX_AI_MODEL_ID, la version 2 de regression_model dans Model Registry est remplacée, et Model Registry affiche les versions 1 et 3 du modèle regression_model.

Modifier l'ID 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 en spécifiant une nouvelle valeur pour l'option VERTEX_AI_MODEL_ID. Cette approche entraîne des coûts de réentraînement.

  • Copiez le modèle, puis utilisez l'instruction ALTER MODEL pour enregistrer le nouveau modèle avec une nouvelle valeur VERTEX_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 des modèles, consultez la section Choisir votre emplacement.

Déployer un modèle dans Vertex AI

Vous pouvez utiliser différentes méthodes pour déployer un modèle sur un point de terminaison dans Vertex AI. Pour en savoir plus, consultez la section Déployer un modèle sur un point de terminaison.

Supprimer des modèles BigQuery ML de Model Registry

Pour supprimer un modèle BigQuery ML du registre de modèles, supprimez-le dans BigQuery ML. Le modèle est automatiquement supprimé du registre de modèles.

Il existe plusieurs façons de supprimer un modèle BigQuery ML. Pour en savoir plus, consultez Supprimer des modèles.

Si vous souhaitez supprimer un modèle dans BigQuery ML qui a été enregistré dans le registre de modèles et déployé sur un point de terminaison, vous devez d'abord annuler le déploiement du modèle à l'aide du registre de modèles. Vous pouvez ensuite revenir à BigQuery ML et supprimer le modèle. Pour savoir comment annuler le déploiement d'un modèle, consultez la section Supprimer un point de terminaison.

Limites