Firebase AI Logic et ses SDK client étaient auparavant appelés "Vertex AI in Firebase". Pour mieux refléter nos services et fonctionnalités étendus (par exemple, nous acceptons désormais Gemini Developer API !), nous avons renommé et reconditionné nos services en Firebase AI Logic.
Pour accéder de manière sécurisée aux modèles d'IA générative de Google directement depuis vos applications mobiles ou Web, vous pouvez désormais choisir un fournisseur "Gemini API", à savoir Vertex AI Gemini API, qui est disponible depuis longtemps, ou Gemini Developer API. Vous pouvez donc désormais utiliser Gemini Developer API, qui propose un niveau sans frais avec des limites et des quotas de débit raisonnables.
Présentation des étapes de migration vers les SDK Firebase AI Logic
Étape 1: Choisissez le meilleur fournisseur de "Gemini API" pour votre application et vos cas d'utilisation.
Étape 2: Configurez votre projet Firebase pour pouvoir utiliser Gemini Developer API.
Ne s'applique que si vous passez à l'Gemini Developer API au lieu de l'Vertex AI Gemini API.Étape 3: Mettez à jour la bibliothèque utilisée dans votre application.
Étape 4: Mettez à jour l'initialisation dans votre application.
Étape 5: Mettez à jour votre code en fonction des fonctionnalités que vous utilisez.
Étape 1: Choisissez le meilleur fournisseur d'API Gemini pour votre application
Avec cette migration, vous avez le choix du fournisseur Gemini API:
Les anciens SDK "Vertex AI in Firebase" ne pouvaient utiliser que Vertex AI Gemini API.
Les nouveaux SDK Firebase AI Logic vous permettent de choisir le fournisseur "Gemini API" que vous souhaitez appeler directement depuis votre application mobile ou Web, à savoir Gemini Developer API ou Vertex AI Gemini API.
Consultez les différences entre les deux fournisseurs Gemini API, en particulier en termes de fonctionnalités compatibles, de tarifs et de limites de débit. Par exemple, Gemini Developer API n'est pas compatible avec la fourniture de fichiers à l'aide d'URL Cloud Storage, mais il peut être un bon choix si vous souhaitez profiter de son niveau sans frais et de son quota raisonnable.
Si vous souhaitez continuer à utiliser Vertex AI Gemini API:
Ignorez l'étape suivante et passez directement à la section Mettre à jour la bibliothèque dans votre application, puis au reste de ce guide.Si vous souhaitez passer à Gemini Developer API:
, passez à l'étape suivante pour configurer votre projet Firebase pour qu'il utilise cette API, puis suivez le reste de ce guide.
Étape 2: Configurez votre projet Firebase pour pouvoir utiliser Gemini Developer API
Cette étape n'est requise que si vous souhaitez passer à l'utilisation de Gemini Developer API avec les SDK client Firebase AI Logic. Toutefois, si vous souhaitez continuer à utiliser Vertex AI Gemini API, passez à l'étape suivante.
Notez que vous pouvez activer les deux fournisseurs "API Gemini" dans votre projet en même temps.
Dans la console Firebase, accédez à la page Firebase AI Logic.
Accédez à l'onglet Paramètres, puis sélectionnez Gemini Developer API.
Activez Gemini Developer API.
La console s'assurera que les API requises sont activées et générera une clé API Gemini dans votre projet Firebase.
N'ajoutez pas cette clé API Gemini au code de votre application. En savoir plusPoursuivez dans ce guide de migration pour mettre à jour la bibliothèque et l'initialisation dans votre application.
Étape 3: Mettre à jour la bibliothèque utilisée dans votre application
Mettez à jour le code de base de votre application pour qu'elle utilise la bibliothèque Firebase AI Logic.
Swift
Dans Xcode, à partir de votre projet d'application ouvert, mettez à jour votre package Firebase vers la version 11.13.0 ou ultérieure à l'aide de l'une des options suivantes:
Option 1: Mettre à jour tous les packages: accédez à File > Packages > Update to Latest Package Versions (Fichier > Packages > Mettre à jour vers les dernières versions des packages).
Option 2: Mettre à jour Firebase individuellement: accédez au package Firebase dans la section Dépendances de package. Effectuez un clic droit sur le package Firebase, puis sélectionnez Mettre à jour le package.
Assurez-vous que le package Firebase indique désormais la version 11.13.0 ou ultérieure. Si ce n'est pas le cas, vérifiez que les exigences concernant les packages que vous avez spécifiées permettent la mise à niveau vers la version 11.13.0 ou ultérieure.
Sélectionnez la cible de votre application dans l'éditeur de projet, puis accédez à la section Cadres, bibliothèques et contenus intégrés.
Ajoutez la nouvelle bibliothèque: sélectionnez le bouton +, puis ajoutez FirebaseAI à partir du package Firebase.
Une fois la migration de votre application terminée (voir les sections restantes de ce guide), veillez à supprimer l'ancienne bibliothèque:
Sélectionnez FirebaseVertexAI, puis appuyez sur le bouton —.
Kotlin
Dans votre fichier Gradle de module (au niveau de l'application) (généralement
<project>/<app-module>/build.gradle.kts
ou<project>/<app-module>/build.gradle
), remplacez les anciennes dépendances (le cas échéant) par les éléments suivants.Notez qu'il peut être plus facile de migrer le code de base de votre application (voir les autres sections de ce guide) avant de supprimer l'ancienne dépendance.
// BEFORE dependencies { implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
implementation("com.google.firebase:firebase-vertexai")// OR if not using the BoMimplementation("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.14.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") }Synchronisez votre projet Android avec les fichiers Gradle.
Notez que si vous choisissez de ne pas utiliser Firebase Android BoM, il vous suffit d'ajouter la dépendance pour la bibliothèque firebase-ai
et d'accepter la dernière version suggérée par Android Studio.
Java
Dans votre fichier Gradle de module (au niveau de l'application) (généralement
<project>/<app-module>/build.gradle.kts
ou<project>/<app-module>/build.gradle
), remplacez les anciennes dépendances (le cas échéant) par les éléments suivants.Notez qu'il peut être plus facile de migrer le code de base de votre application (voir les autres sections de ce guide) avant de supprimer l'ancienne dépendance.
// BEFORE dependencies { implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
implementation("com.google.firebase:firebase-vertexai")// OR if not using the BoMimplementation("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.14.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") }Synchronisez votre projet Android avec les fichiers Gradle.
Notez que si vous choisissez de ne pas utiliser Firebase Android BoM, il vous suffit d'ajouter la dépendance pour la bibliothèque firebase-ai
et d'accepter la dernière version suggérée par Android Studio.
Web
Obtenez la dernière version du SDK JS Firebase pour le Web à l'aide de npm:
npm i firebase@latest
OU
yarn add firebase@latest
Dans tous les emplacements où vous avez importé la bibliothèque, modifiez vos instructions d'importation pour utiliser
firebase/ai
à la place.Notez qu'il peut être plus facile de migrer le code de base de votre application (voir les sections restantes de ce guide) avant de supprimer les anciennes importations.
// 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
Passez à l'utilisation du package
firebase_ai
dans votre fichierpubspec.yaml
en exécutant la commande suivante à partir du répertoire de votre projet Flutter:flutter pub add firebase_ai
Recréez votre projet Flutter:
flutter run
Une fois la migration de votre application terminée (voir les sections restantes de ce guide), veillez à supprimer l'ancien package:
flutter pub remove firebase_vertexai
Unity
La prise en charge d'Unity n'était pas disponible dans "Vertex AI in Firebase".
Découvrez comment faire vos premiers pas avec le SDK Firebase AI Logic pour Unity.
Étape 4: Mettez à jour l'initialisation dans votre application
Cliquez sur votre fournisseur Gemini API pour afficher le contenu et le code spécifiques à ce fournisseur sur cette page. |
Modifiez la façon dont vous initialisez le service pour le fournisseur d'API de votre choix et créez une instance 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.0-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.0-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.0-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.0-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.0-flash');
Unity
La prise en charge d'Unity n'était pas disponible dans Vertex AI in Firebase.
Découvrez comment faire vos premiers pas avec le SDK Firebase AI Logic pour Unity.
Notez que selon la fonctionnalité que vous utilisez, vous ne créez pas toujours une instance GenerativeModel
.
- Pour accéder à un modèle Imagen, créez une instance
ImagenModel
. - Pour lire en continu l'entrée et la sortie à l'aide de Gemini Live API, créez une instance
LiveModel
.
Étape 5: Mettez à jour votre code en fonction des fonctionnalités que vous utilisez
Cette étape décrit les modifications qui peuvent être nécessaires en fonction des fonctionnalités que vous utilisez.
Si vous utilisez des URL Cloud Storage et que vous êtes passé à l'utilisation de Gemini Developer API lors de cette migration, vous devez mettre à jour vos requêtes multimodales pour inclure des fichiers en tant que données intégrées (ou utiliser des URL YouTube pour les vidéos).
Passez en revue les listes suivantes pour identifier les modifications que vous devrez peut-être apporter à votre code pour utiliser le SDK Firebase AI Logic.
Swift
Aucune modification supplémentaire.
Kotlin
Live API
- Suppression de la valeur
UNSPECIFIED
pour la classe d'énumérationResponseModality
. Utilisez plutôtnull
.
- Suppression de la valeur
Java
Live API
- Suppression de la valeur
UNSPECIFIED
pour la classe d'énumérationResponseModality
. Utilisez plutôtnull
.
- Suppression de la valeur
Modification de diverses méthodes de création Java pour qu'elles renvoient désormais correctement l'instance de leur classe, au lieu de "void".
Web
Modifications requises uniquement si vous commencez à utiliser Gemini Developer API (au lieu de Vertex AI Gemini API):
Paramètres de sécurité
- Suppression des utilisations de
SafetySetting.method
non compatibles.
- Suppression des utilisations de
Données intégrées
- Suppression des utilisations de
InlineDataPart.videoMetadata
non compatibles.
- Suppression des utilisations de
Dart
Aucune modification supplémentaire.
Unity
L'assistance pour Unity n'était pas disponible auprès de "Vertex AI in Firebase".
Découvrez comment faire vos premiers pas avec le SDK Firebase AI Logic pour Unity.
Envoyer des commentaires sur votre expérience avec Firebase AI Logic