ML Kit के GenAI एपीआई, Gemini Nano की मदद से आपके ऐप्लिकेशन को उपयोगकर्ता के डिवाइस पर जनरेटिव एआई टास्क पूरे करने में मदद करते हैं. ये एपीआई, AICore पर आधारित हैं. यह Android सिस्टम की एक सेवा है, जो डिवाइस पर मौजूद फ़ाउंडेशन मॉडल को मैनेज करती है. साथ ही, उपयोगकर्ता के डेटा को निजी रखते हुए, अनुमान लगाने की प्रोसेस को तेज़ करती है.
GenAI API के इस्तेमाल पर, ML Kit GenAI API की सेवा की अतिरिक्त शर्तें लागू होती हैं. डेवलपर अपने एपीआई क्लाइंट की सुरक्षा और अपने ऐप्लिकेशन के उपयोगकर्ता अनुभव के लिए पूरी तरह से ज़िम्मेदार हैं.
मुख्य सुविधाएं
ML Kit, अपनी जेन एआई सुविधाओं को इन कैटगरी में बांटता है:
कस्टम जनरेशन और एजेंट
Gemini Nano फ़ाउंडेशन मॉडल के साथ सीधे तौर पर काम करें. इससे आपको अपनी पसंद के मुताबिक़ प्रॉम्प्ट बनाने और एजेंटिक वर्कफ़्लो को ऑटोमेट करने में मदद मिलेगी:
- मॉडल का डायरेक्ट ऐक्सेस (
GenerativeModelक्लास का इस्तेमाल करके): सिर्फ़ टेक्स्ट वाले कस्टम प्रॉम्प्ट या टेक्स्ट, इमेज वग़ैरह का एक साथ इस्तेमाल करके प्रॉम्प्ट डालने की सुविधा से, टेक्स्ट या टाइप किया गया स्ट्रक्चर्ड आउटपुट जनरेट करें. इसके अलावा,USERऔरMODELभूमिकाओं औरsessionIdवैल्यू के साथList<Content>ऑब्जेक्ट का इस्तेमाल करके, सीधे तौर पर अपनी मल्टी-टर्न चैट का इतिहास मैनेज करें. साथ ही, टूल के एलान सीधे तौर पर मैनेज करें. - एजेंटिक वर्कफ़्लो (
AgentRunnerक्लास का इस्तेमाल करके):GenerativeModelक्लास के ऊपर बनाए गए हैं. ये कई चरणों वाले सेशन मैनेजमेंट (इसमें मेमोरी में सेव बातचीत का इतिहास शामिल है) और कई चरणों वाले टूल-कॉलिंग लूप को ऑटोमेट करते हैं.
बोली और ऑडियो
उपयोगकर्ता के डिवाइस पर, बोले जा रहे शब्दों को टेक्स्ट में बदलना, उनका अनुवाद करना, और उन्हें सिंथेसाइज़ करना:
- बोली की पहचान करना: ऑडियो कॉन्टेंट को उसी भाषा में टेक्स्ट में बदलना.
- स्पीच अनुवाद: रीयल टाइम में, बोले जा रहे ऑडियो कॉन्टेंट का अनुवाद दूसरी भाषा में करें.
- लिखे गए शब्दों को सुनने की सुविधा: टेक्स्ट को नैचुरल लगने वाली आवाज़ में बदलें.
टेक्स्ट और इमेज से जुड़े टास्क
प्रॉम्प्ट इंजीनियरिंग के बिना, विज़न, लिखने, और खोजने से जुड़े सामान्य कामों के लिए ऑप्टिमाइज़ किए गए टास्क-स्पेसिफ़िक एपीआई का इस्तेमाल करें:
- इमेज का ब्यौरा: किसी इमेज के बारे में कम शब्दों में जानकारी जनरेट करें.
- खास जानकारी पाना: लेखों या चैट में हुई बातचीत की खास जानकारी, बुलेट वाली सूची के तौर पर पाएं.
- प्रूफ़रीडिंग: व्याकरण को बेहतर बनाकर और स्पेलिंग की गलतियों को ठीक करके, छोटे कॉन्टेंट को बेहतर बनाएं.
- फिर से लिखना: छोटे मैसेज को अलग-अलग टोन या स्टाइल में फिर से लिखें.
- सिमैंटिक सर्च: Embedding API का इस्तेमाल करके, टेक्स्ट और इमेज के लिए वेक्टर एंबेडिंग जनरेट करें. इसके बाद, उन्हें AndroidX AppSearch के साथ जोड़ें, ताकि कॉन्टेंट को उसके मतलब के हिसाब से ढूंढा जा सके.
जेन एआई एपीआई के फ़ायदे
ML Kit की अन्य मौजूदा सुविधाओं की तरह, जेन एआई एपीआई पूरी तरह से उपयोगकर्ता के डिवाइस पर काम करते हैं. इसलिए, इनसे ये फ़ायदे मिलते हैं:
- इनपुट, अनुमान, और आउटपुट डेटा को स्थानीय तौर पर प्रोसेस किया जाता है
- इंटरनेट कनेक्शन के बिना भी, यह सुविधा पहले की तरह ही काम करती है
- हर एपीआई कॉल के लिए, सर्वर का कोई अतिरिक्त शुल्क नहीं देना पड़ता
इसके अलावा, GenAI एपीआई, AICore पर बनाए गए हैं और Gemini Nano की मदद से काम करते हैं. इसलिए, ऐप्लिकेशन और टास्क के हिसाब से बनाए गए एपीआई, डिवाइस पर Gemini Nano के एक ही बेस मॉडल का इस्तेमाल करते हैं. अगर किसी डिवाइस पर Gemini Nano पहले से मौजूद है, तो किसी दूसरे मॉडल को डाउनलोड करने की ज़रूरत नहीं पड़ती. इससे स्टोरेज की जगह भी बचती है. इस बारे में ज़्यादा जानें कि AICore, निजता की सुरक्षा के लिए अनुरोधों को कैसे अलग रखता है.
स्ट्रीमिंग बनाम नॉन-स्ट्रीमिंग
ML Kit GenAI API, नतीजे पाने के लिए स्ट्रीमिंग और नॉन-स्ट्रीमिंग, दोनों विकल्प देते हैं. स्ट्रीमिंग एपीआई, जवाबों को जनरेट होने के साथ-साथ धीरे-धीरे डिलीवर करता है. इससे डेटा का लगातार फ़्लो मिलता है. इसके उलट, नॉन-स्ट्रीमिंग एपीआई, पूरा जवाब मिलने तक इंतज़ार करता है. इसके बाद, वह जवाब को एक ब्लॉक के तौर पर दिखाता है.
लंबे जवाबों के लिए स्ट्रीमिंग एपीआई चुनें, क्योंकि इससे शुरुआती जवाब तेज़ी से मिलता है. नॉन-स्ट्रीमिंग एपीआई, छोटे जवाबों या बैच में नतीजों को प्रोसेस करने के लिए ज़्यादा सही है.
डिवाइस से जुड़ी सहायता
कस्टम जनरेशन, एजेंट, और टेक्स्ट और इमेज टास्क एपीआई के लिए डिवाइस के साथ काम करने की सुविधा के बारे में, यहां दिए गए सेक्शन में बताया गया है. इस सेक्शन में मौजूद सुविधाओं के अलावा, अन्य सुविधाओं के बारे में जानने के लिए, हर सुविधा के पेज पर जाएं. यहां आपको डिवाइस से जुड़ी सहायता की जानकारी मिलेगी.
कस्टम जनरेशन और एजेंट डिवाइस के लिए सहायता
मॉडल का डायरेक्ट ऐक्सेस और एजेंटिक वर्कफ़्लो की सुविधा, इन डिवाइसों पर उपलब्ध है:
nano-v2 |
|
nano-v3 |
|
nano-v4 |
|
टेक्स्ट और इमेज से जुड़े टास्क के लिए, डिवाइस पर उपलब्ध सुविधाएँ
इमेज की जानकारी, खास जानकारी, प्रूफ़रीडिंग, और फिर से लिखने वाले एपीआई, इन डिवाइसों पर उपलब्ध हैं. आने वाले समय में, इन्हें अन्य डिवाइसों पर भी उपलब्ध कराया जाएगा:
- Google: Pixel 11, Pixel 11 Pro, Pixel 11 Pro XL, Pixel 11 Pro Fold, Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL, Pixel 10 Pro Fold, Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold
- Honor: Honor 400 Pro, Magic 7, Magic 7 Pro, Magic 8 Pro, Magic V5
- iQOO: iQOO 13, iQOO 15
- Lenovo: Lenovo Idea Tab Pro Gen 2, Lenovo Legion Tab Gen 5(8.8")
- Motorola: Razr 60 Ultra, Razr Ultra 2025, Signature
- OnePlus: OnePlus 15, OnePlus 15R, OnePlus 13, OnePlus 13s
- OPPO: Find N5, Find X9, Find X9 Pro, Find X8, Find X8 Pro, Reno 14 Pro 5G, Reno 15 Pro 5G, Reno 15 Pro Mini 5G, Reno 15 Pro Max 5G
- POCO: POCO F7 Ultra, POCO F8 Pro, POCO F8 Ultra, POCO X7 Pro, POCO X8 Pro
- realme: realme GT 7 Pro, realme GT 7T
- Samsung: Galaxy S25, Galaxy S25+, Galaxy S25 Ultra, Galaxy S26, Galaxy S26+, Galaxy S26 Ultra, Galaxy Z Flip8, Galaxy Z Fold8, Galaxy Z Fold8 Ultra, Galaxy Z Fold7, Galaxy Z TriFold
- Sharp: AQUOS R11
- Sony: Xperia 1 VIII
- vivo: vivo X200T, vivo X200 FE, vivo X200, vivo X200 Pro, vivo X300, X300 Pro, vivo X Fold3 Pro, vivo X Fold5, vivo T4 Ultra
- Xiaomi: Xiaomi 14T Pro, Xiaomi 15, Xiaomi 15T, Xiaomi 15T Pro, Xiaomi 15 Ultra, Xiaomi 17, Xiaomi 17 Ultra, Xiaomi Pad Mini
किसी भाषा में सहायता उपलब्ध है या नहीं, यह डिवाइस के कॉन्फ़िगरेशन और उस पर डाउनलोड किए गए मॉडल के हिसाब से अलग-अलग हो सकता है.
Gemini Nano का वर्शन वापस पाना
अलग-अलग डिवाइसों पर Gemini Nano के अलग-अलग वर्शन काम करते हैं. किसी डिवाइस पर Gemini Nano के वर्शन की जानकारी पाने के लिए, getBaseModelName() तरीके का इस्तेमाल करें.
हर ऐप्लिकेशन के लिए कोटा
AICore, हर ऐप्लिकेशन के लिए अनुमान लगाने का कोटा लागू करता है. कम समय में GenAI API के लिए बहुत ज़्यादा एपीआई अनुरोध करने पर, ErrorCode.BUSY रिस्पॉन्स मिलेगा. इस तरह की गड़बड़ी मिलने पर, अनुरोध को फिर से भेजने के लिए एक्स्पोनेंशियल बैकऑफ़ का इस्तेमाल करें. इसके अलावा, अगर कोई ऐप्लिकेशन लंबे समय के कोटे (उदाहरण के लिए, रोज़ का कोटा) से ज़्यादा इस्तेमाल किया जाता है, तो ErrorCode.PER_APP_BATTERY_USE_QUOTA_EXCEEDED को वापस किया जा सकता है.
बैकग्राउंड में इस्तेमाल
GenAI API का इस्तेमाल सिर्फ़ तब किया जा सकता है, जब ऐप्लिकेशन टॉप फ़ोरग्राउंड ऐप्लिकेशन हो. जब ऐप्लिकेशन फ़ोरग्राउंड में न हो, तब एपीआई का इस्तेमाल करने पर ErrorCode.BACKGROUND_USE_BLOCKED रिस्पॉन्स मिलेगा. इसमें फ़ोरग्राउंड सेवा का इस्तेमाल करना भी शामिल है.
सैंपल कोड
यह कोड पाने के लिए, यहां दिए गए सैंपल देखें: