API Gemini Vertex AI

Si vous ne connaissez pas l'API Gemini, l'API Gemini Developer est le fournisseur d'API recommandé pour les développeurs Android. Toutefois, si vous avez des exigences spécifiques concernant l'emplacement des données ou si vous êtes déjà intégré à l'environnement Vertex AI ou Google Cloud, vous pouvez utiliser l'API Gemini Vertex AI.

Premiers pas

Avant d'interagir avec l'API Gemini Vertex AI directement depuis votre application, vous pouvez tester des requêtes dans Vertex AI Studio.

Configurer un projet Firebase et associer votre application à Firebase

Lorsque vous êtes prêt à appeler l'API depuis votre application, suivez les instructions de l'étape 1 du guide de démarrage de Firebase AI Logic pour configurer Firebase et activer les API et services requis.

Ajouter les dépendances Gradle

Ajoutez les dépendances Gradle suivantes au module de votre application :

Kotlin

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:34.15.0"))

  // Add the dependencies for the Firebase AI Logic and App Check libraries
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")
  implementation("com.google.firebase:firebase-appcheck-debug")
}

Java

dependencies {
  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:34.15.0"))

  // Add the dependencies for the Firebase AI Logic and App Check libraries
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")
  implementation("com.google.firebase:firebase-appcheck-debug")

  // 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")
}

Configurer le fournisseur de débogage App Check pour le développement local

À partir de début juillet 2026, dans le workflow de configuration guidée pour la logique d'IA dans la console Firebase, Firebase App Check sera automatiquement appliqué pour protéger l'API Gemini. Pour le développement local, vous devez configurer le fournisseur de débogage App Check afin de contourner l'attestation tout en maintenant l'application d'App Check.

  1. Dans votre build de débogage, configurez App Check pour qu'il utilise la fabrique de fournisseurs de débogage :

    Kotlin

    Firebase.initialize(context = this)
    Firebase.appCheck.installAppCheckProviderFactory(
        DebugAppCheckProviderFactory.getInstance(),
    )
    

    Java

    FirebaseApp.initializeApp(/*context=*/ this);
    FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
    firebaseAppCheck.installAppCheckProviderFactory(
            DebugAppCheckProviderFactory.getInstance());
    
  2. Obtenez votre jeton de débogage :

    1. Exécutez votre application dans l'émulateur ou sur votre appareil de test.

    2. Recherchez le jeton de débogage App Check dans vos journaux. Exemple :

      D DebugAppCheckProvider: Enter this debug secret into the allow list
      in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
      
    3. Copiez le jeton (par exemple, 123a4567-b89c-12d3-e456-789012345678).

  3. Enregistrez votre jeton de débogage auprès d'App Check :

    1. Dans la console Firebase, accédez à Sécurité > App Check > onglet Applications.

    2. Recherchez votre application, cliquez sur le menu à développer (), puis sélectionnez Gérer les jetons de débogage.

    3. Suivez les instructions à l'écran pour enregistrer votre jeton de débogage.

Pour en savoir plus sur le fournisseur de débogage (y compris sur la façon d'obtenir un jeton de débogage), consultez la documentation officielle d'App Check.

Initialiser le modèle génératif

Commencez par instancier un GenerativeModel et spécifier le nom du modèle :

Kotlin

val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
    .generativeModel("gemini-2.5-flash")

Java

GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
        .generativeModel("gemini-2.5-flash");

GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI);

Pour en savoir plus sur les modèles Gemini disponibles, consultez la documentation Firebase. Vous pouvez également en savoir plus sur la configuration des paramètres du modèle.

Générer du texte

Pour générer une réponse textuelle, appelez generateContent() avec votre requête.

Kotlin

suspend fun generateText(model: GenerativeModel) {
    // Note: generateContent() is a suspend function, which integrates well
    // with existing Kotlin code.
    val response = model.generateContent("Write a story about a magic backpack.")
    // ...
}

Java

Content prompt = new Content.Builder()
        .addText("Write a story about a magic backpack.")
        .build();

ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
    @Override
    public void onSuccess(GenerateContentResponse result) {
        String resultText = result.getText();
        // ...
    }

    @Override
    public void onFailure(Throwable t) {
        t.printStackTrace();
    }
}, executor);

Comme avec l'API Gemini Developer, vous pouvez également transmettre des images, des fichiers audio, des vidéos et des fichiers avec votre requête textuelle. Pour en savoir plus, consultez Interagir avec l'API Gemini Developer depuis votre application.

Pour en savoir plus sur le SDK Firebase AI Logic, consultez la documentation Firebase.