एआई (AI) सलूशन वाला Android

जनरेटिव एआई की मदद से, अपने Android ऐप्लिकेशन को बेहतर बनाना

इस लर्निंग पाथवे में, आपको Google की टेक्नोलॉजी का इस्तेमाल करके, कम मेहनत में ज़्यादा दिलचस्प Android ऐप्लिकेशन बनाने का तरीका पता चलेगा. यहां दिए गए सेक्शन में, आपको खाना बनाने के लिए एक ऐप्लिकेशन बनाना और उसे बेहतर बनाना होगा. यह ऐप्लिकेशन, Android डेवलपर के तौर पर आपके बनाए जा रहे ऐप्लिकेशन की तरह ही होगा.

इसमें आपको Android Studio में Gemini का इस्तेमाल करने का तरीका पता चलेगा, ताकि आप ज़्यादा तेज़ी से सीख सकें और डेवलप कर सकें. साथ ही, अपने ऐप्लिकेशन के स्टोरेज लेयर और साइन-इन बनाने के लिए Firebase का इस्तेमाल करने का तरीका भी पता चलेगा. इसके अलावा, अपने ऐप्लिकेशन में बेहतरीन जनरेटिव एआई (AI) सुविधाएं बनाने के लिए Gemini का इस्तेमाल करने का तरीका भी पता चलेगा. साथ ही, प्रोडक्शन में अपने ऐप्लिकेशन के साथ काम करने के लिए, Firebase रिमोट कॉन्फ़िगरेशन, Google Analytics, और Crashlytics जैसे टूल इस्तेमाल करने का तरीका भी पता चलेगा.

Android Studio में Gemini की मदद से, Android ऐप्लिकेशन डेवलपमेंट को बेहतर बनाना

Android Studio में मौजूद Gemini की मदद से, Android ऐप्लिकेशन बनाना पहले से ज़्यादा आसान हो गया है. यह एआई की मदद से काम करने वाला कोडिंग असिस्टेंट है.

Android Studio में Gemini को एआई के साथ इंटिग्रेट किया गया है. यह एआई, सीधे तौर पर उस आईडीई में काम करता है जिसका इस्तेमाल हर रोज़ किया जाता है. इसे इस तरह से डिज़ाइन किया गया है कि यह सॉफ़्टवेयर डेवलपमेंट के पूरे लाइफ़साइकल के दौरान आपकी मदद करके, अच्छी क्वालिटी के Android ऐप्लिकेशन को तेज़ी से और आसानी से बनाने में मदद कर सके. इसका मतलब है कि नए कॉन्सेप्ट को तेज़ी से सीखा जा सकता है, आसानी से प्रोटोटाइप बनाया जा सकता है, और अपने ऐप्लिकेशन के ज़रूरी हिस्सों पर ज़्यादा ध्यान दिया जा सकता है.

Android ऐप्लिकेशन बनाने की शुरुआत करते समय, देखें कि Android Studio में Gemini की मदद से, डेवलपमेंट की प्रोसेस को कैसे बेहतर बनाया जा सकता है.
अगर आपने Android या Android के डेवलपमेंट से जुड़े खास क्षेत्रों के बारे में हाल ही में जाना है, तो Android Studio में मौजूद Gemini आपके लिए एक बेहतरीन टूल हो सकता है.

  • अपने सवालों के तुरंत जवाब पाएं: Android Studio की चैट विंडो में जाकर, Gemini से Android के बुनियादी कॉन्सेप्ट, खास एपीआई या सबसे सही तरीकों के बारे में सवाल पूछे जा सकते हैं. उदाहरण के लिए, "गहरे रंग वाली थीम क्या है?" या "Android पर जगह की जानकारी पाने का सबसे अच्छा तरीका क्या है?" पूछा जा सकता है.
  • कोड के उदाहरण और दिशा-निर्देश पाएं: Gemini, कोड स्निपेट जनरेट कर सकता है. साथ ही, अलग-अलग सुविधाओं को लागू करने के बारे में दिशा-निर्देश दे सकता है. जैसे, कैमरे की सुविधा जोड़ना या Room डेटाबेस बनाना. Kotlin या खास तौर पर Jetpack Compose के लिए भी कोड का अनुरोध किया जा सकता है.
  • गड़बड़ियों को समझना और उन्हें ठीक करना: अगर आपको बिल्ड या सिंक करने से जुड़ी गड़बड़ियां मिलती हैं, तो Gemini से उनके बारे में जानकारी और उन्हें ठीक करने के सुझाव मांगे जा सकते हैं. Gemini, ऐप्लिकेशन क्वालिटी की अहम जानकारी से क्रैश रिपोर्ट का विश्लेषण करने में भी मदद कर सकता है. साथ ही, यह खास जानकारी देता है और आगे के कदमों के सुझाव भी देता है.
