Firebase SDK'larındaki Vertex AI'ın GA sürümünden Firebase AI mantık SDK'larına geçiş


Firebase AI Logic ve istemci SDK'ları daha önce "Vertex AI in Firebase" olarak adlandırılıyordu. Genişletilmiş hizmetlerimizi ve özelliklerimizi daha iyi yansıtmak için (örneğin, artık Gemini Developer API destekliyoruz) hizmetlerimizi Firebase AI Logic olarak yeniden adlandırdık ve yeniden paketledik.

Google'ın üretken yapay zeka modellerine doğrudan mobil veya web uygulamalarınızdan güvenli bir şekilde erişmek için artık bir "Gemini API" sağlayıcı seçebilirsiniz. Bu sağlayıcı, uzun süredir kullanılabilen Vertex AI Gemini API veya yeni Gemini Developer API olabilir. Bu nedenle, artık makul hız sınırları ve kotalar içeren ücretsiz katman sunan Gemini Developer API kullanabilirsiniz.

Firebase AI Logic SDK'larına geçiş adımlarına genel bakış

  • 1. adım: Uygulamanız ve kullanım alanlarınız için en iyi "Gemini API" sağlayıcıyı seçin.

  • 2. adım: Firebase projenizi, Gemini Developer API kullanabileceğiniz şekilde ayarlayın.
    Yalnızca Vertex AI Gemini API yerine Gemini Developer API kullanmak için geçiş yapıyorsanız geçerlidir.

  • 3. adım: Uygulamanızda kullanılan kitaplığı güncelleyin.

  • 4. adım: Uygulamanızdaki başlatma işlemini güncelleyin.

  • 5. adım: Kullandığınız özelliklere bağlı olarak kodunuzu güncelleyin.

1. adım: Uygulamanız için en iyi "Gemini API" sağlayıcıyı seçin

Bu taşıma işlemiyle birlikte "Gemini API" sağlayıcısını seçebilirsiniz:

  • Eski "Vertex AI in Firebase" SDK'ları yalnızca Vertex AI Gemini API kullanabiliyordu.

  • Yeni Firebase AI Logic SDK'ları, mobil veya web uygulamanızdan doğrudan hangi "Gemini API" sağlayıcısını (Gemini Developer API veya Vertex AI Gemini API) çağırmak istediğinizi seçmenize olanak tanır.

İki Gemini API sağlayıcıyı kullanma arasındaki farkları, özellikle desteklenen özellikler, fiyatlandırma ve hız sınırları açısından inceleyin. Örneğin, Gemini Developer API, Cloud Storage URL'leri kullanılarak dosya sağlanmasını desteklemez ancak ücretsiz katmanından ve makul kotasından yararlanmak istiyorsanız iyi bir seçenek olabilir.

2. adım: Firebase projenizi Gemini Developer API kullanabileceğiniz şekilde ayarlayın.

Bu adım yalnızca Gemini Developer API ile Firebase AI Logic istemci SDK'larını kullanmaya geçmek istiyorsanız gereklidir. Ancak Vertex AI Gemini API kullanmaya devam etmek istiyorsanız sonraki adıma geçin.

Projenizde "Gemini API" sağlayıcılarının ikisinin de aynı anda etkin olmasında sorun olmadığını unutmayın.

  1. Firebase konsolunda Firebase AI Logic sayfasına gidin.

  2. Ayarlar sekmesine gidip Gemini Developer API simgesini seçin.

  3. Gemini Developer API özelliğini etkinleştirin.

    Konsol, gerekli API'lerin etkinleştirildiğinden emin olur ve Firebase projenizde Gemini API anahtarı oluşturur.
    Bu Gemini API anahtarını uygulamanızın kod tabanına eklemeyin. Daha fazla bilgi edinin.

  4. Uygulamanızdaki kitaplığı ve başlatmayı güncellemek için bu taşıma kılavuzundaki adımları uygulamaya devam edin.

3. adım: Uygulamanızda kullanılan kitaplığı güncelleyin

Uygulamanızın kod tabanını Firebase AI Logic kitaplığını kullanacak şekilde güncelleyin.

Swift

  1. Xcode'da, uygulama projeniz açıkken Firebase paketinizi aşağıdaki seçeneklerden birini kullanarak v11.13.0 veya sonraki bir sürüme güncelleyin:

    • 1. seçenek: Tüm paketleri güncelleme: Dosya > Paketler > En Son Paket Sürümlerine Güncelle'ye gidin.

    • 2. seçenek: Firebase'i ayrı ayrı güncelleyin: Paket Bağımlılıkları bölümünde Firebase paketine gidin. Firebase paketini sağ tıklayın ve Paketi Güncelle'yi seçin.

  2. Firebase paketinin artık v11.13.0 veya sonraki bir sürümü gösterdiğinden emin olun. Bu sürüm değilse belirttiğiniz Paket Şartları'nın v11.13.0 veya sonraki bir sürüme güncellenmeye izin verdiğini doğrulayın.

  3. Proje Düzenleyici'de uygulamanızın hedefini seçin ve ardından Framework'ler, Kitaplıklar ve Yerleştirilmiş İçerik bölümüne gidin.

  4. Yeni kitaplığı ekleyin: + düğmesini seçin ve ardından Firebase paketinden FirebaseAI'yı ekleyin.

  5. Uygulamanızı taşımayı tamamladıktan sonra (bu kılavuzdaki kalan bölümlere bakın) eski kitaplığı kaldırdığınızdan emin olun:
    FirebaseVertexAI'ı seçin, ardından düğmesine basın.

