Firebase SDK'larında Vertex


Bu kılavuzda, seçtiğiniz platforma ait Vertex AI in Firebase SDK'sını kullanarak doğrudan uygulamanızdan Vertex AI Gemini API çağrıları nasıl yapacağınız gösterilmektedir.

Vertex AI in Firebase SDK'larını kullanarak Imagen modellerine erişmeye başlamak için bu kılavuzu da kullanabileceğinizi unutmayın.

Ön koşullar

Bu kılavuzda, Android için uygulama geliştirmek amacıyla Android Studio'yu kullanma konusunda bilgi sahibi olduğunuz varsayılmaktadır.

  • Geliştirme ortamınızın ve Android uygulamanızın aşağıdaki koşulları karşıladığından emin olun:

    • Android Studio (son sürüm)
    • Android uygulamanız API düzeyi 21 veya üstünü hedeflemelidir.
  • (İsteğe bağlı) Örnek uygulamaya göz atın.

    Örnek uygulamayı indirin

    SDK'yı hızlıca deneyebilir, çeşitli kullanım alanlarının tam uygulamasını görebilir veya kendi Android uygulamanız yoksa örnek uygulamayı kullanabilirsiniz. Örnek uygulamayı kullanmak için bir Firebase projesine bağlamanız gerekir.

1. adım: Firebase projesi oluşturun ve uygulamanızı Firebase'e bağlayın

Zaten bir Firebase projeniz ve Firebase'e bağlı bir uygulamanız varsa

  1. Firebase konsolunda Gemini ile oluşturma sayfasına gidin.

  2. Aşağıdaki görevleri tamamlamanıza yardımcı olacak bir iş akışı başlatmak için Vertex AI in Firebase kartını tıklayın:

  3. SDK'yı uygulamanıza eklemek için bu kılavuzun bir sonraki adımına geçin.

Firebase projesiniz ve Firebase'e bağlı uygulamanız yoksa


2. adım: SDK'yı ekleyin

Firebase projeniz oluşturulduktan ve uygulamanız Firebase'e bağlandıktan sonra (önceki adıma bakın) Vertex AI in Firebase SDK'sını uygulamanıza ekleyebilirsiniz.

Android için Vertex AI in Firebase SDK'sı (firebase-vertexai), Gemini ve Imagen modelleriyle etkileşim kurmak için API'lere erişim sağlar.

Modül (uygulama düzeyinde) Gradle dosyanıza (<project>/<app-module>/build.gradle.kts gibi) Android için Vertex AI in Firebase kitaplığının bağımlılığını ekleyin. Kitaplık sürümlendirmesini kontrol etmek için Firebase Android BoM simgesini kullanmanızı öneririz.

Kotlin

dependencies {
    // ... other androidx dependencies

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

Java

Java için iki ek kitaplık eklemeniz gerekir.

dependencies {
    // ... other androidx dependencies

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

Firebase Android BoM kullanıldığında uygulamanız Firebase Android kitaplıklarının daima uyumlu sürümlerini kullanır.

3. Adım: Vertex AI hizmetini ve üretken modeli başlatın

API çağrıları yapıp Gemini modeli isteğinde bulunabilmek için Vertex AI hizmetini ve üretken modeli başlatmanız gerekir.

Kotlin

Kotlin için bu SDK'daki yöntemler askıya alma işlevleridir ve koşullu akış kapsamından çağrılmaları gerekir.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")

Java

Java için bu SDK'daki akış yöntemleri, Reactive Streams kitaplığındaki bir Publisher türü döndürür.
// Initialize the Vertex AI service and the generative model
// 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);

Bu başlangıç kılavuzunu tamamladıktan sonra, kullanım alanınıza ve uygulamanıza uygun bir model ve (isteğe bağlı olarak) konum seçmeyi öğrenin.

4. Adım: Bir modele istem isteği gönderin

Uygulamanızı Firebase'e bağladığınıza, SDK'yı eklediğinize, Vertex AI hizmetini ve üretken modeli başlattığınıza göre Gemini modeline istem isteği göndermeye hazırsınız.

Yalnızca metin içeren bir istem isteğinden metin oluşturmak için generateContent() kullanabilirsiniz:

Kotlin

Kotlin için bu SDK'daki yöntemler askıya alma işlevleridir ve koşullu akış kapsamından çağrılmaları gerekir.
// Initialize the Vertex AI service and the generative model
// 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

Java için bu SDK'daki yöntemler ListenableFuture döndürür.
// Initialize the Vertex AI service and the generative model
// 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);

Başka neler yapabilirsiniz?

Desteklenen modeller hakkında daha fazla bilgi

Çeşitli kullanım alanları için kullanılabilen modeller, kotaları ve fiyatlandırmaları hakkında bilgi edinin.

Gemini API'ün diğer özelliklerini deneyin

İçerik oluşturmayı nasıl kontrol edeceğinizi öğrenin

Vertex AI Studio'i kullanarak istemler ve model yapılandırmalarıyla da denemeler yapabilirsiniz.


Vertex AI in Firebase ile ilgili deneyiminiz hakkında geri bildirim verme