उदाहरण के लिए, खाना बनाने के लिए बनाए गए हमारे काल्पनिक ऐप्लिकेशन के लिए, Gemini से नए Compose लेआउट का प्रोटोटाइप बनाने के लिए कहा जा सकता है, ताकि रेसिपी कार्ड दिखाया जा सके. Gemini की मल्टीमोडल सुविधाओं का इस्तेमाल करके, बस एक वायरफ़्रेम मॉकअप दें और Gemini से अपने यूज़र इंटरफ़ेस (यूआई) के लिए कोड स्केच करने के लिए कहें.
Android Studio में Gemini के व्यक्तिगत वर्शन को बिना किसी शुल्क के, झलक के तौर पर आज़माया जा सकता है.

हालांकि, बड़ी टीम के साथ काम करने पर, निजता और मैनेजमेंट से जुड़ी ज़्यादा ज़रूरी शर्तों को पूरा करना पड़ता है. ऐसे में, कारोबारों के लिए Studio में मौजूद Gemini की मदद से, ज़्यादा फ़ायदे मिलते हैं. जैसे, बेहतर निजता, सुरक्षा, और कोड को पसंद के मुताबिक बनाने की सुविधाएं. साथ ही, यह आपके Google Cloud क्रेडिट के साथ इस्तेमाल करने के लिए उपलब्ध है.

Gemini Code Assist के साथ-साथ, ये टूल टीमों को एआई की शक्ति का भरोसेमंद तरीके से फ़ायदा पाने में मदद करते हैं. साथ ही, निजता, सुरक्षा, और मैनेजमेंट से जुड़ी ज़रूरी ज़रूरतों को पूरा करते हैं.

आपके ऐप्लिकेशन के लिए Firebase के बिल्डिंग ब्लॉक

ऐप्लिकेशन डेवलपमेंट में, क्लाउड स्टोरेज, उपयोगकर्ता की पुष्टि करने की सुविधा, और ऐप्लिकेशन क्रैश होने की रिपोर्ट करने जैसी सामान्य सुविधाएं ज़रूरी होती हैं. ये सुविधाएं किसी भी ऐप्लिकेशन को डेवलप और चलाने के लिए ज़रूरी हैं.

Firebase, ये ज़रूरी सुविधाएं उपलब्ध कराकर, Android ऐप्लिकेशन डेवलप करने की प्रोसेस को आसान बनाता है. इससे, आपको अपना बैकएंड लागू करने की ज़रूरत नहीं पड़ती.
उदाहरण के लिए, अगर आपको कोई ऐसा ऐप्लिकेशन बनाना है जिसमें रेसिपी तैयार करने की जानकारी हो, तो आपको रेसिपी, खाने के प्लान, और सामग्री की सूचियों को डिवाइस के अलावा किसी अन्य जगह पर सेव करना होगा. ऐसा इसलिए, ताकि अगर उपयोगकर्ता किसी दूसरे फ़ोन का इस्तेमाल करना शुरू कर दे, तो भी वह इनका इस्तेमाल कर सके. इस डेटा को Cloud Firestore में सेव किया जा सकता है.

