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.
Ö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.
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
Firebase konsolunda Gemini ile oluşturma sayfasına gidin.
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:
Projenizi kullandığınız kadar öde Blaze fiyatlandırma planını kullanacak şekilde yükseltin.
Projenizde gerekli API'leri (Vertex AI API ve Vertex AI in Firebase API) etkinleştirin.
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
), Vertex AI Gemini API'ye 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+KTX
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.6.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.6.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ısı yapabilmek için Vertex AI hizmetini ve üretken modeli ilk kez başlatmanız gerekir.
Kotlin+KTX
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
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash")
Java
Java için bu SDK'daki akış yöntemleri, Reactive Streams kitaplığındaki birPublisher
türü döndürür.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-1.5-flash");
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Başlangıç kılavuzunu tamamladığınızda, kullanım alanınıza ve uygulamanıza uygun bir Gemini modelini ve (isteğe bağlı olarak) konum seçmeyi öğrenin.
4. Adım: Vertex AI Gemini API
Uygulamanızı Firebase'e bağladığınıza, SDK'yı eklediğinize, Vertex AI hizmetini ve üretken modeli başlattığınıza göre Vertex AI Gemini API işlevini çağırmaya hazırsınız.
Yalnızca metin içeren bir istem isteğinden metin oluşturmak için generateContent()
kullanabilirsiniz:
Kotlin+KTX
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
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-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öntemlerListenableFuture
döndürür.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-1.5-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?
Gemini modelleri hakkında daha fazla bilgi
Çeşitli kullanım alanları için kullanılabilen modeller ve bunların kotaları ile fiyatlandırması hakkında bilgi edinin.
Gemini API'ün diğer özelliklerini deneyin
- Yanıtı yayınlama dahil olmak üzere yalnızca metin istemlerinden metin oluşturma hakkında daha fazla bilgi edinin.
- Çoklu formatlı istemlerden (metin, resim, PDF, video ve ses dahil) metin oluşturun.
- Çoklu katılımlı görüşmeler (sohbet) oluşturun.
- Hem metin hem de çoklu modal istemlerden yapılandırılmış çıkış (JSON gibi) oluşturun.
- Üretken modelleri harici sistemlere ve bilgilere bağlamak için işlev çağırma özelliğini kullanın.
İçerik oluşturmayı nasıl kontrol edeceğinizi öğrenin
- En iyi uygulamalar, stratejiler ve örnek istemler dahil olmak üzere istem tasarımını anlama
- Sıcaklık ve maksimum çıkış jetonu gibi model parametrelerini yapılandırın.
- Zararlı olarak değerlendirilebilecek yanıtlar alma olasılığını ayarlamak için güvenlik ayarlarını kullanın.
Vertex AI in Firebase ile ilgili deneyiminiz hakkında geri bildirim verme