Kotlin

  1. Modül (uygulama düzeyi) Gradle dosyanızda (genellikle <project>/<app-module>/build.gradle.kts veya <project>/<app-module>/build.gradle) eski bağımlılıkları (uygun olduğu şekilde) aşağıdakilerle değiştirin.

    Eski bağımlılığı silmeden önce uygulamanızın kod tabanını taşımak daha kolay olabilir (bu kılavuzdaki diğer bölümlere bakın).

    // 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.15.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. Android projenizi Gradle dosyalarıyla senkronize edin.

Firebase Android BoM kullanmamayı tercih ederseniz firebase-ai kitaplığının bağımlılığını eklemeniz ve Android Studio'nun önerdiği en son sürümü kabul etmeniz gerekir.

Java

  1. Modül (uygulama düzeyi) Gradle dosyanızda (genellikle <project>/<app-module>/build.gradle.kts veya <project>/<app-module>/build.gradle) eski bağımlılıkları (uygun olduğu şekilde) aşağıdakilerle değiştirin.

    Eski bağımlılığı silmeden önce uygulamanızın kod tabanını taşımak daha kolay olabilir (bu kılavuzdaki diğer bölümlere bakın).

    // 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.15.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. Android projenizi Gradle dosyalarıyla senkronize edin.

Firebase Android BoM kullanmamayı tercih ederseniz firebase-ai kitaplığının bağımlılığını eklemeniz ve Android Studio'nun önerdiği en son sürümü kabul etmeniz gerekir.

Web

  1. npm kullanarak web için Firebase JS SDK'sının en son sürümünü edinin:

    npm i firebase@latest

    VEYA

    yarn add firebase@latest
  2. Kitaplığı içe aktardığınız her yerde, içe aktarma ifadelerinizi firebase/ai kullanacak şekilde güncelleyin.

    Eski içe aktarma işlemlerini silmeden önce uygulamanızın kod tabanını taşımanın daha kolay olabileceğini unutmayın (bu kılavuzdaki diğer bölümlere bakın).

    // 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. firebase_ai paketini pubspec.yaml dosyanızda kullanmak için Flutter proje dizininizden aşağıdaki komutu çalıştırarak güncelleyin:

    flutter pub add firebase_ai
  2. Flutter projenizi yeniden oluşturun:

    flutter run
  3. Uygulamanızı taşımayı tamamladıktan sonra (bu rehberdeki kalan bölümlere bakın) eski paketi sildiğinizden emin olun:

    flutter pub remove firebase_vertexai

Unity

Unity desteği "Vertex AI in Firebase" tarafından sağlanmıyordu.

Unity için Firebase AI Logic SDK'sını kullanmaya nasıl başlayacağınızı öğrenin.

4. adım: Uygulamanızdaki başlatma işlemini güncelleyin

Bu sayfada sağlayıcıya özel içerikleri ve kodu görüntülemek için Gemini API sağlayıcınızı tıklayın.

Seçtiğiniz API sağlayıcısı için hizmeti başlatma şeklinizi güncelleyin ve bir GenerativeModel örneği oluşturun.

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

Unity desteği "Vertex AI in Firebase" tarafından sağlanmıyordu.

Unity için Firebase AI Logic SDK'sını kullanmaya nasıl başlayacağınızı öğrenin.

Kullandığınız özelliğe bağlı olarak her zaman GenerativeModel örneği oluşturamayabilirsiniz.

5. adım: Kullandığınız özelliklere bağlı olarak kodunuzu güncelleyin

Bu adımda, kullandığınız özelliklere bağlı olarak gerekebilecek değişiklikler açıklanmaktadır.

  • Cloud Storage URL'leri kullanıyorsanız ve bu taşıma işleminde Gemini Developer API kullanmaya geçtiyseniz çok formatlı isteklerinizi dosyaları satır içi veri olarak içerecek şekilde güncellemeniz (veya videolar için YouTube URL'lerini kullanmanız) gerekir.

  • Firebase AI Logic SDK'sını kullanmak için kodunuzda yapmanız gerekebilecek değişiklikler hakkında bilgi edinmek üzere aşağıdaki listeleri inceleyin.

Swift

Başka değişiklik yapılmadı.

Kotlin

  • Live API

    • Enum sınıfı ResponseModality için UNSPECIFIED değeri kaldırıldı. Bunun yerine null kullanın.

Java

  • Live API

    • Enum sınıfı ResponseModality için UNSPECIFIED değeri kaldırıldı. Bunun yerine null kullanın.
  • Çeşitli Java oluşturucu yöntemleri, artık void yerine sınıflarının örneğini doğru şekilde döndürecek şekilde değiştirildi.

Web

Değişiklikler yalnızca Vertex AI Gemini API yerine Gemini Developer API kullanmaya başlıyorsanız gereklidir:

  • Güvenlik ayarları

    • Desteklenmeyen SafetySetting.method kullanımı kaldırıldı.
  • Satır içi veriler

    • Desteklenmeyen InlineDataPart.videoMetadata kullanımı kaldırıldı.

Dart

Başka değişiklik yapılmadı.

Unity

Unity desteği "Vertex AI in Firebase" tarafından sağlanmıyordu.

Unity için Firebase AI Logic SDK'sını kullanmaya nasıl başlayacağınızı öğrenin.


Firebase AI Logic ile ilgili deneyiminiz hakkında geri bildirim verme