Firebase AI Logic dan SDK kliennya sebelumnya disebut "Vertex AI in Firebase". Untuk lebih mencerminkan layanan dan fitur yang diperluas (misalnya, kini kami mendukung Gemini Developer API!), kami mengganti nama dan memaketkan ulang layanan menjadi Firebase AI Logic.
Untuk mengakses model AI generatif Google secara aman langsung dari aplikasi seluler atau web, Anda kini dapat memilih penyedia "Gemini API" — Vertex AI Gemini API yang sudah lama tersedia atau Gemini Developer API. Artinya, sekarang Anda memiliki opsi untuk menggunakan Gemini Developer API, yang menyediakan tingkat tanpa biaya dengan kuota dan batas kapasitas yang wajar.
Ringkasan langkah-langkah untuk bermigrasi ke SDK Firebase AI Logic
Langkah 1: Pilih penyedia "Gemini API" terbaik untuk aplikasi dan kasus penggunaan Anda.
Langkah 2: Siapkan project Firebase agar Anda dapat menggunakan Gemini Developer API.
Hanya berlaku jika Anda beralih untuk menggunakan Gemini Developer API, bukan Vertex AI Gemini API.Langkah 3: Perbarui library yang digunakan di aplikasi Anda.
Langkah 4: Perbarui inisialisasi di aplikasi Anda.
Langkah 5: Perbarui kode Anda bergantung pada fitur yang Anda gunakan.
Langkah 1: Pilih penyedia "Gemini API" terbaik untuk aplikasi Anda
Dengan migrasi ini, Anda memiliki pilihan di penyedia "Gemini API":
SDK "Vertex AI in Firebase" lama hanya dapat menggunakan Vertex AI Gemini API.
Dengan Firebase AI Logic SDK baru, Anda dapat memilih penyedia "Gemini API" yang ingin Anda panggil langsung dari aplikasi seluler atau web, yaitu Gemini Developer API atau Vertex AI Gemini API.
Tinjau perbedaan antara penggunaan kedua penyedia Gemini API, terutama dalam hal fitur yang didukung, harga, dan batas kapasitas. Sebagai contoh, Gemini Developer API tidak mendukung penyediaan file menggunakan URL Cloud Storage, tetapi mungkin merupakan pilihan yang baik jika Anda ingin memanfaatkan tingkat tanpa biaya dan kuota yang wajar.
Jika Anda ingin terus menggunakan Vertex AI Gemini API:
Lewati langkah berikutnya dan langsung ke mengupdate library di aplikasi Anda, lalu lanjutkan ke panduan ini.Jika Anda ingin beralih ke Gemini Developer API:
, lanjutkan ke langkah berikutnya untuk menyiapkan project Firebase untuk menggunakan API tersebut, lalu lanjutkan ke panduan ini.
Langkah 2: Siapkan project Firebase agar Anda dapat menggunakan Gemini Developer API
Langkah ini hanya diperlukan jika Anda ingin beralih untuk menggunakan Gemini Developer API dengan SDK klien Firebase AI Logic. Namun, jika Anda ingin terus menggunakan Vertex AI Gemini API, lanjutkan ke langkah berikutnya.
Perhatikan bahwa Anda dapat mengaktifkan kedua penyedia "Gemini API" di project Anda secara bersamaan.
Di Firebase console, buka halaman Firebase AI Logic.
Buka tab Setelan, lalu pilih Gemini Developer API.
Aktifkan Gemini Developer API.
Konsol akan memastikan API yang diperlukan diaktifkan dan membuat kunci API Gemini di project Firebase Anda.
Jangan tambahkan kunci API Gemini ini ke codebase aplikasi Anda. Pelajari lebih lanjut.Lanjutkan di panduan migrasi ini untuk mengupdate library dan inisialisasi di aplikasi Anda.
Langkah 3: Perbarui library yang digunakan di aplikasi Anda
Update codebase aplikasi Anda untuk menggunakan library Firebase AI Logic.
Swift
Di Xcode, dengan project aplikasi Anda dalam keadaan terbuka, update paket Firebase ke v11.13.0 atau yang lebih baru menggunakan salah satu opsi berikut:
Opsi 1: Mengupdate semua paket: Buka File > Packages > Update to Latest Package Versions.
Opsi 2: Mengupdate Firebase satu per satu: Buka paket Firebase di bagian yang disebut Package Dependencies. Klik kanan paket Firebase, lalu pilih Update Package.
Pastikan paket Firebase sekarang menampilkan v11.13.0 atau yang lebih baru. Jika tidak, pastikan Persyaratan Paket yang Anda tentukan memungkinkan update ke v11.13.0 atau yang lebih baru.
Pilih target aplikasi Anda di Project Editor, lalu buka bagian Framework, Library, dan Konten Tersemat.
Tambahkan library baru: Pilih tombol +, lalu tambahkan FirebaseAI dari paket Firebase.
Setelah Anda selesai memigrasikan aplikasi (lihat bagian lainnya dalam panduan ini), pastikan untuk menghapus library lama:
Pilih FirebaseVertexAI, lalu tekan tombol —.
Kotlin
Dalam file Gradle modul (level aplikasi) (biasanya
<project>/<app-module>/build.gradle.kts
atau<project>/<app-module>/build.gradle
), ganti dependensi lama (sebagaimana berlaku) dengan yang berikut.Perhatikan bahwa mungkin lebih mudah untuk memigrasikan codebase aplikasi Anda (lihat bagian lainnya dalam panduan ini) sebelum menghapus dependensi lama.
// 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") }Sinkronkan project Android Anda dengan file Gradle.
Perhatikan bahwa jika Anda memilih untuk tidak menggunakan Firebase Android BoM, cukup tambahkan
dependensi untuk library firebase-ai
dan setujui versi terbaru
yang disarankan oleh Android Studio.
Java
Dalam file Gradle modul (level aplikasi) (biasanya
<project>/<app-module>/build.gradle.kts
atau<project>/<app-module>/build.gradle
), ganti dependensi lama (sebagaimana berlaku) dengan yang berikut.Perhatikan bahwa mungkin lebih mudah untuk memigrasikan codebase aplikasi Anda (lihat bagian lainnya dalam panduan ini) sebelum menghapus dependensi lama.
// 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") }Sinkronkan project Android Anda dengan file Gradle.
Perhatikan bahwa jika Anda memilih untuk tidak menggunakan Firebase Android BoM, cukup tambahkan
dependensi untuk library firebase-ai
dan setujui versi terbaru
yang disarankan oleh Android Studio.
Web
Dapatkan Firebase JS SDK untuk Web versi terbaru menggunakan npm:
npm i firebase@latest
ATAU
yarn add firebase@latest
Di mana pun Anda mengimpor library, perbarui pernyataan impor untuk menggunakan
firebase/ai
.Perhatikan bahwa mungkin lebih mudah untuk memigrasikan codebase aplikasi Anda (lihat bagian lainnya dalam panduan ini) sebelum menghapus impor lama.
// 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
Update untuk menggunakan paket
firebase_ai
dalam filepubspec.yaml
dengan menjalankan perintah berikut dari direktori project Flutter Anda:flutter pub add firebase_ai
Build ulang project Flutter Anda:
flutter run
Setelah Anda selesai memigrasikan aplikasi (lihat bagian lainnya dalam panduan ini), pastikan untuk menghapus paket lama:
flutter pub remove firebase_vertexai
Unity
Dukungan untuk Unity tidak tersedia dari "Vertex AI in Firebase".
Pelajari cara memulai Firebase AI Logic SDK untuk Unity.
Langkah 4: Perbarui inisialisasi di aplikasi Anda
Klik penyedia Gemini API untuk melihat konten dan kode khusus penyedia di halaman ini. |
Perbarui cara Anda melakukan inisialisasi layanan untuk penyedia API yang dipilih dan
buat instance GenerativeModel
.
Swift
import FirebaseAI
// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-2.0-flash")
Kotlin
// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel("gemini-2.0-flash")
Java
// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.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, GoogleAIBackend } 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 Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// 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 Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
FirebaseAI.googleAI().generativeModel(model: 'gemini-2.0-flash');
Unity
Dukungan untuk Unity tidak tersedia dari "Vertex AI in Firebase".
Pelajari cara memulai Firebase AI Logic SDK untuk Unity.
Perhatikan bahwa bergantung pada kemampuan yang Anda gunakan, Anda mungkin tidak selalu
membuat instance GenerativeModel
.
- Untuk mengakses model Imagen,
buat instance
ImagenModel
.
Langkah 5: Perbarui kode Anda bergantung pada fitur yang Anda gunakan
Langkah ini menjelaskan perubahan yang mungkin diperlukan, bergantung pada fitur yang Anda gunakan.
Jika Anda menggunakan URL Cloud Storage dan Anda beralih untuk menggunakan Gemini Developer API dalam migrasi ini, Anda perlu memperbarui permintaan multimodal untuk menyertakan file sebagai data inline (atau menggunakan URL YouTube untuk video).
Tinjau daftar berikut untuk mengetahui perubahan yang mungkin perlu Anda buat dalam kode untuk mengakomodasi penggunaan SDK Firebase AI Logic.
Swift
Tidak ada perubahan tambahan.
Kotlin
Live API
- Menghapus nilai
UNSPECIFIED
untuk class enumResponseModality
. Sebagai gantinya, gunakannull
.
- Menghapus nilai
Java
Live API
- Menghapus nilai
UNSPECIFIED
untuk class enumResponseModality
. Sebagai gantinya, gunakannull
.
- Menghapus nilai
Mengubah berbagai metode builder Java agar sekarang menampilkan instance class-nya dengan benar, bukan void.
Web
Perubahan diperlukan hanya jika Anda mulai menggunakan Gemini Developer API (bukan Vertex AI Gemini API):
Setelan keamanan
- Menghapus penggunaan
SafetySetting.method
yang tidak didukung.
- Menghapus penggunaan
Data inline
- Menghapus penggunaan
InlineDataPart.videoMetadata
yang tidak didukung.
- Menghapus penggunaan
Dart
Tidak ada perubahan tambahan.
Unity
Dukungan untuk Unity tidak tersedia dari "Vertex AI in Firebase".
Pelajari cara memulai Firebase AI Logic SDK untuk Unity.
Berikan masukan tentang pengalaman Anda dengan Firebase AI Logic