Présentation de l'IA générative

Ce document décrit les fonctionnalités d'intelligence artificielle (IA) générative compatibles avec BigQuery ML. Ces fonctionnalités vous permettent d'effectuer des tâches d'IA dans BigQuery ML à l'aide de modèles Vertex AI pré-entraînés. Les tâches suivantes sont acceptées :

Vous accédez à un modèle Vertex AI pour exécuter l'une de ces fonctions en créant un dans BigQuery ML modèle distant qui représente le point de terminaison du modèle Vertex AI. Une fois que vous avez créé un modèle distant basé sur le modèle Vertex AI que vous souhaitez utiliser, vous accédez aux fonctionnalités de ce modèle en exécutant une fonction BigQuery ML sur le modèle distant.

Cette approche vous permet d'utiliser les fonctionnalités de ces modèles Vertex AI dans des requêtes SQL pour analyser les données BigQuery.

Workflow

Vous pouvez utiliser des modèles distants basés sur des modèles Vertex AI et des modèles distants basés sur des services Cloud AI conjointement avec des fonctions BigQuery ML afin d'effectuer des tâches d'analyse de données et d'IA générative complexes.

Le schéma suivant illustre certains workflows types dans lesquels vous pouvez utiliser ces fonctionnalités conjointement :

Schéma illustrant les workflows courants pour les modèles distants qui utilisent des modèles Vertex AI ou des services Cloud AI.

Génération de texte

La génération de texte est une forme d'IA générative dans laquelle le texte est généré à partir d'une requête ou d'une analyse de données. Vous pouvez effectuer une génération de texte à l'aide de données textuelles et multimodales.

Voici quelques cas d'utilisation courants de la génération de texte:

  • Générer des contenus originaux
  • Génération de code.
  • Générer des réponses par chat ou par e-mail
  • Brainstorming, par exemple en suggérant des pistes pour de futurs produits ou services
  • Personnalisation du contenu, comme les suggestions de produits
  • Classer les données en appliquant un ou plusieurs libellés au contenu pour le trier en catégories.
  • Identifier les principaux sentiments exprimés dans le contenu.
  • Résumez les idées ou impressions clés véhiculées par le contenu.
  • Identifier une ou plusieurs entités importantes dans des données textuelles ou visuelles.
  • Traduire le contenu de données textuelles ou audio dans une autre langue
  • Générer du texte correspondant au contenu verbal des données audio
  • Créer des sous-titres ou répondre à des questions sur des données visuelles

L'enrichissement des données est une étape courante après la génération de texte. Il consiste à enrichir les insights de l'analyse initiale en les combinant à des données supplémentaires. Par exemple, vous pouvez analyser des images d'articles de décoration intérieure pour générer du texte pour une colonne design_type, afin qu'une description soit associée au code SKU des articles, comme mid-century modern ou farmhouse.

Modèles compatibles

Les modèles Vertex AI suivants sont compatibles:

Pour envoyer des commentaires ou demander de l'aide concernant les modèles en version preview, envoyez un e-mail à l'adresse bqml-feedback@google.com.

Utiliser des modèles de génération de texte

Après avoir créé le modèle, vous pouvez utiliser la fonction ML.GENERATE_TEXT pour interagir avec ce modèle :

  • Pour les modèles distants basés sur les modèles Gemini 1.5 ou 2.0, vous pouvez utiliser la fonction ML.GENERATE_TEXT pour analyser du texte, des images, des contenus audio, vidéo ou PDF à partir d'une table d'objets avec une requête que vous fournissez en tant qu'argument de fonction. Vous pouvez également générer du texte à partir d'une requête que vous fournissez dans une requête ou d'une colonne d'une table standard.
  • Pour les modèles distants basés sur le modèle gemini-1.0-pro-vision, vous pouvez utiliser la fonction ML.GENERATE_TEXT pour analyser le contenu d'image ou de vidéo à partir d'une table d'objets avec une invite que vous fournissez en tant qu'argument de fonction.
  • Pour les modèles distants basés sur des modèles gemini-1.0-pro, text-bison, text-bison-32k ou text-unicorn, vous pouvez utiliser la fonction ML.GENERATE_TEXT avec une invite que vous fournissez dans une requête ou à partir d'une colonne d'une table standard.

