Générer des embeddings textuels à l'aide d'un modèle Open Source et de la fonction AI.GENERATE_EMBEDDING

Ce tutoriel explique comment créer un modèle distant basé sur le modèle Open Source d'embedding textuel Qwen3-Embedding-0.6B, puis comment utiliser ce modèle avec la AI.GENERATE_EMBEDDING fonction pour intégrer des avis de films à partir de la bigquery-public-data.imdb.reviews table publique.

Autorisations requises

Pour exécuter ce tutoriel, vous devez disposer des rôles Identity and Access Management (IAM) suivants :

  • Créer et utiliser des ensembles de données, des connexions et des modèles BigQuery : Administrateur BigQuery (roles/bigquery.admin)
  • Accorder des autorisations au compte de service de la connexion : Administrateur IAM du projet (roles/resourcemanager.projectIamAdmin)
  • Déployer et annuler le déploiement de modèles dans Gemini Enterprise Agent Platform : Administrateur Agent Platform (roles/aiplatform.admin)

Ces rôles prédéfinis contiennent les autorisations requises pour effectuer les tâches décrites dans ce document. Pour afficher les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

  • Créer un ensemble de données : bigquery.datasets.create
  • Créer, déléguer et utiliser une connexion : bigquery.connections.*
  • Définir la connexion par défaut : bigquery.config.*
  • Définir les autorisations du compte de service : resourcemanager.projects.getIamPolicy et resourcemanager.projects.setIamPolicy
  • Déployer et annuler le déploiement d'un modèle Agent Platform :
    • aiplatform.endpoints.deploy
    • aiplatform.endpoints.undeploy
  • Créer un modèle et exécuter une inférence :
    • bigquery.jobs.create
    • bigquery.models.create
    • bigquery.models.getData
    • bigquery.models.updateData
    • bigquery.models.updateMetadata

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

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 that's represented by the remote model.

Obtenez une estimation des coûts en fonction de votre utilisation prévue, utilisez le simulateur de coût.

Les nouveaux utilisateurs de peuvent bénéficier d'un essai sans frais. Google Cloud

Pour en savoir plus sur les tarifs de BigQuery, consultez la page Tarifs de BigQuery dans la documentation BigQuery.

Les modèles Open Source que vous déployez sur Agent Platform sont facturés à l'heure machine. Cela signifie que la facturation commence dès que le point de terminaison est entièrement configuré et se poursuit jusqu'à ce que vous annuliez son déploiement. Pour en savoir plus sur les tarifs d'Agent Platform, consultez la page Tarifs d'Agent Platform.

Avant de commencer

  1. Dans la Google Cloud console, sur la page de sélection du projet, sélectionnez ou créez un Google Cloud projet.

    Rôles requis pour sélectionner ou créer un projet

    • Sélectionner un projet : la sélection d'un projet ne nécessite pas de rôle IAM spécifique Vous pouvez sélectionner n'importe quel projet pour lequel un rôle vous a été attribué.
    • Créer un projet : pour créer un projet, vous devez disposer du rôle Créateur de projet (roles/resourcemanager.projectCreator), qui contient l'autorisation resourcemanager.projects.create. Découvrez comment attribuer des rôles.

    Accéder au sélecteur de projet

  2. Vérifiez que la facturation est activée pour votre Google Cloud projet.

  3. Activez les API BigQuery, BigQuery Connection et Agent Platform.

    Rôles requis pour activer les API

    Pour activer les API, vous devez disposer du rôle IAM Administrateur d'utilisation du service (roles/serviceusage.serviceUsageAdmin), qui contient l'autorisation serviceusage.services.enable. Découvrez comment attribuer des rôles.

    Activer les API

Créer un ensemble de données

Créez un ensemble de données BigQuery pour stocker votre modèle de ML.

