Créez des conversations multitours (chat) avec l'API Gemini


Avec Gemini API, vous pouvez créer des conversations libres sur plusieurs tours. Le SDK Vertex AI in Firebase simplifie le processus en gérant l'état de la conversation. Contrairement à generateContentStream() ou generateContent(), vous n'avez donc pas besoin de stocker vous-même l'historique des conversations.

Avant de commencer

Si vous ne l'avez pas déjà fait, suivez le guide de démarrage des SDK Vertex AI in Firebase. Assurez-vous d'avoir effectué les opérations suivantes:

  1. Configurez un projet Firebase nouveau ou existant, y compris en utilisant le forfait Blaze et en activant les API requises.

  2. Associez votre application à Firebase, y compris en l'enregistrant et en ajoutant votre configuration Firebase à votre application.

  3. Ajoutez le SDK et initialisez le service Vertex AI et le modèle génératif dans votre application.

Une fois que vous avez connecté votre application à Firebase, ajouté le SDK et initialisé le service Vertex AI et le modèle génératif, vous pouvez appeler Gemini API.

Envoyer une requête d'invite de chat

Pour créer une conversation multitour (comme un chat), commencez par initialiser le chat en appelant startChat(). Utilisez ensuite sendMessageStream() (ou sendMessage()) pour envoyer un nouveau message utilisateur, qui ajoutera également le message et la réponse à l'historique de chat.

Il existe deux options possibles pour role associées au contenu d'une conversation:

  • user: rôle qui fournit les requêtes. Cette valeur est la valeur par défaut pour les appels à sendMessageStream() (ou sendMessage()), et la fonction génère une exception si un autre rôle est transmis.

  • model: rôle qui fournit les réponses. Ce rôle peut être utilisé lors de l'appel de startChat() avec un history existant.

Choisissez si vous souhaitez diffuser la réponse (sendMessageStream) ou attendre la réponse jusqu'à ce que le résultat complet soit généré (sendMessage).

Streaming

Vous pouvez accélérer les interactions en n'attendant pas le résultat complet de la génération du modèle, et en utilisant plutôt le streaming pour gérer les résultats partiels.

Sans streaming

Vous pouvez également attendre le résultat complet au lieu de le diffuser en streaming. Le résultat n'est renvoyé qu'une fois que le modèle a terminé l'ensemble du processus de génération.

Découvrez comment choisir un modèle Gemini et éventuellement une localisation adaptée à votre cas d'utilisation et à votre application.

Qu'est-ce que tu sais faire d'autre ?

  • Découvrez comment compter les jetons avant d'envoyer des requêtes longues au modèle.
  • Configurez Cloud Storage for Firebase pour pouvoir inclure de gros fichiers dans vos requêtes multimodales et disposer d'une solution plus gérée pour fournir des fichiers dans les requêtes. Les fichiers peuvent inclure des images, des PDF, des vidéos et des fichiers audio.
  • Commencez à penser à la préparation de la production, y compris à la configuration de Firebase App Check pour protéger Gemini API contre les utilisations abusives par des clients non autorisés.

Essayer d'autres fonctionnalités de Gemini API

Découvrez comment contrôler la génération de contenu.

Vous pouvez également tester des requêtes et des configurations de modèle à l'aide de Vertex AI Studio.

En savoir plus sur les modèles Gemini

Découvrez les modèles disponibles pour différents cas d'utilisation, ainsi que leurs quotas et tarifs.


Envoyer des commentaires sur votre expérience avec Vertex AI in Firebase