Esegui la migrazione agli SDK Firebase AI Logic dalla versione GA di Vertex AI negli SDK Firebase


Firebase AI Logic e i relativi SDK client in precedenza si chiamavano "Vertex AI in Firebase". Per riflettere meglio i nostri servizi e funzionalità ampliati (ad esempio, ora supportiamo Gemini Developer API!), abbiamo rinominato e ricompattato i nostri servizi in Firebase AI Logic.

Per accedere in modo sicuro ai modelli di AI generativa di Google direttamente dalle tue app web o mobile, ora puoi scegliere un fornitore "Gemini API", ovvero Vertex AI Gemini API, disponibile da tempo, o Gemini Developer API, ora disponibile. Ciò significa che ora hai la possibilità di utilizzare l'Gemini Developer API, che offre un livello senza costi con limiti di frequenza e quote ragionevoli.

Panoramica dei passaggi per eseguire la migrazione agli SDK Firebase AI Logic 

  • Passaggio 1: scegli il miglior fornitore di "Gemini API" per la tua app e i tuoi casi d'uso.

  • Passaggio 2: configura il progetto Firebase in modo da poter utilizzare Gemini Developer API.
    Applicabile solo se passi all'utilizzo di Gemini Developer API anziché di Vertex AI Gemini API.

  • Passaggio 3: aggiorna la libreria utilizzata nella tua app.

  • Passaggio 4: aggiorna l'inizializzazione nell'app.

  • Passaggio 5: aggiorna il codice a seconda delle funzionalità che utilizzi.

Passaggio 1: scegli il miglior fornitore di "API Gemini" per la tua app

Con questa migrazione, puoi scegliere il fornitore di "Gemini API":

  • Le vecchie SDK "Vertex AI in Firebase" potevano utilizzare solo Vertex AI Gemini API.

  • I nuovi SDK Firebase AI Logic ti consentono di scegliere quale provider di "Gemini API" vuoi chiamare direttamente dalla tua app web o mobile: Gemini Developer API o Vertex AI Gemini API.

Esamina le differenze tra l'utilizzo dei due fornitori Gemini API, soprattutto in termini di funzionalità supportate, prezzi e limiti di frequenza. Ad esempio, Gemini Developer API non supporta la fornitura di file utilizzando URL Cloud Storage, ma potrebbe essere una buona scelta se vuoi usufruire del livello senza costi e della quota ragionevole.

Passaggio 2: configura il progetto Firebase in modo da poter utilizzare Gemini Developer API

Questo passaggio è obbligatorio solo se vuoi passare all'utilizzo di Gemini Developer API con gli SDK client Firebase AI Logic. Tuttavia, se vuoi continuare a utilizzare Vertex AI Gemini API, vai al passaggio successivo.

Tieni presente che è possibile attivare contemporaneamente entrambi i provider "API Gemini" nel tuo progetto.

  1. Nella console Firebase, vai alla pagina Firebase AI Logic.

  2. Vai alla scheda Impostazioni e seleziona Gemini Developer API.

  3. Attiva Gemini Developer API.

    La console si assicurerà che le API richieste siano abilitate e genererà una chiave API Gemini nel tuo progetto Firebase.
    Non aggiungere questa chiave API Gemini al codebase della tua app. Scopri di più.

  4. Continua a seguire questa guida alla migrazione per aggiornare la libreria e l'inizializzazione nella tua app.

Passaggio 3: aggiorna la libreria utilizzata nella tua app

Aggiorna il codebase dell'app per utilizzare la libreria Firebase AI Logic.

Swift

  1. In Xcode, con il progetto dell'app aperto, aggiorna il pacchetto Firebase alla versione 11.13.0 o successive utilizzando una delle seguenti opzioni:

    • Opzione 1: aggiorna tutti i pacchetti. Vai a File > Pacchetti > Aggiorna alle versioni più recenti dei pacchetti.

    • Opzione 2: aggiorna Firebase singolarmente. Vai al pacchetto Firebase nella sezione Package Dependencies (Dipendenze dei pacchetti). Fai clic con il tasto destro del mouse sul pacchetto Firebase e seleziona Aggiorna pacchetto.

  2. Assicurati che il pacchetto Firebase ora mostri la versione 11.13.0 o successive. In caso contrario, verifica che i requisiti del pacchetto specificati consentano l'aggiornamento alla versione 11.13.0 o successive.

  3. Seleziona la destinazione della tua app nell'editor del progetto, quindi vai alla sezione Framework, librerie e contenuti incorporati.

  4. Aggiungi la nuova libreria: seleziona il pulsante + e poi aggiungi FirebaseAI dal pacchetto Firebase.

  5. Dopo aver completato la migrazione dell'app (vedi le sezioni rimanenti di questa guida), assicurati di rimuovere la vecchia libreria:
    seleziona FirebaseVertexAI, quindi premi il pulsante .

Kotlin

  1. Nel file Gradle del modulo (a livello di app) (di solito <project>/<app-module>/build.gradle.kts o <project>/<app-module>/build.gradle), sostituisci le vecchie dipendenze (se applicabile) con le seguenti.

    Tieni presente che potrebbe essere più facile eseguire la migrazione del codebase dell'app (vedi le sezioni rimanenti di questa guida) prima di eliminare la vecchia dipendenza.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:33.16.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. Sincronizza il tuo progetto Android con i file Gradle.