Cloud Firestore, Firebase और Google Cloud की ओर से उपलब्ध कराया जाने वाला स्केलेबल NoSQL क्लाउड डेटाबेस है. यह रीयल-टाइम लिसनर की मदद से, सभी क्लाइंट ऐप्लिकेशन में रीयल-टाइम डेटा सिंक करने की सुविधा देता है. साथ ही, इसमें मोबाइल और वेब के लिए ऑफ़लाइन सहायता भी है. इससे, नेटवर्क की उपलब्धता के बावजूद ऐप्लिकेशन की परफ़ॉर्मेंस बेहतर बनी रहती है. यह Cloud Functions के साथ-साथ, Firebase और Google Cloud के अन्य प्रॉडक्ट के साथ आसानी से इंटिग्रेट हो जाता है.

उपयोगकर्ता की पुष्टि करना ज़रूरी है, ताकि डिवाइस बदलने वाले उपयोगकर्ता अपने डेटा को ऐक्सेस कर सकें. साथ ही, यह पक्का किया जा सके कि कोई दूसरा व्यक्ति उनका डेटा ऐक्सेस न कर सके!

Firebase Authentication एक बेहतरीन टूल है. इसकी मदद से, Android ऐप्लिकेशन में उपयोगकर्ता की पुष्टि करने की प्रोसेस को आसानी से जोड़ा जा सकता है. यह बैकएंड सेवाएं और पहले से तैयार यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी वाला एसडीके टूल उपलब्ध कराता है. यह पुष्टि करने के कई तरीकों के साथ काम करता है. जैसे, ईमेल/पासवर्ड से लॉगिन करना, फ़ोन नंबर से पुष्टि करना, और Google, Facebook, और Twitter जैसे लोकप्रिय फ़ेडरेटेड आइडेंटिटी प्रोवाइडर के साथ इंटिग्रेशन करना.
गड़बड़ियों और क्रैश को मॉनिटर करना ज़रूरी है, ताकि यह पक्का किया जा सके कि आपके ऐप्लिकेशन सही तरीके से काम कर रहे हैं और लोगों को पसंद आ रहे हैं. क्रैश होने वाले ऐप्लिकेशन से, उपयोगकर्ताओं को परेशानी होगी और वे उसे अनइंस्टॉल कर देंगे!

Firebase Crashlytics, ऐप्लिकेशन बंद होने की रीयल-टाइम रिपोर्ट देता है. इसकी मदद से, ऐप्लिकेशन की स्थिरता से जुड़ी समस्याओं को ट्रैक किया जा सकता है, उन्हें प्राथमिकता दी जा सकती है, और उन्हें ठीक किया जा सकता है. स्थिरता की समस्याएं आपके ऐप्लिकेशन की क्वालिटी को खराब करती हैं. यह क्रैश को बेहतर तरीके से ग्रुप करके और उन्हें होने की वजहों को हाइलाइट करके, समस्या हल करने में आपका समय बचाता है.

Cloud Firestore और Firebase Authentication, दोनों बिना किसी शुल्क के ज़्यादा टियर उपलब्ध कराते हैं. हालांकि, अगर आपके ऐप्लिकेशन को इन सेवाओं से ज़्यादा कोटा या बेहतर सुविधाएं चाहिए, तो आपको पैसे चुकाकर लिया जाने वाला प्लान लेना होगा. हालांकि, चिंता न करें – इन खर्चों को पूरा करने के लिए, अपने Cloud क्रेडिट का इस्तेमाल किया जा सकता है! Crashlytics का इस्तेमाल करने के लिए कोई शुल्क नहीं लिया जाता. भले ही, इसका इस्तेमाल कितना भी किया जाए.