Console

  1. Dans la Google Cloud console, accédez à la page BigQuery.

    Accéder à la page "BigQuery"

  2. Dans le volet Explorateur, cliquez sur le nom de votre projet.

  3. Cliquez sur Afficher les actions > Créer un ensemble de données

  4. Sur la page Créer un ensemble de données, procédez comme suit :

    • Dans le champ ID de l'ensemble de données, saisissez bqml_tutorial.

    • Pour Type d'emplacement, sélectionnez Multirégional, puis sélectionnez US.

    • Conservez les autres paramètres par défaut, puis cliquez sur Créer un ensemble de données.

bq

Pour créer un ensemble de données, exécutez la bq mk --dataset commande.

  1. Créez un ensemble de données nommé bqml_tutorial avec l'emplacement des données défini sur US.

    bq mk --dataset \
      --location=US \
      --description "BigQuery ML tutorial dataset." \
      bqml_tutorial
  2. Vérifiez que l'ensemble de données a été créé :

    bq ls

API

Appelez la datasets.insert méthode avec une ressource d'ensemble de données définie.

{
  "datasetReference": {
     "datasetId": "bqml_tutorial"
  }
}

Créer le modèle distant

Créez un modèle distant représentant un modèle Agent Platform hébergé :

  1. Dans la Google Cloud console, accédez à la page BigQuery.

    Accéder à BigQuery

  2. Dans l'éditeur de requête, exécutez l'instruction suivante :

CREATE OR REPLACE MODEL `bqml_tutorial.qwen3_embedding_model`
  REMOTE WITH CONNECTION DEFAULT
  OPTIONS (
    HUGGING_FACE_MODEL_ID = 'Qwen/Qwen3-Embedding-0.6B'
);

L'exécution de la requête prend jusqu'à 20 minutes. Le modèle qwen3_embedding_model apparaît ensuite dans l'ensemble de données bqml_tutorial du volet Explorateur. Étant donné que la requête utilise une instruction CREATE MODEL pour créer un modèle, il n'y a aucun résultat de requête.

Effectuer un embedding textuel

Effectuez un embedding textuel sur avis de films IMDB en utilisant le modèle distant et la fonction AI.GENERATE_EMBEDDING :

  1. Dans la Google Cloud console, accédez à la page BigQuery.

    Accéder à BigQuery

  2. Dans l'éditeur de requête, saisissez l'instruction suivante pour effectuer un embedding textuel sur cinq avis de films :

    SELECT
      *
    FROM
      AI.GENERATE_EMBEDDING(
        MODEL `bqml_tutorial.qwen3_embedding_model`,
        (
          SELECT
            review AS content,
            *
          FROM
            `bigquery-public-data.imdb.reviews`
          LIMIT 5
        )
      );

    Les résultats incluent les colonnes suivantes :

    • embedding : tableau de valeurs doubles représentant les embeddings générés.
    • status: état de réponse d'API pour la ligne correspondante. Si l'opération a abouti, cette valeur est vide.
    • content : texte d'entrée à partir duquel extraire les embeddings.
    • Toutes les colonnes de la table bigquery-public-data.imdb.reviews.

Annuler le déploiement du modèle

Si vous choisissez de ne pas supprimer votre projet comme recommandé, vous devez annuler le déploiement du modèle d'embedding Qwen3 dans Agent Platform pour éviter de continuer à être facturé. BigQuery annule automatiquement le déploiement du modèle après une période d'inactivité spécifiée (6,5 heures par défaut). Vous pouvez également annuler immédiatement le déploiement du modèle à l'aide de l' ALTER MODEL instruction, comme illustré dans l'exemple suivant :

ALTER MODEL `bqml_tutorial.qwen3_embedding_model`
SET OPTIONS (deploy_model = false);

Pour en savoir plus, consultez Annulation automatique ou immédiate du déploiement d'un modèle Open Source.

Libérer de l'espace

  1. Dans la Google Cloud console, accédez à la page Gérer les ressources.

    Accéder à la page "Gérer les ressources"

  2. Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
  3. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez Arrêter pour supprimer le projet.

Étape suivante