Vous pouvez utiliser l'mise à la terre et les attributs de sécurité lorsque vous utilisez des modèles Gemini avec la fonction ML.GENERATE_TEXT, à condition d'utiliser une table standard pour la saisie. L'ancrage permet au modèle Gemini d'utiliser des informations supplémentaires provenant d'Internet pour générer des réponses plus spécifiques et factuelles. Les attributs de sécurité permettent au modèle Gemini de filtrer les réponses qu'il renvoie en fonction des attributs que vous spécifiez.

Lorsque vous créez un modèle distant qui fait référence à l'un des modèles suivants, vous pouvez éventuellement choisir de configurer le réglage supervisé simultanément:

  • gemini-1.5-pro-002
  • gemini-1.5-flash-002
  • gemini-1.0-pro-002 (bêta)

Toutes les inférences s'effectuent dans Vertex AI. Les résultats sont stockés dans BigQuery.

Utilisez les sujets suivants pour essayer la génération de texte dans BigQuery ML:

Génération d'embeddings

Un échantillon est un vecteur numérique de grande dimension qui représente une entité donnée, comme un texte ou un fichier audio. Générer des représentations vectorielles continues vous permet de capturer la sémantique de vos données de manière à faciliter la réflexion et la comparaison des données.

Voici quelques cas d'utilisation courants de la génération d'embeddings:

  • Utilisation de la génération augmentée de récupération (RAG) pour améliorer les réponses du modèle aux requêtes des utilisateurs en référençant des données supplémentaires provenant d'une source fiable. Le RAG offre une meilleure précision factuelle et une plus grande cohérence des réponses, et permet également d'accéder à des données plus récentes que les données d'entraînement du modèle.
  • Effectuer une recherche multimodale Par exemple, en utilisant la saisie de texte pour rechercher des images.
  • Effectuer une recherche sémantique pour trouver des éléments similaires à des fins de recommandation, de substitution et de déduplication des enregistrements.
  • Créer des représentations vectorielles continues à utiliser avec un modèle de clustering en k-moyennes

Modèles compatibles

Les modèles suivants sont compatibles :

  • Pour créer des représentations vectorielles continues de texte, vous pouvez utiliser les modèles text-embedding et text-multilingual-embedding de Vertex AI.
  • Pour créer des embeddings multimodaux, qui peuvent incorporer du texte, des images et des vidéos dans le même espace sémantique, vous pouvez utiliser le modèle multimodalembedding de Vertex AI.
  • Pour créer des représentations vectorielles continues pour des données de variables indépendantes et identiquement distribuées (IID), vous pouvez utiliser un modèle d'analyse des composants principaux (ACP) BigQuery ML ou un modèle auto-encodeur.
  • Pour créer des représentations vectorielles continues pour des données utilisateur ou d'éléments, vous pouvez utiliser un modèle de factorisation matricielle BigQuery ML.

Pour obtenir un embedding textuel plus petit, essayez d'utiliser un modèle TensorFlow pré-entraîné tel que NNLM, SWIVEL ou BERT.

Utiliser des modèles de génération d'embeddings

Après avoir créé le modèle, vous pouvez utiliser la fonction ML.GENERATE_EMBEDDING pour interagir avec lui. Pour tous les types de modèles compatibles, ML.GENERATE_EMBEDDING fonctionne avec les données des tables standards. Pour les modèles d'embedding multimodaux, ML.GENERATE_EMBEDDING fonctionne également avec le contenu visuel dans des tables d'objets.

Pour les modèles distants, toutes les inférences ont lieu dans Vertex AI. Pour les autres types de modèles, toutes les inférences ont lieu dans BigQuery. Les résultats sont stockés dans BigQuery.

Utilisez les sujets suivants pour essayer la génération de texte dans BigQuery ML:

Étape suivante