Bermigrasi ke Firebase AI Logic SDK dari Vertex AI in Firebase SDK versi GA


Firebase AI Logic dan SDK kliennya sebelumnya disebut "Vertex AI in Firebase". Untuk lebih mencerminkan layanan dan fitur kami yang diperluas (misalnya, kami kini mendukung Gemini Developer API!), kami mengganti nama dan mengemas ulang layanan kami 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" — baik Vertex AI Gemini API yang telah lama tersedia maupun kini Gemini Developer API. Artinya, Anda kini memiliki opsi untuk menggunakan Gemini Developer API, yang menyediakan paket tanpa biaya dengan batas dan kuota tarif 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 Anda agar dapat menggunakan Gemini Developer API.
    Hanya berlaku jika Anda beralih menggunakan Gemini Developer API bukan Vertex AI Gemini API.

  • Langkah 3: Update library yang digunakan di aplikasi Anda.

  • Langkah 4: Update inisialisasi di aplikasi Anda.

  • Langkah 5: Update kode Anda bergantung pada fitur yang Anda gunakan.

Langkah 1: Pilih penyedia "Gemini API" terbaik untuk aplikasi Anda

Dengan migrasi ini, Anda memiliki pilihan penyedia "Gemini API":

  • SDK "Vertex AI in Firebase" lama hanya dapat menggunakan Vertex AI Gemini API.

  • SDK Firebase AI Logic baru memungkinkan Anda memilih penyedia "Gemini API" yang ingin dipanggil langsung dari aplikasi seluler atau web Anda – baik Gemini Developer API maupun Vertex AI Gemini API.

Tinjau perbedaan antara penggunaan dua Gemini API penyedia, terutama dalam hal fitur yang didukung, harga, dan batas tarif. Sebagai contoh, Gemini Developer API tidak mendukung penyediaan file menggunakan URL Cloud Storage, tetapi mungkin merupakan pilihan yang baik jika Anda ingin memanfaatkan paket tanpa biaya dan kuota yang wajar.

Langkah 2: Siapkan project Firebase Anda agar dapat menggunakan Gemini Developer API

Langkah ini hanya diperlukan jika Anda ingin beralih menggunakan Gemini Developer API dengan Firebase AI Logic klien SDK. Namun, jika Anda ingin terus menggunakan Vertex AI Gemini API, lewati langkah berikutnya.

Perhatikan bahwa Anda dapat mengaktifkan kedua penyedia "Gemini API" di project Anda secara bersamaan.

  1. Di Firebase console, buka AI Services > AI Logic.

  2. Buka tab Settings, lalu pilih Gemini Developer API.

  3. Aktifkan Gemini Developer API.

    Konsol akan memastikan API yang diperlukan diaktifkan dan membuat kunci Gemini API di project Firebase Anda.
    Jangan tambahkan kunci Gemini API ini ke codebase aplikasi Anda. Pelajari lebih lanjut.

  4. Lanjutkan di panduan migrasi ini untuk mengupdate library dan inisialisasi di aplikasi Anda.

Langkah 3: Update library yang digunakan di aplikasi Anda

Update codebase aplikasi Anda untuk menggunakan library Firebase AI Logic.

Swift

  1. Di Xcode, dengan project aplikasi Anda dalam keadaan terbuka, update paket Firebase Anda ke v11.13.0 atau yang lebih baru menggunakan salah satu opsi berikut:

    • Opsi 1: Update semua paket: Buka File > Packages > Update to Latest Package Versions.

    • Opsi 2: Update Firebase satu per satu: Buka paket Firebase di bagian yang disebut Package Dependencies. Klik kanan paket Firebase, lalu pilih Update Package.

  2. Pastikan paket Firebase kini menampilkan v11.13.0 atau yang lebih baru. Jika tidak, pastikan Package Requirements yang Anda tentukan mengizinkan update ke v11.13.0 atau yang lebih baru.

  3. Pilih target aplikasi Anda di Project Editor, lalu buka bagian Frameworks, Libraries, and Embedded Content.

  4. Tambahkan library baru: Pilih tombol +, lalu tambahkan FirebaseAI dari paket Firebase.

  5. Setelah selesai memigrasikan aplikasi Anda (lihat bagian yang tersisa di panduan ini), pastikan untuk menghapus library lama:
    Pilih FirebaseVertexAI, lalu tekan tombol .

