Mulai gunakan GeminiIAP API menggunakan Vertex akhir AI di SDK Firebase

Panduan ini menunjukkan cara mulai melakukan panggilan ke Gemini API in Vertex AI langsung dari aplikasi menggunakan Vertex AI in Firebase SDK untuk platform yang Anda pilih.

Perhatikan bahwa Anda juga dapat menggunakan panduan ini untuk mulai mengakses model Imagen menggunakan Vertex AI in Firebase SDK.

Prasyarat

Swift

Panduan ini mengasumsikan bahwa Anda sudah terbiasa menggunakan Xcode untuk mengembangkan aplikasi untuk platform Apple (seperti iOS).

  • Pastikan lingkungan pengembangan dan aplikasi platform Apple Anda memenuhi persyaratan berikut:

    • Xcode 16.2 atau yang lebih tinggi
    • Aplikasi Anda menargetkan iOS 15 atau yang lebih baru, atau macOS 12 atau yang lebih baru
  • (Opsional) Lihat aplikasi contoh.

    Mendownload aplikasi panduan memulai

    Anda dapat mencoba SDK dengan cepat, melihat implementasi lengkap berbagai kasus penggunaan, atau menggunakan aplikasi contoh jika tidak memiliki aplikasi platform Apple Anda sendiri. Untuk menggunakan aplikasi contoh, Anda harus menghubungkannya ke project Firebase.

Kotlin

Panduan ini mengasumsikan bahwa Anda sudah terbiasa menggunakan Android Studio untuk mengembangkan aplikasi untuk Android.

  • Pastikan lingkungan pengembangan dan aplikasi Android Anda memenuhi persyaratan berikut:

    • Android Studio (versi terbaru)
    • Aplikasi Anda menargetkan API level 21 atau yang lebih tinggi
  • (Opsional) Lihat aplikasi contoh.

    Mendownload aplikasi contoh

    Anda dapat mencoba SDK dengan cepat, melihat implementasi lengkap berbagai kasus penggunaan, atau menggunakan aplikasi contoh jika tidak memiliki aplikasi Android Anda sendiri. Untuk menggunakan aplikasi contoh, Anda harus menghubungkannya ke project Firebase.

Java

Panduan ini mengasumsikan bahwa Anda sudah terbiasa menggunakan Android Studio untuk mengembangkan aplikasi untuk Android.

  • Pastikan lingkungan pengembangan dan aplikasi Android Anda memenuhi persyaratan berikut:

    • Android Studio (versi terbaru)
    • Aplikasi Anda menargetkan API level 21 atau yang lebih tinggi
  • (Opsional) Lihat aplikasi contoh.

    Mendownload aplikasi contoh

    Anda dapat mencoba SDK dengan cepat, melihat implementasi lengkap berbagai kasus penggunaan, atau menggunakan aplikasi contoh jika tidak memiliki aplikasi Android sendiri. Untuk menggunakan aplikasi contoh, Anda harus menghubungkannya ke project Firebase.

Web

Panduan ini mengasumsikan bahwa Anda sudah terbiasa menggunakan JavaScript untuk mengembangkan aplikasi web. Panduan ini tidak bergantung pada framework.

  • Pastikan lingkungan pengembangan dan aplikasi web Anda memenuhi persyaratan berikut:

    • (Opsional) Node.js
    • Browser web modern
  • (Opsional) Lihat aplikasi contoh.

    Mendownload aplikasi contoh

    Anda dapat mencoba SDK dengan cepat, melihat implementasi lengkap berbagai kasus penggunaan, atau menggunakan aplikasi contoh jika tidak memiliki aplikasi web sendiri. Untuk menggunakan aplikasi contoh, Anda harus menghubungkannya ke project Firebase.

Dart

Panduan ini mengasumsikan bahwa Anda sudah terbiasa mengembangkan aplikasi dengan Flutter.

  • Pastikan lingkungan pengembangan dan aplikasi Flutter Anda memenuhi persyaratan berikut:

    • Dart 3.2.0+
  • (Opsional) Lihat aplikasi contoh.

    Mendownload aplikasi contoh

    Anda dapat mencoba SDK dengan cepat, melihat implementasi lengkap berbagai kasus penggunaan, atau menggunakan aplikasi contoh jika tidak memiliki aplikasi Flutter sendiri. Untuk menggunakan aplikasi contoh, Anda harus menghubungkannya ke project Firebase.

Langkah 1: Siapkan project Firebase dan hubungkan aplikasi Anda ke Firebase

Jika Anda sudah memiliki project Firebase dan aplikasi yang terhubung ke Firebase

  1. Di konsol Firebase, buka halaman Vertex AI.

  2. Klik kartu Vertex AI in Firebase untuk meluncurkan alur kerja yang membantu Anda menyelesaikan tugas berikut:

  3. Lanjutkan ke langkah berikutnya dalam panduan ini untuk menambahkan SDK ke aplikasi Anda.

Jika Anda belum memiliki project Firebase dan aplikasi yang terhubung ke Firebase


Langkah 2: Tambahkan SDK

Setelah project Firebase disiapkan dan aplikasi terhubung ke Firebase (lihat langkah sebelumnya), Anda kini dapat menambahkan SDK Vertex AI in Firebase ke aplikasi.

Swift

Gunakan Swift Package Manager untuk menginstal dan mengelola dependensi Firebase.

Library Vertex AI in Firebase menyediakan akses ke API untuk berinteraksi dengan model Gemini dan Imagen. Library ini disertakan sebagai bagian dari Firebase SDK untuk platform Apple (firebase-ios-sdk).

  1. Di Xcode, dengan project aplikasi Anda dalam keadaan terbuka, buka File > Add Packages.

  2. Saat diminta, tambahkan repositori SDK platform Apple Firebase:

    https://github.com/firebase/firebase-ios-sdk
    
  3. Pilih versi SDK terbaru.

  4. Pilih library FirebaseVertexAI.

