इस गाइड में, चुने गए प्लैटफ़ॉर्म के लिए Vertex AI in Firebase SDK टूल का इस्तेमाल करके, अपने ऐप्लिकेशन से सीधे Gemini API in Vertex AI को कॉल करने का तरीका बताया गया है.
ध्यान दें कि इस गाइड का इस्तेमाल, Vertex AI in Firebase SDK टूल का इस्तेमाल करके Imagen मॉडल ऐक्सेस करने के लिए भी किया जा सकता है.
ज़रूरी शर्तें
Swift
इस गाइड में यह माना गया है कि आपने iOS जैसे Apple प्लैटफ़ॉर्म के लिए ऐप्लिकेशन बनाने के लिए, Xcode का इस्तेमाल किया है.
पक्का करें कि आपका डेवलपमेंट एनवायरमेंट और Apple के प्लैटफ़ॉर्म के लिए बनाया गया ऐप्लिकेशन, इन ज़रूरी शर्तों को पूरा करता हो:
- Xcode 16.2 या इसके बाद का वर्शन
- आपका ऐप्लिकेशन, iOS 15 या इसके बाद के वर्शन या macOS 12 या इसके बाद के वर्शन को टारगेट करता हो
(ज़रूरी नहीं) सैंपल ऐप्लिकेशन देखें.
क्विकस्टार्ट ऐप्लिकेशन डाउनलोड करना
SDK टूल को तुरंत आज़माया जा सकता है. साथ ही, इसके अलग-अलग इस्तेमाल के उदाहरणों को पूरा देखा जा सकता है. अगर आपके पास Apple के प्लैटफ़ॉर्म के लिए कोई ऐप्लिकेशन नहीं है, तो सैंपल ऐप्लिकेशन का इस्तेमाल किया जा सकता है. सैंपल ऐप्लिकेशन का इस्तेमाल करने के लिए, आपको उसे किसी Firebase प्रोजेक्ट से कनेक्ट करना होगा.
Kotlin
इस गाइड में यह माना गया है कि आपको Android के लिए ऐप्लिकेशन डेवलप करने के लिए, Android Studio का इस्तेमाल करने का पता है.
पक्का करें कि आपका डेवलपमेंट एनवायरमेंट और Android ऐप्लिकेशन, इन ज़रूरी शर्तों को पूरा करता हो:
- Android Studio (नया वर्शन)
- आपका ऐप्लिकेशन, एपीआई लेवल 21 या उसके बाद के वर्शन को टारगेट करता हो
(ज़रूरी नहीं) सैंपल ऐप्लिकेशन देखें.
SDK टूल को तुरंत आज़माया जा सकता है. साथ ही, इसके इस्तेमाल के अलग-अलग उदाहरणों को पूरा देखा जा सकता है. अगर आपके पास अपना Android ऐप्लिकेशन नहीं है, तो सैंपल ऐप्लिकेशन का इस्तेमाल किया जा सकता है. सैंपल ऐप्लिकेशन का इस्तेमाल करने के लिए, आपको उसे किसी Firebase प्रोजेक्ट से कनेक्ट करना होगा.
Java
इस गाइड में यह माना गया है कि आपको Android के लिए ऐप्लिकेशन डेवलप करने के लिए, Android Studio का इस्तेमाल करने का पता है.
पक्का करें कि आपका डेवलपमेंट एनवायरमेंट और Android ऐप्लिकेशन, इन ज़रूरी शर्तों को पूरा करता हो:
- Android Studio (नया वर्शन)
- आपका ऐप्लिकेशन, एपीआई लेवल 21 या उसके बाद के वर्शन को टारगेट करता हो
(ज़रूरी नहीं) सैंपल ऐप्लिकेशन देखें.
SDK टूल को तुरंत आज़माया जा सकता है. साथ ही, इसके अलग-अलग इस्तेमाल के उदाहरणों को पूरा देखा जा सकता है. अगर आपके पास अपना Android ऐप्लिकेशन नहीं है, तो सैंपल ऐप्लिकेशन का इस्तेमाल करें. सैंपल ऐप्लिकेशन का इस्तेमाल करने के लिए, आपको उसे किसी Firebase प्रोजेक्ट से कनेक्ट करना होगा.
Web
इस गाइड में यह माना गया है कि आपको वेब ऐप्लिकेशन बनाने के लिए, JavaScript का इस्तेमाल करने के बारे में पता है. यह गाइड, फ़्रेमवर्क पर निर्भर नहीं करती.
पक्का करें कि आपका डेवलपमेंट एनवायरमेंट और वेब ऐप्लिकेशन, इन ज़रूरी शर्तों को पूरा करता हो:
- (ज़रूरी नहीं) Node.js
- मॉडर्न वेब ब्राउज़र
(ज़रूरी नहीं) सैंपल ऐप्लिकेशन देखें.
SDK टूल को तुरंत आज़माया जा सकता है. साथ ही, इसके इस्तेमाल के अलग-अलग उदाहरणों को पूरी तरह से देखा जा सकता है. अगर आपके पास अपना वेब ऐप्लिकेशन नहीं है, तो सैंपल ऐप्लिकेशन का इस्तेमाल किया जा सकता है. सैंपल ऐप्लिकेशन का इस्तेमाल करने के लिए, आपको उसे किसी Firebase प्रोजेक्ट से कनेक्ट करना होगा.
Dart
इस गाइड में यह माना गया है कि आपको Flutter की मदद से ऐप्लिकेशन बनाने का तरीका पता है.
पक्का करें कि आपका डेवलपमेंट एनवायरमेंट और Flutter ऐप्लिकेशन, इन ज़रूरी शर्तों को पूरा करता हो:
- Dart 3.2.0 या इसके बाद का वर्शन
(ज़रूरी नहीं) सैंपल ऐप्लिकेशन देखें.
SDK टूल को तुरंत आज़माया जा सकता है. साथ ही, अलग-अलग इस्तेमाल के उदाहरणों को पूरी तरह से लागू किया जा सकता है. अगर आपके पास अपना Flutter ऐप्लिकेशन नहीं है, तो सैंपल ऐप्लिकेशन का इस्तेमाल किया जा सकता है. सैंपल ऐप्लिकेशन का इस्तेमाल करने के लिए, आपको उसे किसी Firebase प्रोजेक्ट से कनेक्ट करना होगा.
पहला चरण: Firebase प्रोजेक्ट सेट अप करना और अपने ऐप्लिकेशन को Firebase से कनेक्ट करना
अगर आपके पास पहले से ही Firebase प्रोजेक्ट और Firebase से जुड़ा ऐप्लिकेशन है
Firebase console में, Vertex AI पेज पर जाएं.
Vertex AI in Firebase कार्ड पर क्लिक करके, ऐसा वर्कफ़्लो लॉन्च करें जिसकी मदद से ये काम किए जा सकते हैं:
इस्तेमाल के हिसाब से पैसे चुकाने वाले ब्लेज़ प्लान का इस्तेमाल करने के लिए, अपने प्रोजेक्ट को अपग्रेड करें.
अपने प्रोजेक्ट में ज़रूरी एपीआई (Vertex AI एपीआई और Vertex AI in Firebase एपीआई) चालू करें.
अपने ऐप्लिकेशन में SDK टूल जोड़ने के लिए, इस गाइड में अगले चरण पर जाएं.
अगर आपके पास पहले से कोई Firebase प्रोजेक्ट और Firebase से कनेक्ट किया गया ऐप्लिकेशन नहीं है
दूसरा चरण: SDK टूल जोड़ना
Firebase प्रोजेक्ट सेट अप करने और ऐप्लिकेशन को Firebase से कनेक्ट करने (पिछला चरण देखें) के बाद, अब अपने ऐप्लिकेशन में Vertex AI in Firebase SDK टूल जोड़ा जा सकता है.
Swift
Firebase डिपेंडेंसी इंस्टॉल और मैनेज करने के लिए, Swift Package Manager का इस्तेमाल करें.
Vertex AI in Firebase लाइब्रेरी, Gemini और Imagen मॉडल के साथ इंटरैक्ट करने के लिए, एपीआई का ऐक्सेस देती है. इस लाइब्रेरी को Apple प्लैटफ़ॉर्म (firebase-ios-sdk
) के लिए Firebase SDK टूल के हिस्से के तौर पर शामिल किया गया है.
Xcode में, अपना ऐप्लिकेशन प्रोजेक्ट खोलकर, फ़ाइल > पैकेज जोड़ें पर जाएं.
जब कहा जाए, तब Firebase के Apple प्लैटफ़ॉर्म के SDK टूल का रिपॉज़िटरी जोड़ें:
https://github.com/firebase/firebase-ios-sdk
SDK टूल का नया वर्शन चुनें.
FirebaseVertexAI
लाइब्रेरी चुनें.
प्रोसेस पूरी होने के बाद, Xcode बैकग्राउंड में आपकी डिपेंडेंसी को अपने-आप हल और डाउनलोड करना शुरू कर देगा.
Kotlin
Vertex AI in Firebase Android के लिए SDK टूल (firebase-vertexai
), Gemini और Imagen मॉडल के साथ इंटरैक्ट करने के लिए, एपीआई का ऐक्सेस देता है.
अपनी मॉड्यूल (ऐप्लिकेशन-लेवल) Gradle फ़ाइल (जैसे, <project>/<app-module>/build.gradle.kts
) में, Android के लिए Vertex AI in Firebase लाइब्रेरी की डिपेंडेंसी जोड़ें.
हमारा सुझाव है कि लाइब्रेरी के वर्शन को कंट्रोल करने के लिए, Firebase Android BoM का इस्तेमाल करें.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.13.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") }
Firebase Android BoM का इस्तेमाल करने पर, आपका ऐप्लिकेशन हमेशा Firebase की Android लाइब्रेरी के काम करने वाले वर्शन का इस्तेमाल करेगा.
Java
Vertex AI in Firebase Android के लिए SDK टूल (firebase-vertexai
), Gemini और Imagen मॉडल के साथ इंटरैक्ट करने के लिए, एपीआई का ऐक्सेस देता है.
अपनी मॉड्यूल (ऐप्लिकेशन-लेवल) Gradle फ़ाइल (जैसे, <project>/<app-module>/build.gradle.kts
) में, Android के लिए Vertex AI in Firebase लाइब्रेरी की डिपेंडेंसी जोड़ें.
हमारा सुझाव है कि लाइब्रेरी के वर्शन को कंट्रोल करने के लिए, Firebase Android BoM का इस्तेमाल करें.
Java के लिए, आपको दो अतिरिक्त लाइब्रेरी जोड़नी होंगी.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.13.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 लाइब्रेरी के काम करने वाले वर्शन का इस्तेमाल करेगा.
Web
Vertex AI in Firebase लाइब्रेरी, Gemini और Imagen मॉडल के साथ इंटरैक्ट करने के लिए एपीआई का ऐक्सेस देती है. इस लाइब्रेरी को वेब के लिए Firebase JavaScript SDK टूल के हिस्से के तौर पर शामिल किया गया है.
npm का इस्तेमाल करके, वेब के लिए Firebase JS SDK टूल इंस्टॉल करें:
npm install firebase
अपने ऐप्लिकेशन में Firebase को शुरू करने के लिए:
import { initializeApp } from "firebase/app"; // 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);
Dart
Flutter (firebase_vertexai
) के लिए Vertex AI in Firebase प्लग इन, Gemini और Imagen मॉडल के साथ इंटरैक्ट करने के लिए, एपीआई का ऐक्सेस देता है.
Flutter प्रोजेक्ट डायरेक्ट्री से, कोर प्लग इन और Vertex AI in Firebase प्लग इन इंस्टॉल करने के लिए, यह कमांड चलाएं:
flutter pub add firebase_core && flutter pub add firebase_vertexai
अपनी
lib/main.dart
फ़ाइल में, Firebase कोर प्लगिन, Vertex AI in Firebase प्लगिन, और पहले जनरेट की गई कॉन्फ़िगरेशन फ़ाइल इंपोर्ट करें:import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_vertexai/firebase_vertexai.dart'; import 'firebase_options.dart';
अपनी
lib/main.dart
फ़ाइल में, कॉन्फ़िगरेशन फ़ाइल से एक्सपोर्ट किए गएDefaultFirebaseOptions
ऑब्जेक्ट का इस्तेमाल करके Firebase को शुरू करें:await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, );
अपना Flutter ऐप्लिकेशन फिर से बनाएं:
flutter run
तीसरा चरण: Vertex AI सेवा को शुरू करना और GenerativeModel
इंस्टेंस बनाना
किसी भी एपीआई को कॉल करने और Gemini मॉडल को प्रॉम्प्ट भेजने से पहले, आपको Vertex AI सेवा को शुरू करना होगा और GenerativeModel
इंस्टेंस बनाना होगा.
Swift
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-flash")
Kotlin
Kotlin के लिए, इस SDK टूल में मौजूद मैथड, सस्पेंड फ़ंक्शन हैं. इन्हें कोरूटीन स्कोप से कॉल किया जाना चाहिए.// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")
Java
Java के लिए, इस SDK टूल में स्ट्रीमिंग के तरीके, Reactive Streams लाइब्रेरी सेPublisher
टाइप दिखाते हैं.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// 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);
Web
import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
// 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 service
const vertexAI = getVertexAI(firebaseApp);
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-flash" });
Dart
import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';
// Initialize FirebaseApp
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');
शुरू करने से जुड़ी इस गाइड को पढ़ने के बाद, अपने इस्तेमाल के उदाहरण और ऐप्लिकेशन के हिसाब से सही मॉडल और (ज़रूरी नहीं) जगह चुनने का तरीका जानें.
चौथा चरण: किसी मॉडल को प्रॉम्प्ट का अनुरोध भेजना
अपने ऐप्लिकेशन को Firebase से कनेक्ट करने, SDK टूल जोड़ने, और Vertex AI सेवा और जनरेटिव मॉडल को शुरू करने के बाद, अब आपके पास Gemini मॉडल को प्रॉम्प्ट अनुरोध भेजने का विकल्प है.
सिर्फ़ टेक्स्ट वाले प्रॉम्प्ट अनुरोध से टेक्स्ट जनरेट करने के लिए, generateContent()
का इस्तेमाल किया जा सकता है:
Swift
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-flash")
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
let response = try await model.generateContent(prompt)
print(response.text ?? "No text in response.")
Kotlin
Kotlin के लिए, इस SDK टूल में मौजूद मैथड, सस्पेंड फ़ंक्शन हैं. इन्हें कोरूटीन स्कोप से कॉल किया जाना चाहिए.// Initialize the Vertex AI service and create a `GenerativeModel` instance
// 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 के लिए, इस SDK टूल के तरीकेListenableFuture
दिखाते हैं.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// 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);
Web
import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
// 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 service
const vertexAI = getVertexAI(firebaseApp);
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-flash" });
// Wrap in an async function so you can use await
async function run() {
// Provide a prompt that contains text
const prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
const result = await model.generateContent(prompt);
const response = result.response;
const text = response.text();
console.log(text);
}
run();
Dart
import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');
// Provide a prompt that contains text
final prompt = [Content.text('Write a story about a magic backpack.')];
// To generate text output, call generateContent with the text input
final response = await model.generateContent(prompt);
print(response.text);
तुम और क्या कर सकती हो?
इस्तेमाल किए जा सकने वाले मॉडल के बारे में ज़्यादा जानें
अलग-अलग कामों के लिए उपलब्ध मॉडल, उनके कोटे, और कीमत के बारे में जानें.
अन्य सुविधाएं आज़माएं
- सिर्फ़ टेक्स्ट वाले प्रॉम्प्ट से टेक्स्ट जनरेट करने के बारे में ज़्यादा जानें. साथ ही, जवाब को स्ट्रीम करने का तरीका भी जानें.
- मल्टीमोडल प्रॉम्प्ट (जैसे, टेक्स्ट, इमेज, PDF, वीडियो, और ऑडियो) से टेक्स्ट जनरेट करें.
- कई बार की गई बातचीत (चैट) बनाएं.
- टेक्स्ट और मल्टीमोडल प्रॉम्प्ट, दोनों से स्ट्रक्चर्ड आउटपुट (जैसे कि JSON) जनरेट करें.
- टेक्स्ट प्रॉम्प्ट से इमेज जनरेट करें.
- Gemini Live API का इस्तेमाल करके, इनपुट और आउटपुट को स्ट्रीम करें. इसमें ऑडियो भी शामिल है.
- जनरेटिव मॉडल को बाहरी सिस्टम और जानकारी से कनेक्ट करने के लिए, फ़ंक्शन कॉल का इस्तेमाल करें.
कॉन्टेंट जनरेशन को कंट्रोल करने का तरीका जानें
- प्रॉम्प्ट के डिज़ाइन को समझना. इसमें सबसे सही तरीके, रणनीतियां, और प्रॉम्प्ट के उदाहरण शामिल हैं.
- मॉडल पैरामीटर कॉन्फ़िगर करें. जैसे, तापमान और ज़्यादा से ज़्यादा आउटपुट टोकन (Gemini के लिए) या आसपेक्ट रेशियो और व्यक्ति जनरेशन (Imagen के लिए).
- सुरक्षा सेटिंग का इस्तेमाल करें, ताकि आपको ऐसे जवाब न मिलें जो नुकसान पहुंचा सकते हैं.
Vertex AI in Firebase के साथ अपने अनुभव के बारे में सुझाव/राय दें या शिकायत करें