Tieni presente che se scegli di non utilizzare Firebase Android BoM, aggiungi solo la dipendenza per la libreria firebase-ai e accetta l'ultima versione suggerita da Android Studio.

Java

  1. Nel file Gradle del modulo (a livello di app) (di solito <project>/<app-module>/build.gradle.kts o <project>/<app-module>/build.gradle), sostituisci le vecchie dipendenze (se applicabile) con le seguenti.

    Tieni presente che potrebbe essere più facile eseguire la migrazione del codebase dell'app (vedi le sezioni rimanenti di questa guida) prima di eliminare la vecchia dipendenza.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:33.16.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. Sincronizza il tuo progetto Android con i file Gradle.

Tieni presente che se scegli di non utilizzare Firebase Android BoM, aggiungi solo la dipendenza per la libreria firebase-ai e accetta l'ultima versione suggerita da Android Studio.

Web

  1. Ottieni l'ultima versione dell'SDK Firebase JS per il web utilizzando npm:

    npm i firebase@latest

    OPPURE

    yarn add firebase@latest
  2. Ovunque tu abbia importato la libreria, aggiorna le istruzioni di importazione in modo che utilizzino firebase/ai.

    Tieni presente che potrebbe essere più facile eseguire la migrazione del codebase della tua app (vedi le sezioni rimanenti di questa guida) prima di eliminare le importazioni precedenti.

    // BEFORE
    import { initializeApp } from "firebase/app";
    import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
    
    
    // AFTER
    import { initializeApp } from "firebase/app";
    import { getAI, getGenerativeModel } from "firebase/ai";

Dart

  1. Aggiorna l'utilizzo del pacchetto firebase_ai nel file pubspec.yaml eseguendo il seguente comando dalla directory del progetto Flutter:

    flutter pub add firebase_ai
  2. Ricompila il progetto Flutter:

    flutter run
  3. Dopo aver completato la migrazione dell'app (vedi le sezioni rimanenti di questa guida), assicurati di eliminare il vecchio pacchetto:

    flutter pub remove firebase_vertexai

Unity

Il supporto per Unity non era disponibile da "Vertex AI in Firebase".

Scopri come iniziare a utilizzare l'SDK Firebase AI Logic per Unity.

Passaggio 4: aggiorna l'inizializzazione nell'app

Fai clic sul tuo fornitore Gemini API per visualizzare i contenuti e il codice specifici del fornitore in questa pagina.

Aggiorna la modalità di inizializzazione del servizio per il provider API scelto e crea un'istanza GenerativeModel.

Swift


import FirebaseAI

// Initialize the Vertex AI Gemini API backend service
let ai = FirebaseAI.firebaseAI(backend: .vertexAI())

// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-2.5-flash")

Kotlin


// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
                        .generativeModel("gemini-2.5-flash")

Java


// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
        .generativeModel("gemini-2.5-flash");

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

Web


import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, VertexAIBackend } from "firebase/ai";

// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Vertex AI Gemini API backend service
const ai = getAI(firebaseApp, { backend: new VertexAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-2.5-flash" });

Dart


import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.vertexAI().generativeModel(model: 'gemini-2.5-flash');

Unity

Il supporto per Unity non era disponibile a partire dal giorno "Vertex AI in Firebase".

Scopri come iniziare a utilizzare l'SDK Firebase AI Logic per Unity.

Tieni presente che, a seconda della funzionalità che utilizzi, potresti non creare sempre un'istanza GenerativeModel.

Passaggio 5: aggiorna il codice in base alle funzionalità che utilizzi

Questo passaggio descrive le modifiche che potrebbero essere necessarie a seconda delle funzionalità che utilizzi.

  • Se utilizzi gli URL Cloud Storage e hai eseguito lo scambio per utilizzare Gemini Developer API in questa migrazione, devi aggiornare le richieste multimodali per includere i file come dati in linea (o utilizzare gli URL di YouTube per i video).

  • Consulta i seguenti elenchi per verificare la presenza di eventuali modifiche che potresti dover apportare al codice per adattarlo all'SDK Firebase AI Logic.

Swift

Nessuna modifica aggiuntiva.

Kotlin

  • Live API

    • Valore UNSPECIFIED rimosso per la classe enum ResponseModality. Utilizza invece null.

Java

  • Live API

    • Valore UNSPECIFIED rimosso per la classe enum ResponseModality. Utilizza invece null.
  • Sono stati modificati vari metodi di creazione Java per restituire correttamente l'istanza della classe, anziché void.

Web

Modifiche richieste solo se inizi a utilizzare Gemini Developer API (anziché Vertex AI Gemini API):

  • Impostazioni di sicurezza

    • Sono stati rimossi gli utilizzi di SafetySetting.method non supportato.
  • Dati in linea

    • Sono stati rimossi gli utilizzi di InlineDataPart.videoMetadata non supportato.

Dart

Nessuna modifica aggiuntiva.

Unity

Il supporto per Unity non era disponibile a partire dal giorno "Vertex AI in Firebase".

Scopri come iniziare a utilizzare l'SDK Firebase AI Logic per Unity.


Fornisci un feedback sulla tua esperienza con Firebase AI Logic