Ce tutoriel explique comment générer du texte à partir de texte, d'audio ou de vidéo à l'aide de la fonction AI.GENERATE et d'un modèle Gemini hébergé. Cette approche vous évite de créer et de gérer votre propre modèle.
Objectifs
- résumer des articles de presse ;
- Générez une sortie structurée à partir d'articles d'actualité, incluant un résumé et le sentiment général.
- Crée une transcription d'une vidéo en japonais et traduis-la en anglais.
- Générez un résumé et une liste de thèmes à partir d'un contenu audio.
Coûts
Dans ce document, vous utilisez les composants facturables suivants de Google Cloud :
- BigQuery ML: You incur costs for the data that you process in BigQuery.
- Gemini Enterprise Agent Platform: You incur costs for calls to the Agent Platform model.
Pour obtenir une estimation des coûts en fonction de votre utilisation prévue, utilisez le simulateur de coût.
Pour en savoir plus, consultez les pages Tarifs de BigQuery et Tarifs de la plate-forme d'agents.
Avant de commencer
- Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Activez l'API BigQuery.
Rôles requis pour activer les API
Pour activer les API, vous devez disposer de l'autorisation
serviceusage.services.enable. Si vous avez créé le projet, vous disposez probablement déjà de cette autorisation grâce au rôle Propriétaire (roles/owner). Sinon, vous pouvez obtenir cette autorisation grâce au rôle Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin). Découvrez comment attribuer des rôles.Pour les nouveaux projets, l'API BigQuery est automatiquement activée.
Rôles requis
Pour obtenir les autorisations nécessaires pour utiliser la fonction AI.GENERATE, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Créez et utilisez des ensembles de données et des tables BigQuery :
Éditeur de données BigQuery (
roles/bigquery.dataEditor) sur votre projet. -
Créer, déléguer et utiliser des connexions BigQuery : Administrateur de connexion BigQuery (
roles/bigquery.connectionsAdmin) sur votre projet. -
Accordez des autorisations au compte de service de la connexion : Administrateur IAM du projet (
roles/resourcemanager.projectIamAdmin) sur le projet contenant le point de terminaison Gemini Enterprise Agent Platform. -
Créer des jobs BigQuery :
Utilisateur de job BigQuery (
roles/bigquery.jobUser) sur votre projet.
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour utiliser la fonction AI.GENERATE. Pour afficher les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour utiliser la fonction AI.GENERATE :
-
Créez un ensemble de données :
bigquery.datasets.create -
Créer, déléguer et utiliser une connexion :
bigquery.connections.* -
Définissez les autorisations du compte de service :
-
resourcemanager.projects.getIamPolicy -
resourcemanager.projects.setIamPolicy
-
-
Interroger les données de la table :
bigquery.tables.getData
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Créer un ensemble de données
Créez un ensemble de données BigQuery pour contenir vos ressources :
Console
Dans la console Google Cloud , accédez à la page BigQuery.
Dans le volet de gauche, cliquez sur Explorateur :

Si le volet de gauche ne s'affiche pas, cliquez sur Développer le volet de gauche pour l'ouvrir.
Dans le volet Explorateur, cliquez sur le nom de votre projet.
Cliquez sur Afficher les actions > Créer un ensemble de données.
Sur la page Créer un ensemble de données, procédez comme suit :
Pour ID de l'ensemble de données, saisissez un nom pour l'ensemble de données.
Dans le champ Type d'emplacement, sélectionnez Région ou Multirégional.
- Si vous avez sélectionné Région, sélectionnez un emplacement dans la liste Région.
- Si vous avez sélectionné Multirégional, sélectionnez États-Unis ou Europe dans la liste Multirégional.
Cliquez sur Créer un ensemble de données.
bq
Pour créer un ensemble de données, exécutez la commande
bq mken spécifiant l'option--location:bq --location=LOCATION mk -d DATASET_ID
Remplacez les éléments suivants :
LOCATION: emplacement de l'ensemble de données.DATASET_ID: ID de l'ensemble de données que vous créez.
Vérifiez que l'ensemble de données a été créé :
bq ls
Créer une connexion
Une fois l'ensemble de données d'entraînement créé, vous établissez une connexion pour associer BigQuery et les sources externes. Créez une connexion aux ressources Cloud et obtenez le compte de service de la connexion. Créez la connexion dans le même emplacement que l'ensemble de données que vous avez créé à l'étape précédente.
Sélectionnez l'une des options suivantes :Console
Accédez à la page BigQuery.
Dans le volet de gauche, cliquez sur Explorateur :