Firebase के अन्य समाधानों के बारे में जानने के लिए, Firebase की वेबसाइट पर जाएं.
scope.launch {
  val response = model.generateContent(
    "Create a shopping list with $cuisineStyle ingredients")
}
उदाहरण के लिए, रेसिपी ऐप्लिकेशन के मामले में, Gemini 2.0 Flash किसी खास तरह के खाने को पकाने के लिए, उसके लिए ज़रूरी सामग्री की खरीदारी की सूची बना सकता है. मॉडल से JSON स्ट्रिंग जनरेट करने के लिए भी कहा जा सकता है. इस स्ट्रिंग को ऐप्लिकेशन में आसानी से पार्स करके, यूज़र इंटरफ़ेस (यूआई) में रेंडर किया जा सकता है. सूची जनरेट करने के लिए, टेक्स्ट प्रॉम्प्ट के साथ `generateContent()` फ़ंक्शन को कॉल करें.

इसके बारे में ज़्यादा जानने के लिए, Android डेवलपर गाइड पढ़ें.

Android पर जनरेटिव एआई की सुविधा

खाना बनाने के लिए बने हमारे Android ऐप्लिकेशन में जनरेटिव एआई को कई तरीकों से इंटिग्रेट किया जा सकता है. यहां हर विकल्प के बारे में खास जानकारी दी गई है:
Gemini Nano, Gemini फ़ैमिली का एक मॉडल है. इसे डिवाइस पर चलाने के लिए ऑप्टिमाइज़ किया गया है. इसे AICore के ज़रिए सीधे Android OS के साथ इंटिग्रेट किया गया है. इसका इस्तेमाल, जनरेटिव एआई से जुड़े अनुभव देने के लिए किया जा सकता है. इसके लिए, आपको इंटरनेट कनेक्शन की ज़रूरत नहीं पड़ेगी या क्लाउड पर डेटा भेजने की ज़रूरत नहीं पड़ेगी.

डिवाइस पर एआई का इस्तेमाल उन कामों के लिए किया जा सकता है जिनमें कम इंतज़ार, कम कीमत, और निजता की सुरक्षा सबसे ज़्यादा अहम होती है. उदाहरण के लिए, खाने की तैयारी करने वाले ऐप्लिकेशन में, Gemini Nano का इस्तेमाल करके अलग-अलग तरह के खाने और उपयोगकर्ता के खाने के इतिहास के आधार पर, खाने के आइडिया सुझाए जा सकते हैं.

Android के दस्तावेज़ में, Gemini Nano के तकनीकी आर्किटेक्चर के बारे में ज़्यादा जानें.

अपने ऐप्लिकेशन में Gemini Nano को आज़माने के लिए, नीचे दिए गए तरीके से, डिवाइस में पहले से मौजूद Gemini Nano को एक्सपेरिमेंट के तौर पर उपलब्ध Google AI Edge SDK के साथ देखें.
क्लाउड पर चलने के लिए ऑप्टिमाइज़ किए गए जनरेटिव एआई मॉडल, आम तौर पर डिवाइस पर मौजूद एआई मॉडल से ज़्यादा बेहतर होते हैं.

Android डेवलपर के तौर पर, Firebase में Vertex AI का इस्तेमाल करके, अपने Android ऐप्लिकेशन में जनरेटिव एआई की सुविधाओं को तुरंत लागू किया जा सकता है. इसके लिए, टेक्स्ट जनरेट करने के टास्क के लिए Gemini Pro और Flash मॉडल का इस्तेमाल करें. साथ ही, इमेज जनरेट करने के टास्क के लिए Imagen का इस्तेमाल करें.

एआई मॉडल के Gemini Pro और Flash फ़ैमिली, कई तरह के काम कर सकते हैं. ये इमेज, ऑडियो, और वीडियो इनपुट लेते हैं और टेक्स्ट आउटपुट जनरेट करते हैं. इस आउटपुट को JSON, XML, और CSV फ़ॉर्मैट में फ़ॉर्मैट किया जा सकता है. Gemini के नए मॉडल, ऑडियो और इमेज जैसे मल्टीमोडल आउटपुट भी जनरेट कर सकते हैं!

