Firebase SDK'larındaki Vertex AI'ın önizleme 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 yeniden adlandırıp Firebase AI Logic olarak 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: Gerekli API'leri etkinleştirin.

  • 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: Gerekli API'leri etkinleştirin

Seçtiğiniz "Gemini API" sağlayıcısını kullanmak için Firebase projenizde gerekli tüm API'lerin etkinleştirildiğinden emin olun.

Projenizde her iki API sağlayıcısını da aynı anda etkinleştirebileceğinizi unutmayın.

  1. Firebase konsolunda oturum açın ve Firebase projenizi seçin.

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

  3. Projeniz için gerekli API'leri ve kaynakları ayarlamanıza yardımcı olacak rehberli bir iş akışı başlatmak için Başlayın'ı tıklayın.

  4. Firebase AI Logic SDK'larıyla kullanmak istediğiniz"Gemini API" sağlayıcısını seçin. İsterseniz diğer API sağlayıcıyı daha sonra istediğiniz zaman kurup kullanabilirsiniz.

    • Gemini Developer APIbilling optional (ücretsiz Spark fiyatlandırma planında kullanılabilir)
      Konsolun iş akışı, gerekli API'leri etkinleştirir ve projenizde bir Gemini API anahtarı oluşturur.
      Bu Gemini API anahtarını uygulamanızın kod tabanına eklemeyin. Daha fazla bilgi edinin.

    • Vertex AI Gemini APIfaturalandırma gerekli (Blaze "kullandıkça öde" fiyatlandırma planı gerekir)
      Konsolun iş akışı, projenizde gerekli API'leri etkinleştirir.

  5. Kitaplığı ve uygulamanızdaki başlatma işlemini güncellemek için bu taşıma kılavuzunu okumaya 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ırmayı unutmayın:
    FirebaseVertexAI-Preview'ı seçin ve 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("com.google.firebase:firebase-vertexai:16.0.0-betaXX")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:33.16.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("com.google.firebase:firebase-vertexai:16.0.0-betaXX")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:33.16.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-preview";
    
    
    // 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 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.5-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.5-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.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, 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.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 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.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 gerekir (veya videolar için YouTube URL'lerini kullanın).

  • "Vertex AI in Firebase" SDK'larının GA sürümlerinde çeşitli değişiklikler yapıldı. Firebase AI Logic SDK'larını kullanmak için de aynı değişiklikler gereklidir. 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.

Tüm diller ve platformlar için zorunludur.

  • İşlev çağrısı
    Bu özelliği GA'dan önce uyguladıysanız şemanızı tanımlama şeklinizde güncellemeler yapmanız gerekir. İşlev bildirimlerinizi nasıl yazacağınızı öğrenmek için güncellenmiş işlev çağrısı kılavuzunu incelemenizi öneririz.

  • responseSchema
    kullanarak yapılandırılmış çıkış (ör. JSON) oluşturma Bu özelliği GA'dan önce uyguladıysanız şemanızı tanımlama şeklinizde güncellemeler yapmanız gerekir. JSON şemalarını nasıl yazacağınızı öğrenmek için yeni yapılandırılmış çıktı kılavuzunu incelemenizi öneririz.

  • Zaman aşımı

    • İstekler için varsayılan zaman aşımı 180 saniye olarak değiştirildi.

Platforma veya dile göre zorunlu

Swift

  • Numaralandırmalar

    • Çoğu enum türü, statik değişkenlere sahip struct ile değiştirildi. Bu değişiklik, API'nin geriye dönük uyumlu bir şekilde geliştirilmesine daha fazla esneklik sağlar. switch ifadelerini kullanırken artık bilinmeyen veya işlenmeyen değerleri (gelecekte SDK'ya eklenecek yeni değerler dahil) kapsayan bir default: durumu eklemeniz gerekir.

    • BlockThreshold numaralandırması HarmBlockThreshold olarak yeniden adlandırıldı. Bu tür artık struct.

    • Aşağıdaki numaralandırmalardan (artık struct) unknown ve unspecified durumları kaldırıldı: HarmCategory, HarmBlockThreshold, HarmProbability, BlockReason ve FinishReason.

    • Yeni türlerin geriye dönük uyumlu şekilde eklenmesine olanak tanımak için ModelContent.Part numaralandırması Part adlı bir protokolle değiştirildi. Bu değişiklik, İçerik bölümleri bölümünde daha ayrıntılı olarak açıklanmaktadır.

  • İçerik bölümleri

    • ThrowingPartsRepresentable protokolü kaldırıldı ve ara sıra derleyici hatalarını önlemek için ModelContent başlatıcıları basitleştirildi. Düzgün şekilde kodlanmayan resimler, generateContent içinde kullanıldığında hata vermeye devam eder.

    • ModelContent.Part durumları, Part protokolüne uygun aşağıdaki struct türleriyle değiştirildi:

      • .text - TextPart
      • .data - InlineDataPart
      • .fileData - FileDataPart
      • .functionCall - FunctionCallPart
      • .functionResponse - FunctionResponsePart
  • Zarar kategorisi

    • HarmCategory, artık SafetySetting türünde iç içe yerleştirilmeyecek şekilde değiştirildi. SafetySetting.HarmCategory olarak adlandırıyorsanız HarmCategory ile değiştirebilirsiniz.
  • Güvenlikle ilgili geri bildirim

    • Yanıtların hiçbirinde kullanılmadığı için SafetyFeedback türü kaldırıldı.
  • Alıntı meta verileri

    • citationSources özelliğinin adı, CitationMetadata içinde citations olarak değiştirildi.
  • Faturalandırılabilir toplam karakter sayısı

    • Karakter gönderilmeyen durumları yansıtmak için CountTokensResponse içindeki totalBillableCharacters özelliği isteğe bağlı olarak değiştirildi.
  • Aday yanıtı

    • Diğer platformlarla eşleşmesi için CandidateResponse, Candidate olarak yeniden adlandırıldı.
  • Üretim yapılandırması

    • GenerationConfig öğesinin herkese açık özellikleri internal olarak değiştirildi. Bunların tümü başlatıcıda yapılandırılabilir.

