Firebase AI Logic का इस्तेमाल करके, एआई की मदद से काम करने वाले Apple ऐप्लिकेशन और सुविधाएं बनाई जा सकती हैं. इसके लिए, हाइब्रिड इन्फ़रेंस का इस्तेमाल किया जाता है. हाइब्रिड इन्फ़्रेंस की मदद से, डिवाइस पर मौजूद मॉडल (खास तौर पर Apple के फ़ाउंडेशन मॉडल फ़्रेमवर्क) का इस्तेमाल करके इन्फ़्रेंस चलाया जा सकता है. ऐसा तब किया जा सकता है, जब ये मॉडल उपलब्ध हों. अगर ये मॉडल उपलब्ध नहीं हैं, तो क्लाउड पर होस्ट किए गए Google के मॉडल का इस्तेमाल किया जा सकता है. इसके उलट भी किया जा सकता है.
इस पेज पर, क्लाइंट एसडीके का इस्तेमाल शुरू करने का तरीका बताया गया है. साथ ही, इसमें कॉन्फ़िगरेशन के अतिरिक्त विकल्प और सुविधाएं दिखाई गई हैं. जैसे, तापमान.
ध्यान दें कि Firebase AI Logic के ज़रिए ऑन-डिवाइस इन्फ़रेंस की सुविधा, Firebase AI Logic SDK के 12.13.0 या इसके बाद के वर्शन का इस्तेमाल करने वाले Apple ऐप्लिकेशन के लिए उपलब्ध है. साथ ही, यह सुविधा Apple Intelligence की सुविधा वाले डिवाइसों पर काम करती है. यह Apple के फ़ाउंडेशन मॉडल फ़्रेमवर्क के लिए, स्वीकार्य इस्तेमाल से जुड़ी ज़रूरी शर्तों के मुताबिक काम करता है.
इस्तेमाल के सुझाए गए उदाहरण
अनुमान लगाने के लिए, डिवाइस पर मौजूद मॉडल का इस्तेमाल करने से ये फ़ायदे मिलते हैं:
- निजता को बेहतर तरीके से सुरक्षित रखने की सुविधा
- बिना किसी शुल्क के अनुमान लगाना
- ऑफ़लाइन मोड में काम करने की सुविधा
हाइब्रिड फ़ंक्शन का इस्तेमाल करके ये ऑफ़र दिए जा सकते हैं:
- सभी ग्राहकों को ऐप्लिकेशन का एक जैसा अनुभव दें. भले ही, वे किसी भी डिवाइस का इस्तेमाल कर रहे हों
- इंटरनेट कनेक्शन, कोटे की सीमाओं या डिवाइस की क्षमताओं के बावजूद, जनरेटिव एआई की सुविधाओं की उपलब्धता को बेहतर बनाना
साथ काम करने वाली सुविधाएं, एपीआई, और डिवाइस
Firebase AI Logic का इस्तेमाल करके हाइब्रिड और डिवाइस पर इन्फ़रेंस लागू करने से पहले, इस सेक्शन को पढ़ें. इससे आपको यह समझने में मदद मिलेगी कि Apple ऐप्लिकेशन के लिए कौनसी सुविधाएं काम करती हैं.
डिवाइस पर मौजूद डेटा का इस्तेमाल करके अनुमान लगाने की सुविधा के लिए, इस्तेमाल की जा सकने वाली क्षमताएं और सुविधाएं
डिवाइस पर इन्फ़रेंस की सुविधा सिर्फ़ टेक्स्ट जनरेट करने के लिए उपलब्ध है. खास तौर पर, टेक्स्ट जनरेट करने की इन सुविधाओं के लिए:
इस पेज पर सबसे नीचे दी गई, हाइब्रिड या डिवाइस पर अनुमान लगाने की सुविधा के लिए, अब तक उपलब्ध नहीं कराई गई सुविधाओं की पूरी सूची ज़रूर देखें.
इसके साथ काम करने वाले एपीआई और डिवाइस
क्लाउड में मौजूद इन्फ़्रास्ट्रक्चर का इस्तेमाल करके अनुमान लगाने की सुविधा, आपकी चुनी गई Gemini API सेवा देने वाली कंपनी (Gemini Developer API या Vertex AI Gemini API) का इस्तेमाल करती है.
डिवाइस पर अनुमान लगाने की सुविधा, Apple के Foundation Models फ़्रेमवर्क का इस्तेमाल करती है. यह सुविधा सिर्फ़ Apple Intelligence की सुविधा वाले डिवाइसों पर उपलब्ध है. Apple Intelligence चालू होने पर, डिवाइस पर मौजूद मॉडल अपने-आप डाउनलोड हो जाता है.
शुरू करें
पक्का करें कि आपने ऊपर दिया गया सेक्शन पढ़ लिया हो. इसमें, काम करने वाली सुविधाओं, एपीआई, और डिवाइसों के बारे में बताया गया है.
'शुरू करें' सेक्शन में दिए गए इन चरणों में, किसी भी ऐसे प्रॉम्प्ट अनुरोध के लिए ज़रूरी सामान्य सेटअप के बारे में बताया गया है जिसे आपको भेजना है.
पहला चरण: Firebase प्रोजेक्ट सेट अप करना और अपने ऐप्लिकेशन को Firebase से कनेक्ट करना
Firebase कंसोल में साइन इन करें. इसके बाद, अपना Firebase प्रोजेक्ट चुनें.
Firebase कंसोल में, एआई सेवाएं > एआई लॉजिक पर जाएं.
शुरू करें पर क्लिक करके, निर्देशों के साथ वर्कफ़्लो लॉन्च करें. इससे आपको अपने प्रोजेक्ट के लिए ज़रूरी एपीआई और संसाधन सेट अप करने में मदद मिलेगी.
"Gemini API" सेवा देने वाली कंपनी का इस्तेमाल करने के लिए, अपना प्रोजेक्ट सेट अप करें.
हमारा सुझाव है कि आप Gemini Developer API का इस्तेमाल शुरू करें. आपके पास किसी भी समय Vertex AI Gemini API सेट अप करने का विकल्प होता है. साथ ही, बिलिंग से जुड़ी ज़रूरी शर्तें भी पूरी की जा सकती हैं.
Gemini Developer API के लिए, कंसोल ज़रूरी एपीआई चालू करेगा और आपके प्रोजेक्ट में Gemini एपीआई पासकोड बनाएगा.
इस Gemini एपीआई कुंजी को अपने ऐप्लिकेशन के कोडबेस में न जोड़ें. ज़्यादा जानें.अगर कंसोल के वर्कफ़्लो में आपसे कहा जाता है, तो स्क्रीन पर दिए गए निर्देशों का पालन करके, अपने ऐप्लिकेशन को रजिस्टर करें और उसे Firebase से कनेक्ट करें.
अपने ऐप्लिकेशन में एसडीके टूल जोड़ने के लिए, इस गाइड में दिए गए अगले चरण पर जाएं.
दूसरा चरण: ज़रूरी एसडीके जोड़ना
Xcode की डिपेंडेंसी इंस्टॉल और मैनेज करने के लिए, Swift Package Manager (SPM) का इस्तेमाल करें. हाइब्रिड मोड में काम करने की सुविधा, सिर्फ़ SPM का इस्तेमाल करने पर उपलब्ध होती है.
Firebase AI Logic लाइब्रेरी, जनरेटिव मॉडल के साथ इंटरैक्ट करने के लिए एपीआई का ऐक्सेस देती है. यह लाइब्रेरी, Apple प्लैटफ़ॉर्म (firebase-ios-sdk) के लिए Firebase SDK टूल का हिस्सा है.
अगर पहले से Firebase का इस्तेमाल किया जा रहा है, तो पक्का करें कि आपका Firebase पैकेज v12.13.0 या इसके बाद का वर्शन हो.
Xcode में, अपना ऐप्लिकेशन प्रोजेक्ट खोलें. इसके बाद, File > Add Package Dependencies पर जाएं.
जब आपसे कहा जाए, तब Firebase Apple प्लैटफ़ॉर्म SDK टूल की रिपॉज़िटरी जोड़ें:
https://github.com/firebase/firebase-ios-sdkएसडीके टूल का नया वर्शन चुनें.
FirebaseAILogicलाइब्रेरी को चुनें.
इसके बाद, Xcode आपके पैकेज की डिपेंडेंसी से जुड़ी समस्या को हल करना शुरू कर देगा और उन्हें बैकग्राउंड में डाउनलोड करेगा.
तीसरा चरण: सेवा को शुरू करना और मॉडल सेशन इंस्टेंस बनाना
|
इस पेज पर, Gemini API उपलब्ध कराने वाली कंपनी के हिसाब से कॉन्टेंट और कोड देखने के लिए, उस कंपनी पर क्लिक करें. |
मॉडल को प्रॉम्प्ट का अनुरोध भेजने से पहले, इन्हें सेट अप करें.
चुनी गई Gemini API कंपनी के लिए सेवा शुरू करें.
HybridModelकी मदद सेGenerativeModelSessionइंस्टेंस बनाएं.अपनी प्राथमिकताओं के आधार पर,
primaryऔरsecondaryमॉडल सेट करें. आपके पास, अनुमान लगाने के लिए इस्तेमाल किए जाने वाले मॉडल का क्रम सेट करने का विकल्प होता है:सबसे पहले, डिवाइस पर मौजूद मॉडल का इस्तेमाल करने की कोशिश करें. हालांकि, क्लाउड पर मौजूद मॉडल का इस्तेमाल करने की अनुमति दें:
primaryको "system" मॉडल पर औरsecondaryको क्लाउड मॉडल पर सेट करें.सबसे पहले, क्लाउड में मौजूद मॉडल का इस्तेमाल करके अनुमान लगाने की कोशिश करें. हालांकि, डिवाइस पर मौजूद मॉडल का इस्तेमाल करने की अनुमति दें:
primaryको क्लाउड मॉडल पर औरsecondaryको "सिस्टम" मॉडल पर सेट करें.
ध्यान दें कि एसडीके,
modelको सिर्फ़ एक बार सेट करने की सुविधा देता है. इसका मतलब है कि एसडीके, डिवाइस पर या क्लाउड में सिर्फ़ एक बार अनुमान लगाने की कोशिश करेगा. हालांकि, हाइब्रिड अनुभव के लिए, आपकोHybridModelबनाना होगा. साथ ही,primaryऔरsecondary, दोनों मॉडल सेट करने होंगे.कॉन्फ़िगरेशन के विकल्पों में "अनुमान लगाने के मोड" (अनुमान लगाने की कोशिश का क्रम) के व्यवहार के बारे में ज़्यादा जानें.
यहां दिए गए उदाहरण में, डिवाइस पर मौजूद मॉडल का इस्तेमाल करके अनुमान लगाने की कोशिश करने का तरीका बताया गया है. हालांकि, इसमें क्लाउड पर होस्ट किए गए मॉडल का इस्तेमाल करने की अनुमति भी दी गई है:
// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Initialize a cloud model that supports your use case
let cloudModel = ai.geminiModel(name: "GEMINI_MODEL_NAME")
// Initialize an on-device model that supports your use case
let systemModel = FirebaseAI.SystemLanguageModel.default
// Create a Hybrid Model
// Provide your preferred model as `primary` and your fallback model as `secondary`
// In this example, attempt to use on-device model; otherwise, fall back to cloud.
let hybridModel = HybridModel(
primary: systemModel,
secondary: cloudModel
)
// Create a GenerativeModelSession with the HybridModel created earlier.
let session = firebaseAI.generativeModelSession(
model: hybridModel,
)
चौथा चरण: किसी मॉडल को प्रॉम्प्ट का अनुरोध भेजना
इस सेक्शन में, आपको ये काम करने का तरीका बताया गया है:
सिर्फ़ टेक्स्ट वाले इनपुट से टेक्स्ट जनरेट करना
| इस सैंपल को आज़माने से पहले, पक्का करें कि आपने इस गाइड का शुरू करें सेक्शन पूरा कर लिया हो. |
टेक्स्ट वाले प्रॉम्प्ट से टेक्स्ट जनरेट करने के लिए, respond(to:) का इस्तेमाल इस तरह करें:
// Imports + initialization of Gemini API backend service + creation of model session
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call `respond(to:)` with the text input
let response = try await session.respond(to: prompt)
print(response.content)
सिर्फ़ टेक्स्ट वाले इनपुट से टेक्स्ट स्ट्रीम करना
| इस सैंपल को आज़माने से पहले, पक्का करें कि आपने इस गाइड का शुरू करें सेक्शन पूरा कर लिया हो. |
मॉडल जनरेशन से पूरा नतीजा मिलने का इंतज़ार न करके, स्ट्रीमिंग का इस्तेमाल करके, कुछ नतीजों को हैंडल किया जा सकता है. इससे आपको तेज़ी से इंटरैक्शन करने में मदद मिलेगी. टेक्स्ट वाले प्रॉम्प्ट से जनरेट किए गए टेक्स्ट को स्ट्रीम करने के लिए, streamResponse(to:) का इस्तेमाल इस तरह करें:
// Imports + initialization of Gemini API backend service + creation of model session
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To stream generated text output, call `streamResponse(to:)` with the text input
let stream = session.streamResponse(to: prompt)
for try await snapshot in stream {
print(snapshot.content)
}
तुम और क्या कर सकती हो?
हाइब्रिड अनुभवों के लिए, कॉन्फ़िगरेशन के कई अन्य विकल्प और सुविधाएं इस्तेमाल की जा सकती हैं:
यह तय करना कि डिवाइस पर या क्लाउड में मौजूद डेटा का इस्तेमाल किया गया है.
जवाबों को कंट्रोल करने के लिए, मॉडल कॉन्फ़िगरेशन का इस्तेमाल करें. जैसे, तापमान.
हाइब्रिड या डिवाइस पर अनुमान लगाने की सुविधा के लिए, अभी उपलब्ध नहीं कराई गई सुविधाएं
इसे एक्सपेरिमेंट के तौर पर रिलीज़ किया गया है. इसलिए, Firebase AI Logic या क्लाउड पर होस्ट किए गए मॉडल की सभी सुविधाएं काम नहीं करतीं.
हाइब्रिड या डिवाइस पर मौजूद मॉडल के साथ, ये सुविधाएँ काम नहीं करती हैं: Imagen मॉडल, Gemini Live API, और प्रॉम्प्ट टेंप्लेट. साथ ही, टोकन की गिनती पर भरोसा नहीं किया जाना चाहिए, क्योंकि क्लाउड पर होस्ट किए गए मॉडल और डिवाइस पर मौजूद मॉडल के बीच गिनती अलग-अलग होगी. इसलिए, कोई भी सहज फ़ॉलबैक नहीं है.
फ़िलहाल, डिवाइस पर मौजूद डेटा का इस्तेमाल करके अनुमान लगाने की सुविधा के लिए, ये सुविधाएं उपलब्ध नहीं हैं. अगर आपको इनमें से किसी सुविधा का इस्तेमाल करना है, तो हमारा सुझाव है कि आप सिर्फ़ क्लाउड पर होस्ट किए गए मॉडल का इस्तेमाल करें, ताकि आपको बेहतर अनुभव मिल सके.
इमेज, ऑडियो, वीडियो, और दस्तावेज़ (PDF) जैसे मल्टीमॉडल इनपुट से टेक्स्ट जनरेट करना
इमेज, ऑडियो या वीडियो जैसे मीडिया को जनरेट करना
ऐसे अनुरोध भेजना जिनमें 4096 से ज़्यादा टोकन (या अंग्रेज़ी के करीब 3000 शब्द) हों.
डिवाइस पर मौजूद मॉडल को बिल्ट-इन टूल उपलब्ध कराना, ताकि वह जवाब जनरेट कर सके. जैसे, कोड एक्ज़ीक्यूट करना, यूआरएल का कॉन्टेक्स्ट, और Google Search के साथ ग्राउंडिंग करना
Firebase कंसोल में एआई मॉनिटरिंग की सुविधा, डिवाइस पर मौजूद डेटा के आधार पर अनुमान लगाने (इसमें डिवाइस पर मौजूद लॉग भी शामिल हैं) से जुड़ा कोई भी डेटा नहीं दिखाती है. हालांकि, क्लाउड पर होस्ट किए गए मॉडल का इस्तेमाल करने वाले किसी भी अनुमान को, Firebase AI Logic के ज़रिए अन्य अनुमान की तरह ही मॉनिटर किया जा सकता है.
अन्य सीमाएं
ऊपर दी गई सीमाओं के अलावा, डिवाइस पर मौजूद डेटा से अनुमान लगाने की सुविधा की ये सीमाएं हैं:
आपके ऐप्लिकेशन का इस्तेमाल करने वाले व्यक्ति के पास, Apple Intelligence की सुविधा वाला डिवाइस होना चाहिए.
आपका ऐप्लिकेशन, डिवाइस पर मौजूद डेटा के आधार पर अनुमान लगाने की सुविधा सिर्फ़ तब चालू कर सकता है, जब वह फ़ोरग्राउंड में हो.
Firebase AI Logic के साथ अपने अनुभव के बारे में सुझाव/राय दें या शिकायत करें