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.
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'instructionCREATE 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 :
- Déployer le modèle sur un point de terminaison
- Comparer les versions de modèle
- Obtenir des prédictions
- Surveiller le modèle
- Afficher les évaluations de modèles
- Obtenir des explications basées sur les caractéristiques pour le 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
Accédez à la page BigQuery.
Dans le volet Explorateur, localisez le modèle que vous souhaitez enregistrer.
Cliquez sur le nom du modèle pour ouvrir le volet d'informations.
Dans le volet des détails du modèle, sélectionnez l'onglet Registre.
Cliquez sur S'inscrire.
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.
- Dans Nom du modèle, saisissez un nom pour le modèle.
- Facultatif. Si vous souhaitez utiliser un alias de version, sélectionnez Alias de version, puis saisissez le nom de l'alias de version.
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 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 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
Vous ne pouvez pas enregistrer de modèles distants.
Les modèles suivants peuvent être enregistrés dans Model Registry, mais pas déployés dans Vertex AI :