Si le volet de gauche ne s'affiche pas, cliquez sur Développer le volet de gauche pour l'ouvrir.
Dans le volet Explorateur, développez le nom de votre projet, puis cliquez sur Connexions.
Sur la page Connexions, cliquez sur Créer une connexion.
Pour le champ Type de connexion, sélectionnez Modèles distants Vertex AI, fonctions à distance, BigLake et Spanner (Ressource cloud).
Dans le champ ID de connexion, saisissez un nom pour votre connexion.
Pour Type d'emplacement, sélectionnez un emplacement pour votre connexion. La connexion doit être colocalisée avec vos autres ressources, telles que les ensembles de données.
Cliquez sur Créer une connexion.
Cliquez sur Accéder à la connexion.
Dans le volet Informations de connexion, copiez l'ID du compte de service à utiliser à l'étape suivante.
SQL
Utilisez l'instruction CREATE CONNECTION :
Dans la console Google Cloud , accédez à la page BigQuery.
Dans l'éditeur de requête, saisissez l'instruction suivante :
CREATE CONNECTION [IF NOT EXISTS] `CONNECTION_NAME` OPTIONS ( connection_type = "CLOUD_RESOURCE", friendly_name = "FRIENDLY_NAME", description = "DESCRIPTION" );
Remplacez les éléments suivants :
-
CONNECTION_NAME: nom de la connexion au formatPROJECT_ID.LOCATION.CONNECTION_ID,LOCATION.CONNECTION_IDouCONNECTION_ID. Si le projet ou l'emplacement sont omis, ils sont déduits du projet et de l'emplacement où l'instruction est exécutée. -
FRIENDLY_NAME(facultatif) : nom descriptif de la connexion. -
DESCRIPTION(facultatif) : description de la connexion.
-
Cliquez sur Exécuter.
Pour en savoir plus sur l'exécution des requêtes, consultez Exécuter une requête interactive.
bq
Dans un environnement de ligne de commande, créez une connexion :
bq mk --connection --location=REGION --project_id=PROJECT_ID \ --connection_type=CLOUD_RESOURCE CONNECTION_ID
Le paramètre
--project_idremplace le projet par défaut.Remplacez les éléments suivants :
REGION: votre région de connexionPROJECT_ID: ID de votre projet Google CloudCONNECTION_ID: ID de votre connexion
Lorsque vous créez une ressource de connexion, BigQuery crée un compte de service système unique et l'associe à la connexion.
Dépannage : Si vous obtenez l'erreur de connexion suivante, mettez à jour le Google Cloud SDK :
Flags parsing error: flag --connection_type=CLOUD_RESOURCE: value should be one of...
Récupérez et copiez l'ID du compte de service pour l'utiliser lors d'une prochaine étape :
bq show --connection PROJECT_ID.REGION.CONNECTION_ID
Le résultat ressemble à ce qui suit :
name properties 1234.REGION.CONNECTION_ID {"serviceAccountId": "connection-1234-9u56h9@gcp-sa-bigquery-condel.iam.gserviceaccount.com"}
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Python.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Node.js.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Terraform
Utilisez la ressource google_bigquery_connection.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant crée une connexion de ressources Cloud nommée my_cloud_resource_connection dans la région US :
Pour appliquer votre configuration Terraform dans un projet Google Cloud , suivez les procédures des sections suivantes.
Préparer Cloud Shell
- Lancez Cloud Shell.
-
Définissez le projet Google Cloud par défaut dans lequel vous souhaitez appliquer vos configurations Terraform.
Vous n'avez besoin d'exécuter cette commande qu'une seule fois par projet et vous pouvez l'exécuter dans n'importe quel répertoire.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Les variables d'environnement sont remplacées si vous définissez des valeurs explicites dans le fichier de configuration Terraform.
Préparer le répertoire
Chaque fichier de configuration Terraform doit avoir son propre répertoire (également appelé module racine).
-
Dans Cloud Shell, créez un répertoire et un nouveau fichier dans ce répertoire. Le nom du fichier doit comporter l'extension
.tf, par exemplemain.tf. Dans ce tutoriel, le fichier est appelémain.tf.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Si vous suivez un tutoriel, vous pouvez copier l'exemple de code dans chaque section ou étape.
Copiez l'exemple de code dans le fichier
main.tfque vous venez de créer.Vous pouvez également copier le code depuis GitHub. Cela est recommandé lorsque l'extrait Terraform fait partie d'une solution de bout en bout.
- Examinez et modifiez les exemples de paramètres à appliquer à votre environnement.
- Enregistrez les modifications.
-
Initialisez Terraform. Cette opération n'est à effectuer qu'une seule fois par répertoire.
terraform init
Vous pouvez également utiliser la dernière version du fournisseur Google en incluant l'option
-upgrade:terraform init -upgrade
Appliquer les modifications
-
Examinez la configuration et vérifiez que les ressources que Terraform va créer ou mettre à jour correspondent à vos attentes :
terraform plan
Corrigez les modifications de la configuration si nécessaire.
-
Appliquez la configuration Terraform en exécutant la commande suivante et en saisissant
yeslorsque vous y êtes invité :terraform apply
Attendez que Terraform affiche le message "Apply completed!" (Application terminée).
- Ouvrez votre projet Google Cloud pour afficher les résultats. Dans la console Google Cloud , accédez à vos ressources dans l'interface utilisateur pour vous assurer que Terraform les a créées ou mises à jour.
Accorder l'accès au compte de service
Attribuez au compte de service de la connexion les rôles "Utilisateur Agent Platform" et "Lecteur des objets de l'espace de stockage". Pour attribuer les rôles, procédez comme suit :
Accédez à la page IAM et administration.
Cliquez sur Ajouter.
La boîte de dialogue Ajouter des comptes principaux s'ouvre.
Dans le champ Nouveaux comptes principaux, saisissez l'ID du compte de service que vous avez copié précédemment.
Dans le champ Sélectionner un rôle, sélectionnez Vertex AI, puis Utilisateur Agent Platform.
Cliquez sur Ajouter un autre rôle.
Dans le champ Sélectionner un rôle, sélectionnez Cloud Storage, puis Lecteur des objets Storage.
Cliquez sur Enregistrer.
Résumer du texte et utiliser le format de sortie par défaut
Pour résumer des articles d'actualité, appelez la fonction AI.GENERATE avec le texte de l'article comme requête. Par défaut, la sortie inclut le texte récapitulatif généré, la réponse complète et un état vide si la fonction renvoie un résultat positif.
Dans la console Google Cloud , accédez à la page BigQuery.
Dans l'éditeur de requête, saisissez la requête suivante :
WITH bbc_news AS ( SELECT body FROM `bigquery-public-data.bbc_news.fulltext` LIMIT 5 ) SELECT AI.GENERATE(body, endpoint => 'gemini-2.5-pro') AS news FROM bbc_news;
Le résultat ressemble à ce qui suit :
+---------------------------------------------+------------------------------------+---------------+ | news.result | news.full_response | news.status | +---------------------------------------------+------------------------------------+---------------+ | This article presents a debate about the | {"candidates":[{"avg_logprobs": | | | "digital divide" between rich and poor | -0.31465074559841777, content": | | | nations. Here's a breakdown of the key... | {"parts":[{"text":"This article... | | +---------------------------------------------+------------------------------------+---------------+ | This article discusses how advanced | {"candidates":[{"avg_logprobs": | | | mapping technology is aiding humanitarian | -0.21313422900091983,"content": | | | efforts in Darfur, Sudan. Here's a... | {"parts":[{"text":"This article... | | +---------------------------------------------+------------------------------------+---------------+ | ... | ... | ... | +---------------------------------------------+------------------------------------+---------------+
Résumer du texte et générer des résultats structurés
Pour générer du texte à l'aide de la fonction AI.GENERATE et utiliser l'argument output_schema de la fonction AI.GENERATE pour mettre en forme le résultat, procédez comme suit :
Dans la console Google Cloud , accédez à la page "BigQuery".
Dans l'éditeur de requête, saisissez la requête suivante :
WITH bbc_news AS ( SELECT body FROM `bigquery-public-data`.bbc_news.fulltext LIMIT 5 ) SELECT news.good_sentiment, news.summary FROM bbc_news, UNNEST(ARRAY[AI.GENERATE(body, endpoint => 'gemini-2.5-pro', output_schema => 'summary STRING, good_sentiment BOOL')]) AS news;
Le résultat ressemble à ce qui suit :
+----------------+--------------------------------------------+ | good_sentiment | summary | +----------------+--------------------------------------------+ | true | A World Bank report suggests the digital | | | divide is rapidly closing due to increased | | | access to technology in developing... | +----------------+--------------------------------------------+ | false | A massive earthquake and subsequent | | | waves have devastated southern Asia, with | | | Sri Lanka, India, Indonesia, and... | +----------------+--------------------------------------------+ | ... | ... | +----------------+--------------------------------------------+
Transcrire et traduire des contenus vidéo
Vous pouvez traiter des fichiers multimédias stockés dans Cloud Storage à l'aide de tables d'objets externes. Les étapes suivantes expliquent comment créer une table d'objets pour les fichiers vidéo, transcrire le contenu vidéo en japonais et traduire le texte en anglais.
Dans la console Google Cloud , accédez à la page "BigQuery".
Dans l'éditeur de requêtes, exécutez la requête suivante pour créer la table d'objets :
CREATE OR REPLACE EXTERNAL TABLE `bqml_tutorial.video` WITH CONNECTION `us.test_connection` OPTIONS ( object_metadata = 'SIMPLE', uris = ['gs://cloud-samples-data/generative-ai/video/*']);
Dans l'éditeur de requête, exécutez la requête suivante pour transcrire et traduire le fichier
pixel8.mp4:SELECT AI.GENERATE( (OBJ.GET_ACCESS_URL(ref, 'r'), 'Transcribe the video in Japanese and then translate to English.'), endpoint => 'gemini-2.5-pro', output_schema => 'japanese_transcript STRING, english_translation STRING' ).* EXCEPT (full_response, status) FROM `bqml_tutorial.video` WHERE REGEXP_CONTAINS(uri, 'pixel8.mp4');
Le résultat ressemble à ce qui suit :
+--------------------------------------------+--------------------------------+ | english_translation | japanese_transcript | +--------------------------------------------+--------------------------------+ | My name is Saeka Shimada. I'm a | 島田 さえか です 。 東京 で フ | | photographer in Tokyo. Tokyo has many | ォトグラファー を し て い ま | | faces. The city at night is totally... | す 。 東京 に は いろんな 顔 が | +--------------------------------------------+--------------------------------+
Analyser le contenu d'un fichier audio
Suivez ces étapes pour créer une table d'objets sur des contenus audio publics, puis analysez le contenu des fichiers audio.
Dans la console Google Cloud , accédez à la page "BigQuery".
Dans l'éditeur de requêtes, exécutez la requête suivante pour créer la table d'objets :
CREATE OR REPLACE EXTERNAL TABLE `bqml_tutorial.audio` WITH CONNECTION `us.test_connection` OPTIONS ( object_metadata = 'SIMPLE', uris = ['gs://cloud-samples-data/generative-ai/audio/*']);
Dans l'éditeur de requête, exécutez la requête suivante pour analyser les fichiers audio :
SELECT AI.GENERATE( (OBJ.GET_ACCESS_URL(ref, 'r'), 'Summarize the content of this audio file.'), endpoint => 'gemini-2.5-pro', output_schema => 'topic ARRAY<STRING>, summary STRING' ).* EXCEPT (full_response, status), uri FROM `bqml_tutorial.audio`;
Les résultats ressemblent à ce qui suit :
+--------------------------------------------+-----------------------------------------------------------+ | summary | topic | uri | +--------------------------------------------+-----------------------------------------------------------+ | The audio contains a distinctive 'beep' | beep sound | gs://cloud-samples-data/generativ... | | sound, followed by the characteristic | | | | sound of a large vehicle or bus backing.. | | | +--------------------------------------------+--------------------+--------------------------------------+ | | vehicle backing up | | | +--------------------+ | | | bus | | | +--------------------+ | | | alarm | | +--------------------------------------------+--------------------+--------------------------------------+ | The speaker introduces themselves | Introduction | gs://cloud-samples-data/generativ... | | as Gemini and expresses their excitement | | | | and readiness to dive into something.. | | | +--------------------------------------------+--------------------+--------------------------------------+ | | Readiness | | | +--------------------+ | | | Excitement | | | +--------------------+ | | | Collaboration | | +--------------------------------------------+--------------------+--------------------------------------+ | ... | ... | ... | +--------------------------------------------+--------------------+--------------------------------------+
Effectuer un nettoyage
Pour éviter que les ressources utilisées lors de ce tutoriel soient facturées sur votre compte Google Cloud, supprimez le projet contenant les ressources, ou conservez le projet et supprimez les ressources individuelles.
- Dans la console Google Cloud , accédez à la page Gérer les ressources.
- Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
- Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.
Supprimer des ressources individuelles
Si vous souhaitez réutiliser le projet, supprimez les ressources que vous avez créées pour le tutoriel.
Console
Accédez à la page BigQuery.
Supprimer l'ensemble de données
bqml_tutorialLa suppression de l'ensemble de données entraîne également celle du modèle distant.Dans le volet Explorateur, développez votre projet et cliquez sur Ensembles de données.
Dans la liste Ensembles de données, cliquez sur l'ensemble de données
bqml_tutorial.Dans le volet "Détails", cliquez sur Supprimer.
Dans la boîte de dialogue Supprimer l'ensemble de données, cliquez sur Supprimer.
Supprimez la connexion :
Dans le volet Explorateur, développez votre projet et cliquez sur Connexions.
Dans la liste ID de connexion, cliquez sur la connexion que vous avez créée.
Dans le volet "Détails", cliquez sur Supprimer.
Dans la boîte de dialogue Supprimer la connexion, saisissez
deletepour confirmer la suppression.Cliquez sur Supprimer.
gcloud
Supprimez l'ensemble de données
bqml_tutorialet le modèle distant :bq rm --dataset --recursive bqml_tutorialSupprimez la connexion.
bq rm --connection PROJECT_ID.LOCATION.CONNECTION_IDRemplacez les éléments suivants :
- PROJECT_ID : ID de votre projet Google Cloud
- LOCATION : emplacement de la connexion
- CONNECTION_ID : ID de connexion
Étapes suivantes
- En savoir plus sur l'IA générative dans BigQuery
- En savoir plus sur le choix d'une fonction de génération de texte