Kotlin

  1. Di file Gradle modul (level aplikasi) (biasanya <project>/<app-module>/build.gradle.kts atau <project>/<app-module>/build.gradle), ganti dependensi lama (jika berlaku) dengan dependensi berikut.

    Perhatikan bahwa mungkin lebih mudah untuk memigrasikan codebase aplikasi Anda (lihat bagian yang tersisa di 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 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:34.13.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. 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 terima versi terbaru yang disarankan oleh Android Studio.

Java

  1. Di file Gradle modul (level aplikasi) (biasanya <project>/<app-module>/build.gradle.kts atau <project>/<app-module>/build.gradle), ganti dependensi lama (jika berlaku) dengan dependensi berikut.

    Perhatikan bahwa mungkin lebih mudah untuk memigrasikan codebase aplikasi Anda (lihat bagian yang tersisa di 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 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:34.13.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. 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 terima versi terbaru yang disarankan oleh Android Studio.

Web

  1. Dapatkan Firebase JS SDK untuk Web versi terbaru menggunakan npm:

    npm i firebase@latest

    ATAU

    yarn add firebase@latest
  2. Di mana pun Anda mengimpor library, update pernyataan impor Anda untuk menggunakan firebase/ai.

    Perhatikan bahwa mungkin lebih mudah untuk memigrasikan codebase aplikasi Anda (lihat bagian yang tersisa di 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

  1. Update untuk menggunakan paket firebase_ai di file pubspec.yaml Anda dengan menjalankan perintah berikut dari direktori project Flutter Anda:

    flutter pub add firebase_ai
  2. Build ulang project Flutter Anda:

    flutter run
  3. Setelah selesai memigrasikan aplikasi Anda (lihat bagian yang tersisa di 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 dengan Firebase AI Logic SDK untuk Unity.

Langkah 4: Update inisialisasi di aplikasi Anda

Klik penyedia Gemini API Anda untuk melihat konten khusus penyedia dan kode di halaman ini.

Update cara Anda melakukan inisialisasi layanan untuk penyedia API yang Anda pilih dan membuat instance GenerativeModel.

Swift


import FirebaseAILogic

// 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-3-flash-preview")

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-3-flash-preview")

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-3-flash-preview");

// 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-3-flash-preview" });

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-3-flash-preview');

Unity

Dukungan untuk Unity tidak tersedia dari "Vertex AI in Firebase".

Pelajari cara memulai dengan Firebase AI Logic SDK untuk Unity.

Perhatikan bahwa bergantung pada kemampuan yang Anda gunakan, Anda mungkin tidak selalu membuat instance GenerativeModel. Untuk melakukan streaming input dan output menggunakan Gemini Live API, buat instance LiveModel.

Langkah 5: Update kode Anda bergantung pada fitur yang Anda gunakan

Langkah ini menjelaskan perubahan yang mungkin diperlukan, bergantung pada fitur yang Anda gunakan.

  • Jika Anda menggunakan Cloud Storage URL dan Anda beralih menggunakan Gemini Developer API dalam migrasi ini, Anda harus mengupdate permintaan multimodal untuk menyertakan file sebagai data inline (atau menggunakan URL YouTube untuk video).

  • Tinjau daftar berikut untuk mengetahui perubahan yang mungkin perlu Anda lakukan dalam kode Anda untuk mengakomodasi penggunaan Firebase AI Logic SDK.

Swift

Tidak ada perubahan tambahan.

Kotlin

  • Live API

    • Menghapus nilai UNSPECIFIED untuk class enum ResponseModality. Sebagai gantinya, gunakan null.

Java

  • Live API

    • Menghapus nilai UNSPECIFIED untuk class enum ResponseModality. Sebagai gantinya, gunakan null.
  • Mengubah berbagai metode builder Java agar kini 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.
  • Data inline

    • Menghapus penggunaan InlineDataPart.videoMetadata yang tidak didukung.

Dart

Tidak ada perubahan tambahan.

Unity

Dukungan untuk Unity tidak tersedia dari "Vertex AI in Firebase".

Pelajari cara memulai dengan Firebase AI Logic SDK untuk Unity.


Berikan masukan tentang pengalaman Anda dengan Firebase AI Logic