उदाहरण के लिए, खाने की तैयारी करने वाले ऐप्लिकेशन में, Gemini मॉडल का इस्तेमाल करके किसी खास तरह के खाने के लिए, सामान की सूची बनाई जा सकती है.

Gemini मॉडल को किए जाने वाले इन कॉल की लागत को कवर करने के लिए, अपने Google Cloud क्रेडिट का इस्तेमाल किया जा सकता है!

अपने ऐप्लिकेशन में, क्लाउड पर होस्ट किए गए Gemini मॉडल इस्तेमाल करने का तरीका जानने के लिए, यहां दिया गया Firebase में Vertex AI के ज़रिए Gemini का इस्तेमाल करने का तरीका देखें.
Imagen 3, इमेज जनरेट करने वाला Google का सबसे नया मॉडल है. साथ ही, Firebase में Vertex AI की मदद से इसे ऐक्सेस किया जा सकता है. इससे, अपने Android ऐप्लिकेशन में इमेज जनरेट करने की सुविधाओं को तुरंत और आसानी से जोड़ा जा सकता है.

उदाहरण के लिए, खाने की तैयारी करने वाले ऐप्लिकेशन में, रेसिपी के इलस्ट्रेशन जनरेट करने के लिए, Imagen 3 मॉडल का इस्तेमाल किया जा सकता है.

इसकी कीमत, आपके Google Cloud क्रेडिट से चुकाई जा सकती है.

अपने ऐप्लिकेशन में Imagen 3 का इस्तेमाल करने का तरीका जानने के लिए, इमेज जनरेट करने के लिए Imagen 3 का इस्तेमाल करने का तरीका यहां पढ़ें.
बैकएंड इंटिग्रेशन की मदद से भी जनरेटिव एआई की सुविधाएं जोड़ी जा सकती हैं:

  • Genkit एक ओपन-सोर्स फ़्रेमवर्क है. इसकी मदद से, एआई की मदद से काम करने वाले ऐप्लिकेशन को आसानी से डेवलप, डिप्लॉय, और मॉनिटर किया जा सकता है.
  • एमएलओपीएस की ज़्यादा बेहतर ज़रूरतों के लिए, Google Cloud के Vertex AI ने पूरी तरह से मैनेज की जाने वाली सेवाएं उपलब्ध कराई हैं. साथ ही, Vertex AI मॉडल गार्डन की मदद से, मॉडल की बेहतर सुविधाएं भी दी हैं. इन सेवाओं के लिए होने वाली किसी भी तरह की लागत को पूरा करने के लिए, Google Cloud क्रेडिट का इस्तेमाल किया जा सकता है.


अगर आपको Gemini Nano के अलावा, डिवाइस पर एआई इंफ़रेंस की सुविधा चालू करनी है, तो LiteRT और MediaPipe का भी इस्तेमाल किया जा सकता है:
  • LiteRT (पहले इसे TFLite कहा जाता था), डिवाइस पर एआई (AI) के लिए Google का बेहतर परफ़ॉर्म करने वाला रनटाइम है. इसे सीधे डिवाइसों पर मशीन लर्निंग मॉडल को बेहतर तरीके से लागू करने के लिए डिज़ाइन किया गया है.
  • MediaPipe एक ओपन-सोर्स फ़्रेमवर्क है. इसकी मदद से, डेवलपर रीयल-टाइम में वीडियो और ऑडियो जैसे मल्टीमीडिया डेटा को प्रोसेस करने के लिए, मशीन लर्निंग पाइपलाइन बना सकते हैं.


