Ce guide vous explique comment commencer à effectuer des appels à Vertex AI Gemini API directement à partir de votre application à l'aide du SDK Vertex AI in Firebase pour la plate-forme de votre choix.
Prérequis
Ce guide suppose que vous savez utiliser Android Studio pour développer des applications pour Android.
Assurez-vous que votre environnement de développement et votre application Android répondent aux exigences suivantes:
- Android Studio (dernière version)
- Votre application Android doit cibler le niveau d'API 21 ou supérieur.
(Facultatif) Découvrez l'application exemple.
Téléchargez l'exemple d'application
Vous pouvez tester rapidement le SDK, voir une implémentation complète de différents cas d'utilisation ou utiliser l'application exemple si vous ne disposez pas de votre propre application Android. Pour utiliser l'application exemple, vous devez l'associer à un projet Firebase.
Étape 1: Configurer un projet Firebase et associer votre application à Firebase
Si vous disposez déjà d'un projet Firebase et d'une application connectée à Firebase
Dans la console Firebase, accédez à la page Compiler avec Gemini.
Cliquez sur la fiche Vertex AI in Firebase pour lancer un workflow qui vous aide à effectuer les tâches suivantes:
Passez à la formule Blaze avec paiement à l'usage.
Activez les API requises dans votre projet (API Vertex AI et API Vertex AI in Firebase).
Passez à l'étape suivante de ce guide pour ajouter le SDK à votre application.
Si vous ne disposez pas encore d'un projet Firebase et d'une application connectée à Firebase
Étape 2: Ajouter le SDK
Une fois votre projet Firebase configuré et votre application connectée à Firebase (voir l'étape précédente), vous pouvez ajouter le SDK Vertex AI in Firebase à votre application.
Le SDK Vertex AI in Firebase pour Android (firebase-vertexai
) permet d'accéder à Vertex AI Gemini API.
Dans votre fichier Gradle de votre module (au niveau de l'application) (comme <project>/<app-module>/build.gradle.kts
), ajoutez la dépendance pour la bibliothèque Vertex AI in Firebase pour Android.
Nous vous recommandons d'utiliser Firebase Android BoM pour contrôler le contrôle des versions de la bibliothèque.
Kotlin+KTX
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.6.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") }
Java
Pour Java, vous devez ajouter deux bibliothèques supplémentaires.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.6.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") // Required for one-shot operations (to use `ListenableFuture` from Guava Android) implementation("com.google.guava:guava:31.0.1-android") // Required for streaming operations (to use `Publisher` from Reactive Streams) implementation("org.reactivestreams:reactive-streams:1.0.4") }
En utilisant Firebase Android BoM, votre application utilisera toujours des versions compatibles des bibliothèques Firebase Android.
Étape 3: Initialisez le service Vertex AI et le modèle génératif
Avant de pouvoir effectuer des appels d'API, vous devez initialiser le service Vertex AI et le modèle génératif.
Kotlin+KTX
Pour Kotlin, les méthodes de ce SDK sont des fonctions de suspension et doivent être appelées à partir d'un champ d'application de coroutine.// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash")
Java
Pour Java, les méthodes de streaming de ce SDK renvoient un typePublisher
de la bibliothèque Reactive Streams.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-1.5-flash");
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Une fois que vous avez terminé le guide de démarrage, découvrez comment choisir un modèle Gemini et (facultatif) une position adaptée à votre cas d'utilisation et à votre application.
Étape 4: Appeler Vertex AI Gemini API
Maintenant que vous avez connecté votre application à Firebase, ajouté le SDK et initialisé le service Vertex AI et le modèle génératif, vous êtes prêt à appeler Vertex AI Gemini API.
Vous pouvez utiliser generateContent()
pour générer du texte à partir d'une requête d'invite textuelle uniquement:
Kotlin+KTX
Pour Kotlin, les méthodes de ce SDK sont des fonctions de suspension et doivent être appelées à partir d'un champ d'application de coroutine.// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash")
// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
val response = generativeModel.generateContent(prompt)
print(response.text)
Java
Pour Java, les méthodes de ce SDK renvoient unListenableFuture
.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-1.5-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
// Provide a prompt that contains text
Content prompt = new Content.Builder()
.addText("Write a story about a magic backpack.")
.build();
// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
@Override
public void onSuccess(GenerateContentResponse result) {
String resultText = result.getText();
System.out.println(resultText);
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
}, executor);
Qu'est-ce que tu sais faire d'autre ?
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.
Essayer d'autres fonctionnalités de Gemini API
- Découvrez comment générer du texte à partir de requêtes textuelles uniquement, y compris comment diffuser la réponse.
- Générer du texte à partir de requêtes multimodales (y compris du texte, des images, des PDF, des vidéos et de l'audio)
- Créez des conversations multitours (chat).
- Générez une sortie structurée (comme JSON) à partir d'invites textuelles et multimodales.
- Utilisez l'appel de fonction pour connecter des modèles génératifs à des systèmes et des informations externes.
Découvrez comment contrôler la génération de contenu.
- Comprendre la conception des requêtes, y compris les bonnes pratiques, les stratégies et les exemples de requêtes.
- Configurez les paramètres du modèle, comme la température et le nombre maximal de jetons de sortie.
- Utilisez les paramètres de sécurité pour ajuster la probabilité d'obtenir des réponses pouvant être considérées comme dangereuses.
Envoyer des commentaires sur votre expérience avec Vertex AI in Firebase