Setelah selesai, Xcode akan otomatis mulai me-resolve dan mendownload dependensi Anda di latar belakang.

Kotlin

Vertex AI in Firebase SDK untuk Android (firebase-vertexai) menyediakan akses ke API untuk berinteraksi dengan model Gemini dan Imagen.

Dalam file Gradle modul (level aplikasi) (seperti <project>/<app-module>/build.gradle.kts), tambahkan dependensi untuk library Vertex AI in Firebase untuk Android. Sebaiknya gunakan Firebase Android BoM untuk mengontrol pembuatan versi library.

dependencies {
  // ... other androidx dependencies

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

Dengan menggunakan Firebase Android BoM, aplikasi Anda akan selalu menggunakan versi library Android Firebase yang kompatibel.

Java

Vertex AI in Firebase SDK untuk Android (firebase-vertexai) menyediakan akses ke API untuk berinteraksi dengan model Gemini dan Imagen.

Dalam file Gradle modul (level aplikasi) (seperti <project>/<app-module>/build.gradle.kts), tambahkan dependensi untuk library Vertex AI in Firebase untuk Android. Sebaiknya gunakan Firebase Android BoM untuk mengontrol pembuatan versi library.

Untuk Java, Anda perlu menambahkan dua library tambahan.

dependencies {
  // ... other androidx dependencies

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

Dengan menggunakan Firebase Android BoM, aplikasi Anda akan selalu menggunakan versi library Android Firebase yang kompatibel.

Web

Library Vertex AI in Firebase menyediakan akses ke API untuk berinteraksi dengan model Gemini dan Imagen. Library ini disertakan sebagai bagian dari Firebase JavaScript SDK untuk Web.

  1. Instal Firebase JS SDK untuk Web menggunakan npm:

    npm install firebase
    
  2. Inisialisasi Firebase di aplikasi Anda:

    import { initializeApp } from "firebase/app";
    
    // 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);
    

Dart

Plugin Vertex AI in Firebase untuk Flutter (firebase_vertexai) menyediakan akses ke API untuk berinteraksi dengan model Gemini dan Imagen.

  1. Dari direktori project Flutter Anda, jalankan perintah berikut untuk menginstal plugin inti dan plugin Vertex AI in Firebase:

    flutter pub add firebase_core && flutter pub add firebase_vertexai
    
  2. Dalam file lib/main.dart, impor plugin inti Firebase, plugin Vertex AI in Firebase, dan file konfigurasi yang Anda buat sebelumnya:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_vertexai/firebase_vertexai.dart';
    import 'firebase_options.dart';
    
  3. Selain itu, di file lib/main.dart, lakukan inisialisasi Firebase menggunakan objek DefaultFirebaseOptions yang diekspor oleh file konfigurasi:

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. Build ulang aplikasi Flutter Anda:

    flutter run
    

Langkah 3: Lakukan inisialisasi layanan Vertex AI dan buat instance GenerativeModel

Sebelum dapat melakukan panggilan API dan mengirim perintah ke model Gemini, Anda perlu melakukan inisialisasi layanan Vertex AI dan membuat instance GenerativeModel.

Swift

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

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

Kotlin

Untuk Kotlin, metode dalam SDK ini adalah fungsi penangguhan dan perlu dipanggil dari Cakupan coroutine.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")

Java

Untuk Java, metode streaming di SDK ini menampilkan jenis Publisher dari library Reactive Streams.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// 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);

Web

import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 service
const vertexAI = getVertexAI(firebaseApp);

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

Dart

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

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');

Setelah menyelesaikan panduan memulai ini, pelajari cara memilih model dan (opsional) lokasi yang sesuai untuk kasus penggunaan dan aplikasi Anda.

Langkah 4: Kirim permintaan perintah ke model

Setelah menghubungkan aplikasi ke Firebase, menambahkan SDK, dan melakukan inisialisasi layanan Vertex AI dan model generatif, Anda siap mengirim permintaan perintah ke model Gemini.

Anda dapat menggunakan generateContent() untuk membuat teks dari permintaan prompt khusus teks:

Swift

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

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

// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."

// To generate text output, call generateContent with the text input
let response = try await model.generateContent(prompt)
print(response.text ?? "No text in response.")

Kotlin

Untuk Kotlin, metode dalam SDK ini adalah fungsi penangguhan dan perlu dipanggil dari Cakupan coroutine.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// 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)

Java

Untuk Java, metode dalam SDK ini menampilkan ListenableFuture.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// 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);

Web

import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 service
const vertexAI = getVertexAI(firebaseApp);

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

// Wrap in an async function so you can use await
async function run() {
  // Provide a prompt that contains text
  const prompt = "Write a story about a magic backpack."

  // To generate text output, call generateContent with the text input
  const result = await model.generateContent(prompt);

  const response = result.response;
  const text = response.text();
  console.log(text);
}

run();

Dart

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

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');

// Provide a prompt that contains text
final prompt = [Content.text('Write a story about a magic backpack.')];

// To generate text output, call generateContent with the text input
final response = await model.generateContent(prompt);
print(response.text);

Kamu bisa apa lagi?

Pelajari lebih lanjut model yang didukung

Pelajari model yang tersedia untuk berbagai kasus penggunaan serta kuota dan harga-nya.

Mencoba kemampuan lain

Pelajari cara mengontrol pembuatan konten

Anda juga dapat bereksperimen dengan perintah dan konfigurasi model menggunakan Vertex AI Studio.


Berikan masukan tentang pengalaman Anda dengan Vertex AI in Firebase