Android के जेन एआई के ऑफ़र के बारे में ज़्यादा जानने के लिए, Android दस्तावेज़ के एआई सेक्शन पर जाएं.
Google AI Edge SDK की मदद से, Android ऐप्लिकेशन डेवलपर अपने ऐप्लिकेशन को बेहतर बनाने के लिए, Gemini Nano की डिवाइस पर मौजूद जेन एआई की सुविधाओं को इंटिग्रेट और एक्सपेरिमेंट कर सकते हैं. इसे इस्तेमाल करने का तरीका यहां बताया गया है:
  • aicore-experimental Google ग्रुप में शामिल हों
  • Android AICore टेस्टिंग प्रोग्राम में ऑप्ट इन करें
    यह तरीका पूरा करने के बाद, Play Store पर AICore ऐप्लिकेशन का नाम "Android AICore" से बदलकर "Android AICore (बीटा)" हो जाएगा. यह नाम, 'ऐप्लिकेशन और डिवाइस मैनेज करें' सेक्शन में दिखेगा.
  • यह पक्का करने के लिए कि आपके डिवाइस पर APK और बाइनरी सही तरीके से डाउनलोड हो गई हैं, यह तरीका अपनाएं.
  • इसके बाद, इस डिपेंडेंसी को जोड़कर अपने ऐप्लिकेशन के Gradle कॉन्फ़िगरेशन को अपडेट करें: implementation("com.google.ai.edge.aicore:aicore:0.0.1-exp01")
    साथ ही, पक्का करें कि आपने SDK टूल का कम से कम टारगेट 31 पर सेट किया हो.
implementation("com.google.ai.edge.aicore:aicore:0.0.1-exp01")
इसके बाद, मॉडल के जवाबों को कंट्रोल करने के लिए, उसे कॉन्फ़िगर किया जा सकता है. इसमें संदर्भ देना और वैकल्पिक रूप से ये पैरामीटर सेट करना शामिल है:

  • तापमान: यह यादृच्छिकता के लेवल को कंट्रोल करता है. ज़्यादा वैल्यू से आउटपुट में ज़्यादा वैरिएशन होगा.
  • टॉप K: इससे पता चलता है कि आउटपुट जनरेट करने के लिए, सबसे ज़्यादा रैंक वाले टोकन की संख्या कितनी होनी चाहिए.
  • उम्मीदवारों की संख्या: यह सेट करता है कि कितने जवाब दिखाए जाएं.
  • ज़्यादा से ज़्यादा आउटपुट टोकन: इससे रिस्पॉन्स की ज़्यादा से ज़्यादा लंबाई सेट होती है.
val generationConfig = generationConfig {
  context = ApplicationProvider.getApplicationContext()
  temperature = 0.2f
  topK = 16
  maxOutputTokens = 256
}
वैकल्पिक downloadCallback फ़ंक्शन बनाएं. इस कॉलबैक फ़ंक्शन का इस्तेमाल, मॉडल डाउनलोड करने के लिए किया जाता है. यह ऐसे मैसेज भी दिखाता है जिनका इस्तेमाल डीबग करने के लिए किया जा सकता है. पहले से बनाए गए जनरेशन और डाउनलोड कॉन्फ़िगरेशन का इस्तेमाल करके, `GenerativeModel` ऑब्जेक्ट जनरेट करें.
val downloadConfig = DownloadConfig(downloadCallback)
val generativeModel = GenerativeModel(
  generationConfig = generationConfig,
  downloadConfig = downloadConfig // optional
)
आखिर में, मॉडल को प्रॉम्प्ट भेजकर अनुमान लगाने की प्रोसेस शुरू करें. पक्का करें कि GenerativeModel.generateContent(), सही कोरूटीन स्कोप में हो, क्योंकि यह एक सस्पेंड फ़ंक्शन है.

खाना बनाने से जुड़े ऐप्लिकेशन के उदाहरण के तौर पर, Gemini Nano आपको अलग-अलग तरह के खाने के सुझाव दे सकता है. ये सुझाव, खाना खाने के आपके इतिहास से अलग होते हैं.
scope.launch {
  val input = "Suggest different types of cuisines and easy to cook dishes that are not $recentMealList"
  val response = generativeModel.generateContent(input)
  print(response.text)
}
Gemini Nano मॉडल में, इनपुट टोकन की ज़्यादा से ज़्यादा संख्या 12,000 हो सकती है. Gemini Nano के एक्सपेरिमेंट के तौर पर ऐक्सेस करने के बारे में ज़्यादा जानने के लिए, Android दस्तावेज़ के Gemini Nano सेक्शन पर जाएं.