Kotlin

  • Numaralandırmalar

    • enum sınıfları ve sealed sınıfları normal sınıflarla değiştirildi. Bu değişiklik, API'nin geriye dönük uyumlu bir şekilde geliştirilmesine daha fazla esneklik sağlar.

    • BlockThreshold numaralandırması, HarmBlockThreshold olarak yeniden adlandırıldı.

    • Şu numaralandırmalardan değerler kaldırıldı: HarmBlockThreshold, HarmProbability, HarmSeverity, BlockReason ve FinishReason.

  • Blob yöntemleri

    • Adlarında Blob bulunan tüm yöntemler, bunun yerine InlineData kullanacak şekilde yeniden adlandırıldı.
  • Güvenlik ayarları

    • method alanı boş bırakılabilir olarak değiştirildi.
  • Süre sınıfı

    • Kotlin'in Duration sınıfının tüm kullanımları kaldırıldı ve long ile değiştirildi. Bu değişiklik, Java ile daha iyi birlikte çalışabilirlik sağlar.
  • Alıntı meta verileri

    • CitationMetadata içinde daha önce tanımlanan tüm alanları Citation adlı yeni bir sınıfa sarmalayın. Alıntılar, CitationMetadata bölümündeki citations adlı listede yer alır. Bu değişiklik, platformlar arasında türlerin daha iyi eşleşmesini sağlar.
  • Parça sayma

    • totalBillableCharacters alanı boş bırakılabilir olarak değiştirildi.
  • Faturalandırılabilir toplam karakter sayısı

    • Karakter gönderilmeyen durumları yansıtmak için CountTokensResponse içindeki totalBillableCharacters özelliği isteğe bağlı olarak değiştirildi.
  • Model oluşturma

    • Diğer platformlarla uyumlu olması için requestOptions parametresi, parametre listesinin sonuna taşındı.
  • Live API

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

    • LiveGenerationConfig.setResponseModalities, LiveGenerationConfig.setResponseModality olarak yeniden adlandırıldı.

    • LiveContentResponse.Status sınıfı kaldırıldı ve bunun yerine durum alanları LiveContentResponse öğesinin özellikleri olarak iç içe yerleştirildi.

    • LiveContentResponse sınıfı kaldırıldı ve bunun yerine modelin yanıtlarıyla eşleşen LiveServerMessage alt sınıfları sağlandı.

    • LiveModelFutures.connect, ListenableFuture<LiveSession> yerine ListenableFuture<LiveSessionFutures> döndürecek şekilde değiştirildi.

