Inizia a utilizzare l'API Gemini mediante Vertex AI negli SDK Firebase


Questa guida illustra come iniziare a effettuare chiamate a Vertex AI Gemini API direttamente dalla tua app utilizzando l'SDK Vertex AI in Firebase per la piattaforma scelta.

Tieni presente che puoi utilizzare questa guida anche per iniziare ad accedere ai modelli Imagen utilizzando gli SDK Vertex AI in Firebase.

Prerequisiti

Questa guida presuppone che tu abbia dimestichezza con l'utilizzo di Android Studio per sviluppare app per Android.

  • Assicurati che l'ambiente di sviluppo e l'app per Android soddisfino i seguenti requisiti:

    • Android Studio (ultima versione)
    • L'app per Android deve avere come target il livello API 21 o versioni successive.
  • (Facoltativo) Dai un'occhiata all'app di esempio.

    Scarica l'app di esempio

    Puoi provare rapidamente l'SDK, visualizzare un'implementazione completa di vari casi d'uso o utilizzare l'app di esempio se non hai una tua app per Android. Per utilizzare l'app di esempio, dovrai collegarla a un progetto Firebase.

Passaggio 1: configura un progetto Firebase e collega la tua app a Firebase

Se hai già un progetto Firebase e un'app collegata a Firebase

  1. Nella console Firebase, vai alla pagina Esegui il build con Gemini.

  2. Fai clic sulla scheda Vertex AI in Firebase per avviare un flusso di lavoro che ti aiuta a completare le seguenti attività:

  3. Vai al passaggio successivo di questa guida per aggiungere l'SDK alla tua app.

Se non hai già un progetto Firebase e un'app collegata a Firebase

  1. Accedi alla console Firebase.

  2. Fai clic su Crea progetto e utilizza una delle seguenti opzioni:

    • Opzione 1: crea un progetto Firebase completamente nuovo (e il relativo progetto Google Cloud sottostante automaticamente) inserendo un nuovo nome nel primo passaggio del flusso di lavoro "Crea progetto".

    • Opzione 2: "Aggiungi Firebase" a un progetto Google Cloud esistente selezionando il nome del progetto Google Cloud dal menu a discesa nel primo passaggio del flusso di lavoro "Crea progetto".

    Tieni presente che, quando richiesto, non è necessario configurareGoogle Analytics per utilizzare gli SDK Vertex AI in Firebase.

  3. Nella console Firebase, vai alla pagina Esegui il build con Gemini.

  4. Fai clic sulla scheda Vertex AI in Firebase per avviare un flusso di lavoro che ti aiuta a completare le seguenti attività:

  1. Continua nel flusso di lavoro dell'IA generativa della console per collegare la tua app a Firebase, che include le seguenti attività:

    • Registrazione dell'app con il progetto Firebase.

    • Aggiungi il file di configurazione Firebase (google-services.json) e il plug-in Gradle google-services alla tua app.

  2. Nei passaggi successivi di questa guida, aggiungerai l'SDK Vertex AI in Firebase alla tua app e completerai l'inizializzazione richiesta specifica per l'utilizzo dell'SDK e di Gemini API.


Passaggio 2: aggiungi l'SDK

Dopo aver configurato il progetto Firebase e collegato l'app a Firebase (vedi il passaggio precedente), ora puoi aggiungere l'SDK Vertex AI in Firebase alla tua app.

L'SDK Vertex AI in Firebase per Android (firebase-vertexai) fornisce accesso alle API per interagire con i modelli Gemini e Imagen.

Nel file Gradle del modulo (a livello di app) (ad esempio <project>/<app-module>/build.gradle.kts), aggiungi la dipendenza per la libreria Vertex AI in Firebase per Android. Ti consigliamo di utilizzare Firebase Android BoM per controllare la versione della libreria.

KotlinJava
dependencies {
    // ... other androidx dependencies

    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:33.10.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")
}

Per Java, devi aggiungere altre due librerie.

dependencies {
    // ... other androidx dependencies

    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:33.10.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")
}

Con Firebase Android BoM, la tua app utilizzerà sempre versioni compatibili delle librerie Firebase per Android.

Se scegli di non utilizzare Firebase BoM, devi specificare ogni versione della libreria Firebase nella riga di dipendenza.

Tieni presente che se nella tua app utilizzi più librerie Firebase, ti consigliamo vivamente di utilizzare BoM per gestire le versioni delle librerie, in modo da garantire la compatibilità di tutte le versioni.

dependencies {
    // Add the dependency for the Vertex AI in Firebase library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-vertexai:16.2.0")
}

Passaggio 3: inizializza il servizio Vertex AI e il modello generativo

Prima di poter effettuare chiamate API e richiedere un modello Gemini, devi inizializzare il servizio Gemini e il modello generativo.Vertex AI

KotlinJava
Per Kotlin, i metodi in questo SDK sono funzioni sospese e devono essere chiamati da un ambito coroutine.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")
Per Java, i metodi di streaming in questo SDK restituiscono un tipo Publisher della libreria Reactive Streams.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

Dopo aver letto questa guida introduttiva, scopri come scegliere un modello e, facoltativamente, una località appropriata per il tuo caso d'uso e la tua app.

Passaggio 4: invia una richiesta di prompt a un modello

Ora che hai collegato la tua app a Firebase, aggiunto l'SDK e inizializzato il servizio Vertex AI e il modello generativo, puoi inviare una richiesta di prompt a un modello Vertex AI.Gemini

Puoi utilizzare generateContent() per generare testo da una richiesta di prompt di solo testo:

KotlinJava
Per Kotlin, i metodi in questo SDK sono funzioni sospese e devono essere chiamati da un ambito coroutine.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-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)
Per Java, i metodi in questo SDK restituiscono un ListenableFuture.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-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);

Cos'altro puoi fare?

Scopri di più sui modelli supportati

Scopri i modelli disponibili per vari casi d'uso e le relative quote e prezzi.

Provare altre funzionalità di Gemini API

Scopri come controllare la generazione di contenuti

Puoi anche sperimentare con i prompt e le configurazioni del modello utilizzando Vertex AI Studio.


Inviare un feedback sulla tua esperienza con Vertex AI in Firebase