Firebase में Vertex AI के ज़रिए Gemini

Firebase में Vertex AI का इस्तेमाल करके, Gemini Cloud मॉडल का इस्तेमाल करके जनरेटिव एआई की सुविधाएं बनाई जा सकती हैं. साथ ही, Firebase के नेटवर्क को आसानी से डिप्लॉय और मैनेज किया जा सकता है.

dependencies {
...
// Import the BoM for the Firebase platform
implementation(platform("com.google.firebase:firebase-bom:"))

// 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")
}
Vertex AI Studio में प्रॉम्प्ट आज़माकर शुरुआत करें. यह प्रॉम्प्ट डिज़ाइन और प्रोटोटाइप बनाने के लिए एक इंटरैक्टिव इंटरफ़ेस है. टेक्स्ट और इमेज के साथ प्रॉम्प्ट की जांच करने के लिए, फ़ाइलें अपलोड की जा सकती हैं. साथ ही, किसी प्रॉम्प्ट को सेव करके, बाद में उस पर वापस जाया जा सकता है.

अपने ऐप्लिकेशन से Gemini API को कॉल करने के लिए तैयार होने पर, Firebase में Vertex AI का इस्तेमाल शुरू करने से जुड़ी गाइड में दिए गए निर्देशों का पालन करके, Firebase और SDK टूल सेट अप करें.

इसके बाद, अपने प्रोजेक्ट में Gradle डिपेंडेंसी जोड़ें:

val generativeModel = Firebase.vertexAI
  .generativeModel(
  "gemini-2.0-flash",
  generationConfig = generationConfig {
        responseMimeType = "application/json"
        responseSchema = jsonSchema
  }
    )