Java

  • Numaralandırmalar

    • enum sınıfları ve sealed sınıfları normal sınıflarla değiştirildi. Bu değişiklik, API'nin geriye dönük uyumlu bir şekilde geliştirilmesine daha fazla esneklik sağlar.

    • BlockThreshold numaralandırması, HarmBlockThreshold olarak yeniden adlandırıldı.

    • Şu numaralandırmalardan değerler kaldırıldı: HarmBlockThreshold, HarmProbability, HarmSeverity, BlockReason ve FinishReason.

  • Blob yöntemleri

    • Adlarında Blob bulunan tüm yöntemler, bunun yerine InlineData kullanacak şekilde yeniden adlandırıldı.
  • Güvenlik ayarları

    • method alanı boş bırakılabilir olarak değiştirildi.
  • Süre sınıfı

    • Kotlin'in Duration sınıfının tüm kullanımları kaldırıldı ve long ile değiştirildi. Bu değişiklik, Java ile daha iyi birlikte çalışabilirlik sağlar.
  • Alıntı meta verileri

    • CitationMetadata içinde daha önce tanımlanan tüm alanları Citation adlı yeni bir sınıfa sarmalayın. Alıntılar, CitationMetadata bölümündeki citations adlı listede yer alır. Bu değişiklik, platformlar arasında türlerin daha iyi eşleşmesini sağlar.
  • Parça sayma

    • totalBillableCharacters alanı boş bırakılabilir olarak değiştirildi.
  • Faturalandırılabilir toplam karakter sayısı

    • Karakter gönderilmeyen durumları yansıtmak için CountTokensResponse içindeki totalBillableCharacters özelliği isteğe bağlı olarak değiştirildi.
  • Model oluşturma

    • Diğer platformlarla uyumlu olması için requestOptions parametresi, parametre listesinin sonuna taşındı.
  • Live API

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

    • LiveGenerationConfig.setResponseModalities, LiveGenerationConfig.setResponseModality olarak yeniden adlandırıldı.

    • LiveContentResponse.Status sınıfı kaldırıldı ve bunun yerine durum alanları LiveContentResponse öğesinin özellikleri olarak iç içe yerleştirildi.

    • LiveContentResponse sınıfı kaldırıldı ve bunun yerine modelin yanıtlarıyla eşleşen LiveServerMessage alt sınıfları sağlandı.

    • LiveModelFutures.connect, ListenableFuture<LiveSession> yerine ListenableFuture<LiveSessionFutures> döndürecek şekilde değiştirildi.

  • Ç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

  • Numaralandırmalar

    • Aşağıdaki numaralandırmalardan değerler kaldırıldı: HarmCategory, BlockThreshold, HarmProbability, HarmSeverity, BlockReason ve FinishReason.
  • Engelleme nedeni

    • PromptFeedback içindeki blockReason alanı isteğe bağlı olarak değiştirildi.

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

  • Numaralandırmalar

    • Aşağıdaki numaralandırmalardan değerler kaldırıldı: HarmCategory, HarmProbability, BlockReason ve FinishReason.
  • Veri kısmı

    • Diğer platformlarla uyumlu olması için DataPart işlevi InlineDataPart, static data işlevi ise inlineData olarak yeniden adlandırıldı.
  • İstek seçenekleri

    • timeout işlevsel olmadığı için RequestOptions kaldırıldı. Bu özellik yakın gelecekte yeniden eklenecek ancak diğer platformlarla eşleşmesi için GenerativeModel türüne taşınacak.
  • Durdurma dizileri

    • GenerationConfig içindeki stopSequences parametresi isteğe bağlı olacak ve boş bir dizi yerine varsayılan olarak null değerini alacak şekilde değiştirildi.
  • Alıntılar

    • citationSources özelliğinin adı, CitationMetadata içinde citations olarak değiştirildi. CitationSource türü, diğer platformlarla eşleşmesi için Citation olarak yeniden adlandırıldı.
  • Gereksiz genel türler, yöntemler ve özellikler

    • Aşağıdaki türler, yöntemler ve özellikler yanlışlıkla kullanıma sunulduğu için kaldırıldı: defaultTimeout, CountTokensResponseFields, parseCountTokensResponse, parseEmbedContentResponse, parseGenerateContentResponse, parseContent, BatchEmbedContentsResponse, ContentEmbedding, EmbedContentRequest ve EmbedContentResponse.
  • Parça sayma

    • Artık gerekli olmayan countTokens işlevindeki ekstra alanlar kaldırıldı. Yalnızca contents gereklidir.
  • Model oluşturma

    • Diğer platformlarla uyumlu olması için systemInstruction parametresi, parametre listesinin sonuna taşındı.
  • Yerleştirme işlevi

    • Modelden desteklenmeyen yerleştirme işlevleri (embedContent ve batchEmbedContents) kaldırıldı.

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.

Taşıma ile ilgili olası hatalar

Firebase AI Logic'nın GA sürümünü kullanmaya geçiş yaparken bu taşıma kılavuzunda açıklanan gerekli değişikliklerin tümünü yapmadıysanız hatalarla karşılaşabilirsiniz.

403 Hatası: Requests to this API firebasevertexai.googleapis.com ... are blocked.

Requests to this API firebasevertexai.googleapis.com ... are blocked. hata mesajını içeren bir 403 hatası alırsanız bu genellikle Firebase yapılandırma dosyanızdaki veya nesnenizdeki Firebase API anahtarının, kullanmaya çalıştığınız ürünün izin verilenler listesinde gerekli bir API'ye sahip olmadığı anlamına gelir.

Uygulamanız tarafından kullanılan Firebase API anahtarının, anahtarın "API kısıtlamaları " izin verilenler listesinde gerekli tüm API'leri içerdiğinden emin olun. Firebase AI Logic için Firebase API anahtarınızın izin verilenler listesinde en azından Firebase AI Logic API'si bulunmalıdır. Bu API, Firebase konsolunda gerekli API'leri etkinleştirdiğinizde API anahtarınızın izin verilenler listesine otomatik olarak eklenmiş olmalıdır.

Tüm API anahtarlarınızı Google Cloud konsolundaki API'ler ve Hizmetler > Kimlik Bilgileri panelinde görüntüleyebilirsiniz.


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