इस गाइड में, चुने गए प्लैटफ़ॉर्म के लिए Vertex AI in Firebase SDK टूल का इस्तेमाल करके, अपने ऐप्लिकेशन से सीधे Vertex AI Gemini API को कॉल करने का तरीका बताया गया है.
ज़रूरी शर्तें
इस गाइड में यह माना गया है कि आपको Android के लिए ऐप्लिकेशन डेवलप करने के लिए, Android Studio का इस्तेमाल करने का पता है.
पक्का करें कि आपका डेवलपमेंट एनवायरमेंट और Android ऐप्लिकेशन, इन ज़रूरी शर्तों को पूरा करता हो:
- Android Studio (नया वर्शन)
- आपके Android ऐप्लिकेशन को एपीआई लेवल 21 या उसके बाद के वर्शन को टारगेट करना होगा.
(ज़रूरी नहीं) सैंपल ऐप्लिकेशन देखें.
SDK टूल को तुरंत आज़माया जा सकता है. साथ ही, इसके इस्तेमाल के अलग-अलग उदाहरणों को पूरा देखा जा सकता है. अगर आपके पास अपना Android ऐप्लिकेशन नहीं है, तो सैंपल ऐप्लिकेशन का इस्तेमाल करें. सैंपल ऐप्लिकेशन का इस्तेमाल करने के लिए, आपको उसे किसी Firebase प्रोजेक्ट से कनेक्ट करना होगा.
पहला चरण: Firebase प्रोजेक्ट सेट अप करना और अपने ऐप्लिकेशन को Firebase से कनेक्ट करना
अगर आपके पास पहले से ही Firebase प्रोजेक्ट और Firebase से जुड़ा ऐप्लिकेशन है
Firebase console में, Gemini का इस्तेमाल करके ऐप्लिकेशन बनाएं पेज पर जाएं.
Vertex AI in Firebase कार्ड पर क्लिक करके, ऐसा वर्कफ़्लो लॉन्च करें जिसकी मदद से ये काम किए जा सकते हैं:
इस्तेमाल के हिसाब से पैसे चुकाने वाले ब्लेज़ प्लान का इस्तेमाल करने के लिए, अपने प्रोजेक्ट को अपग्रेड करें.
अपने प्रोजेक्ट में ज़रूरी एपीआई (Vertex AI एपीआई और Vertex AI in Firebase एपीआई) चालू करें.
अपने ऐप्लिकेशन में SDK टूल जोड़ने के लिए, इस गाइड में अगले चरण पर जाएं.
अगर आपके पास पहले से कोई Firebase प्रोजेक्ट और Firebase से कनेक्ट किया गया ऐप्लिकेशन नहीं है
दूसरा चरण: SDK टूल जोड़ना
Firebase प्रोजेक्ट सेट अप करने और ऐप्लिकेशन को Firebase से कनेक्ट करने (पिछला चरण देखें) के बाद, अब अपने ऐप्लिकेशन में Vertex AI in Firebase SDK टूल जोड़ा जा सकता है.
Android के लिए Vertex AI in Firebase SDK टूल (firebase-vertexai
), Vertex AI Gemini API को ऐक्सेस करने की सुविधा देता है.
अपनी मॉड्यूल (ऐप्लिकेशन-लेवल) Gradle फ़ाइल (जैसे, <project>/<app-module>/build.gradle.kts
) में, Android के लिए Vertex AI in Firebase लाइब्रेरी की डिपेंडेंसी जोड़ें.
हमारा सुझाव है कि लाइब्रेरी के वर्शन को कंट्रोल करने के लिए, Firebase Android BoM का इस्तेमाल करें.
Kotlin
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.7.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 के लिए, आपको दो अतिरिक्त लाइब्रेरी जोड़नी होंगी.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.7.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 का इस्तेमाल करने पर, आपका ऐप्लिकेशन हमेशा Firebase Android लाइब्रेरी के काम करने वाले वर्शन का इस्तेमाल करेगा.
तीसरा चरण: Vertex AI सेवा और जनरेटिव मॉडल को शुरू करना
कोई भी एपीआई कॉल करने से पहले, आपको Vertex AI सेवा और जनरेटिव मॉडल को शुरू करना होगा.
Kotlin
Kotlin के लिए, इस SDK टूल में मौजूद मैथड, सस्पेंड फ़ंक्शन हैं. इन्हें कोरूटीन स्कोप से कॉल किया जाना चाहिए.// 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 के लिए, इस SDK टूल में स्ट्रीमिंग के तरीके, Reactive Streams लाइब्रेरी सेPublisher
टाइप दिखाते हैं.
// 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);
शुरुआती निर्देशों वाली गाइड को पढ़ने के बाद, अपने इस्तेमाल के उदाहरण और ऐप्लिकेशन के हिसाब से, Gemini मॉडल और (ज़रूरी नहीं) जगह चुनने का तरीका जानें.
चौथा चरण: Vertex AI Gemini API को कॉल करना
अब आपने अपने ऐप्लिकेशन को Firebase से कनेक्ट कर लिया है, SDK टूल जोड़ लिया है, और Vertex AI सेवा और जनरेटिव मॉडल को शुरू कर लिया है. अब आपके पास Vertex AI Gemini API को कॉल करने का विकल्प है.
सिर्फ़ टेक्स्ट वाले प्रॉम्प्ट अनुरोध से टेक्स्ट जनरेट करने के लिए, generateContent()
का इस्तेमाल किया जा सकता है:
Kotlin
Kotlin के लिए, इस SDK टूल में मौजूद मैथड, सस्पेंड फ़ंक्शन हैं. इन्हें कोरूटीन स्कोप से कॉल किया जाना चाहिए.// 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 के लिए, इस SDK टूल के तरीकेListenableFuture
दिखाते हैं.
// 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);
तुम और क्या कर सकती हो?
Gemini मॉडल के बारे में ज़्यादा जानें
अलग-अलग कामों के लिए उपलब्ध मॉडल और उनके कोटा और कीमत के बारे में जानें.
Gemini API की अन्य सुविधाएं आज़माएं
- सिर्फ़ टेक्स्ट वाले प्रॉम्प्ट से टेक्स्ट जनरेट करने के बारे में ज़्यादा जानें. साथ ही, जवाब को स्ट्रीम करने का तरीका भी जानें.
- मल्टीमोडल प्रॉम्प्ट (जैसे, टेक्स्ट, इमेज, PDF, वीडियो, और ऑडियो) से टेक्स्ट जनरेट करें.
- कई बार बातचीत करने की सुविधा (चैट) बनाएं.
- टेक्स्ट और मल्टीमोडल प्रॉम्प्ट, दोनों से स्ट्रक्चर्ड आउटपुट (जैसे कि JSON) जनरेट करें.
- जनरेटिव मॉडल को बाहरी सिस्टम और जानकारी से कनेक्ट करने के लिए, फ़ंक्शन कॉल का इस्तेमाल करें.
कॉन्टेंट जनरेशन को कंट्रोल करने का तरीका जानें
- प्रॉम्प्ट के डिज़ाइन को समझना. इसमें, सबसे सही तरीके, रणनीतियां, और प्रॉम्प्ट के उदाहरण शामिल हैं.
- मॉडल पैरामीटर कॉन्फ़िगर करें, जैसे कि तापमान और ज़्यादा से ज़्यादा आउटपुट टोकन.
- सुरक्षा सेटिंग का इस्तेमाल करें, ताकि आपको ऐसे जवाब न मिलें जो नुकसान पहुंचा सकते हैं.
Vertex AI in Firebase इस्तेमाल करने के अपने अनुभव के बारे में सुझाव/राय देना या शिकायत करना