अब अपने Kotlin कोड से Gemini API को कॉल किया जा सकता है. सबसे पहले, Vertex AI सेवा को शुरू करें और `GenerativeModel` इंस्टेंस बनाएं:
scope.launch {
  val response = model.generateContent("
    Create a shopping list with $cuisineStyle ingredients")
}
उदाहरण के लिए, रेसिपी ऐप्लिकेशन के मामले में, Gemini 2.0 Flash किसी खास तरह के खाने को पकाने के लिए, उसके लिए ज़रूरी सामग्री की खरीदारी की सूची बना सकता है. मॉडल से JSON स्ट्रिंग जनरेट करने के लिए भी कहा जा सकता है. इस स्ट्रिंग को ऐप्लिकेशन में आसानी से पार्स करके, यूज़र इंटरफ़ेस (यूआई) में रेंडर किया जा सकता है. सूची जनरेट करने के लिए, टेक्स्ट प्रॉम्प्ट के साथ `generateContent()` फ़ंक्शन को कॉल करें.

इसके बारे में ज़्यादा जानने के लिए, Android डेवलपर गाइड पढ़ें.

इमेज जनरेट करने के लिए Imagen 3

Imagen 3 को Firebase में Vertex AI की मदद से ऐक्सेस किया जा सकता है. इससे, अपने Android ऐप्लिकेशन में इमेज जनरेशन को आसानी से इंटिग्रेट किया जा सकता है. Imagen 3, इमेज जनरेट करने वाला Google का सबसे बेहतर मॉडल है. यह मॉडल, बेहतरीन जानकारी, कम आर्टफ़ैक्ट, और असल रोशनी वाले इफ़ेक्ट वाली अच्छी क्वालिटी की इमेज जनरेट करता है. इससे इमेज जनरेट करने के लिए, एक नया मानक तय होता है.

उदाहरण के लिए, Imagen 3 की मदद से आपके उपयोगकर्ता, अपनी प्रोफ़ाइल के अवतार जनरेट कर सकते हैं या मौजूदा स्क्रीन फ़्लो दिखाने के लिए ऐसेट बना सकते हैं. उदाहरण के लिए, खाने की तैयारी करने वाले ऐप्लिकेशन में, रेसिपी स्क्रीन के लिए इमेज जनरेट करने के लिए, Imagen 3 का इस्तेमाल किया जा सकता है.

इस इमेज को Imagen 3 ने इस प्रॉम्प्ट के आधार पर जनरेट किया है: कार्टून स्टाइल में दिखाया गया किचन का काउंटरटॉप, जिसमें मेडिटरेनियन खाने के लिए सुंदर सामग्री मौजूद है.
dependencies {
    implementation(platform("com.google.firebase:firebase-bom:33.10.0"))

    implementation("com.google.firebase:firebase-vertexai")
}
Imagen 3 को इंटिग्रेट करने का तरीका, Firebase में Vertex AI की मदद से Gemini मॉडल को ऐक्सेस करने के तरीके से मिलता-जुलता है.

अपने Android प्रोजेक्ट में Gradle डिपेंडेंसी जोड़कर शुरू करें:
val imageModel = Firebase.vertexAI.imagenModel(
modelName = "imagen-3.0-generate-001",
generationConfig = ImagenGenerationConfig(
  imageFormat = ImagenImageFormat.jpeg(compresssionQuality = 75),
  addWatermark = true,
  numberOfImages = 1,
  aspectRatio = ImagenAspectRatio.SQUARE_1x1
)
इसके बाद, अपने Kotlin कोड में मॉडल का नाम और मॉडल कॉन्फ़िगरेशन (ज़रूरी नहीं) पास करके, `ImageModel` इंस्टेंस बनाएं:
val imageResponse = imageModel.generateImages(
prompt = "A cartoon style illustration of a top overview of a kitchen countertop
  with beautiful ingredients for a $cuisineStyle meal."
)
आखिर में, टेक्स्ट प्रॉम्प्ट के साथ `generateImages()` को कॉल करके इमेज जनरेट करें:
val image = imageResponse.images.first()
val uiImage = image.asBitmap()
`imageResponse` से जनरेट की गई इमेज को वापस पाएं और उसे बिटमैप के तौर पर दिखाएं:
Imagen 3 का इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, Android डेवलपर ब्लॉग और Android डेवलपर दस्तावेज़ पढ़ें.

Firebase की मदद से प्रोडक्शन के लिए तैयार होना

अपने ऐप्लिकेशन में जनरेटिव एआई की सुविधाएं लागू करने के बाद, उसे प्रोडक्शन में डिप्लॉय करने से पहले, ये अहम चरण पूरे करें:
  • एपीआई के गलत इस्तेमाल को रोकने के लिए, Play Integrity के साथ Firebase App Check लागू करें.
  • एआई मॉडल और वर्शन को डाइनैमिक तौर पर अपडेट करने के लिए, सर्वर से कंट्रोल किए जाने वाले कॉन्फ़िगरेशन के लिए Firebase रिमोट कॉन्फ़िगरेशन का इस्तेमाल करें.
  • Google Analytics की मदद से, सुझाव, राय या शिकायत करने की सुविधाएं जोड़ें. इससे, एआई के जवाबों के असर का आकलन करने और उपयोगकर्ताओं के सुझाव, राय या शिकायत इकट्ठा करने में मदद मिलेगी.
इसके अलावा, उपयोगकर्ता की निजता और एआई का ज़िम्मेदारी के साथ इस्तेमाल करने का ध्यान रखें. साथ ही, मॉडल के संभावित अनचाहे व्यवहार के बारे में अपने उपयोगकर्ताओं के साथ साफ़ तौर पर बात करें. Firebase में Vertex AI की मदद से, प्रोडक्शन के लिए तैयार होने के बारे में ज़्यादा जानने के लिए, यह ब्लॉग पोस्ट पढ़ें.