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 de base 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 pour analyser les données BigQuery à l'aide de SQL.

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.

IA générative

Vous pouvez utiliser de grands modèles de langage (LLM) pour effectuer des tâches, telles que la synthèse et la génération de texte. Par exemple, vous pouvez résumer un rapport long ou analyser le sentiment exprimé dans les commentaires des clients. Vous pouvez utiliser des modèles de langage visuel (VLM) pour analyser du contenu visuel tel que des images et des vidéos pour des tâches telles que la description d'image et les Questions/Réponses visuelles. Vous pouvez utiliser des modèles multimodaux pour effectuer les mêmes tâches que les LLM et les VLM, ainsi que des tâches supplémentaires telles que la transcription audio et l'analyse de documents.

Pour effectuer des tâches d'IA générative, vous pouvez créer une référence à un modèle de fondation Vertex AI pré-entraîné en créant un modèle distant et en spécifiant le nom du modèle pour la valeur ENDPOINT. Les modèles Vertex AI suivants sont compatibles :

  • gemini-1.5-pro (bêta)
  • gemini-1.0-pro
  • gemini-1.0-pro-vision (bêta)
  • text-bison
  • text-bison-32k
  • text-unicorn

Lorsque vous créez un modèle distant faisant référence à n'importe quelle version d'un modèle text-bison de Vertex AI, vous pouvez éventuellement choisir de configurerle réglage supervisé (preview ) simultanément.

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 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.
  • 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'une image ou d'une 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 le modèle gemini-1.5-pro, vous pouvez utiliser la fonction ML.GENERATE_TEXT pour analyser du texte, des images, du contenu audio, vidéo ou PDF à partir d'une table d'objets avec une invite que vous fournissez en tant qu'argument de fonction. Vous pouvez également générer du texte à partir d'une invite que vous fournissez dans une requête ou à partir d'une colonne d'une table standard.

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

Pour en savoir plus, essayez de générer du texte avec la fonction ML.GENERATE_TEXT.

Embedding

Vous pouvez utiliser les représentations vectorielles continues pour identifier des éléments sémantiquement similaires. Par exemple, vous pouvez utiliser les représentations vectorielles continues de texte pour déterminer le degré de similitude entre deux textes. Si deux textes sont sémantiquement similaires, leurs embeddings respectifs sont proches l'un de l'autre dans l'espace d'embedding.

Vous pouvez utiliser des modèles BigQuery ML pour créer les types de représentations vectorielles continues suivants:

  • Pour créer des embeddings de texte, vous pouvez créer une référence à l'un des modèles de fondation d'embedding de texte Vertex AI textembedding-gecko ou textembedding-gecko-multilingual en créant un modèle distant et en spécifiant le nom LLM pour la valeur ENDPOINT.
  • 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 créer une référence au LLM multimodalembedding de Vertex AI en créant un modèle distant et en spécifiant le nom LLM pour la valeur ENDPOINT. Cette fonctionnalité est disponible en version preview.
  • 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) ou un modèle auto-encodeur. Cette fonctionnalité est disponible en version preview.
  • 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. Cette fonctionnalité est disponible en version bêta.

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.

Pour en savoir plus, essayez de créer des représentations vectorielles continues de texte et des représentations vectorielles continues d'images avec la fonction ML.GENERATE_EMBEDDING.

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

Pour savoir comment choisir le meilleur modèle pour votre cas d'utilisation d'embedding, consultez la page Choisir un modèle d'embedding de texte.

Étapes suivantes