छोटे और ऑन-डिवाइस मॉडल्समध्यमपाठ 2326 मिनट का पाठ

फ़ोन और edge डिवाइसों पर AI

फ़ोन या किसी छोटे डिवाइस पर AI चलाने से डेटा वहीं रहता है और यह ऑफ़लाइन भी काम करता है। runtimes, बैटरी और मेमोरी की सीमाओं, और मॉडल को सुरक्षित रूप से अपडेट करने का तरीका जानें।

पाठ वीडियो में

60 सेकंड में

फ़ोन और edge डिवाइसों पर AI

फ़ोन या किसी छोटे डिवाइस पर AI चलाने से डेटा वहीं रहता है और यह ऑफ़लाइन भी काम करता है। runtimes, बैटरी और मेमोरी की सीमाओं, और मॉडल को सुरक्षित रूप से अपडेट करने का तरीका जानें।

1/5
आसान शब्दों में
अपनी बैटरी वाली टॉर्च बिजली कटने पर भी काम करती है। दीवार के प्लग से लगा लैंप नहीं करता। On-device AI वही टॉर्च है: यह कहीं भी काम करती है, लेकिन इसकी बैटरी और साइज़ सीमित होते हैं।
On-device AI मॉडल को खुद फ़ोन, टैबलेट या छोटे कंप्यूटर पर चलाती है। Edge devices ऐसी मशीनें हैं जो डेटा बनने की जगह के करीब होती हैं, जैसे दुकान में लगा कैमरा, खेत में लगा सेंसर या किसी क्लिनिक में रखा छोटा कंप्यूटर। दूर किसी सर्वर पर डेटा भेजने के बजाय, डिवाइस खुद ही स्थानीय स्तर पर काम निपटा लेता है।

इसे डिवाइस पर ही क्यों चलाएं?

  • प्राइवेसी: फ़ोटो, आवाज़ और मैसेज डिवाइस पर ही रह सकते हैं।
  • ऑफ़लाइन: कमज़ोर या बिना सिग्नल वाले इलाकों में भी काम करता है, जो भारत के कई हिस्सों में आज भी बहुत मायने रखता है।
  • स्पीड: कीबोर्ड सुझावों या लाइव कैप्शन जैसे छोटे और तुरंत होने वाले कामों के लिए नेटवर्क पर डेटा आने-जाने का इंतज़ार नहीं करना पड़ता।
  • लागत: काम यूज़र का डिवाइस करता है, इसलिए आपको सर्वर के लिए कम पैसे खर्च करने पड़ते हैं।

On-device runtimes (सरल शब्दों में)

एक runtime मॉडल को लोड करता है और उसे डिवाइस के चिप्स पर कुशलता से चलाता है। फ़ोन में अक्सर एक CPU, एक GPU और कभी-कभी एक खास AI चिप होती है (जिसे अक्सर NPU कहा जाता है)। Runtimes उपलब्ध सबसे तेज़ चिप का उपयोग करने की कोशिश करते हैं।
Runtime का प्रकारउदाहरण (नाम और फ़ीचर बदलते रहते हैं; ताज़ा दस्तावेज़ देखें)
क्रॉस-प्लेटफ़ॉर्मONNX Runtime; llama.cpp, जिसे फ़ोन के लिए भी बनाया जा सकता है
प्लेटफ़ॉर्म-विशिष्टApple डिवाइसों पर Core ML; Google का LiteRT (पहले TensorFlow Lite)
ऑपरेटिंग सिस्टम में पहले से मौजूदअब कुछ फ़ोन में ऐसे AI मॉडल आते हैं जिन्हें ऐप्स सिस्टम फ़ीचर्स के ज़रिए कॉल कर सकते हैं

सीमाएं जिनके अनुसार आपको डिज़ाइन करना चाहिए

सीमाक्या होता हैक्या मदद करता है
मेमोरीअगर ऐप बहुत ज़्यादा मेमोरी का इस्तेमाल करता है तो सिस्टम उसे बंद कर देता हैछोटे, quantised मॉडल; सिर्फ़ ज़रूरत पड़ने पर ही लोड करें
बैटरीज़्यादा इस्तेमाल से बैटरी जल्दी खत्म होती है और यूज़र्स ऐप को अनइंस्टॉल कर देते हैंछोटे काम, छोटे मॉडल, और जहां संभव हो NPU का उपयोग
गर्मी (हीटिंग)ठंडा होने के लिए फ़ोन खुद को धीमा कर लेता हैलगातार लंबे समय तक जेनरेशन से बचें
स्टोरेज और डाउनलोड साइज़सीमित डेटा वाले यूज़र्स शायद बड़ा मॉडल डाउनलोड न करेंमॉडल को अलग से, Wi-Fi पर और यूज़र की सहमति से डाउनलोड करें
डिवाइसों की विविधताजो मॉडल किसी नए फ़्लैगशिप फ़ोन पर चलता है, वह शायद किसी पुराने बजट फ़ोन पर न चल पाएउन सस्ते (low-end) फ़ोन पर टेस्ट करें जो आपके यूज़र्स वास्तव में इस्तेमाल करते हैं
नोट
भारत में कई यूज़र्स ऐसे बजट और मिड-रेंज फ़ोन इस्तेमाल करते हैं जिनमें नए फ़्लैगशिप फ़ोन की तुलना में कम मेमोरी होती है। सिर्फ़ डेवलपर के अपने फ़ोन पर ही नहीं, बल्कि उन फ़ोन पर भी टेस्ट करें।

डिवाइस पर मॉडल अपडेट करना

  1. 1

    हर मॉडल का वर्ज़न तय करें

    हर मॉडल फ़ाइल को एक वर्ज़न नंबर और एक checksum दें।
  2. 2

    सुरक्षित रूप से डाउनलोड करें

    HTTPS का इस्तेमाल करें, लोड करने से पहले checksum या सिग्नेचर जांचें, और डिफ़ॉल्ट रूप से Wi-Fi पर डाउनलोड करें।
  3. 3

    धीरे-धीरे रोल आउट करें

    नया मॉडल पहले कुछ ही यूज़र्स को भेजें और देखें कि कोई समस्या तो नहीं आ रही।
  4. 4

    एक बैकअप (fallback) विकल्प रखें

    अगर नया मॉडल लोड होने में विफल रहता है या खराब काम करता है, तो पिछले वाले पर वापस लौट जाएं।
  5. 5

    डेटा सीमाओं का सम्मान करें

    यूज़र्स को साइज़ बताएं, और उन्हें चुनने दें कि कब डाउनलोड करना है।
लापरवाही भरा on-device डिज़ाइन
  • ऐप के अंदर ही बड़ा मॉडल जोड़ देना जिससे हर बार इंस्टॉलेशन साइज़ बहुत बड़ा हो जाए
  • सिर्फ़ सबसे नए फ़ोन पर टेस्टिंग करना
  • सर्वर से आने वाली किसी भी मॉडल फ़ाइल को बिना जांचे लोड कर लेना
सावधानीपूर्वक किया गया on-device डिज़ाइन
  • साइज़ दिखाते हुए मॉडल को एक वैकल्पिक डाउनलोड के रूप में देना
  • उन सस्ते फ़ोन पर टेस्ट करना जो आपके यूज़र्स के पास हैं
  • मॉडल लोड करने से पहले सिग्नेचर या checksum की जांच करना
सावधान रहें
अगर ऐप इनपुट, रिज़ल्ट या लॉग्स अपलोड करता है, तो On-device का मतलब प्राइवेसी नहीं होता। अपने प्राइवेसी नोटिस में साफ़-साफ़ बताएं कि क्या डिवाइस पर रहता है और क्या नहीं, और पक्का करें कि यह बात सच हो।
यह करके देखें। ऐप के अनुसार स्टोरेज और बैटरी के इस्तेमाल के लिए अपने फ़ोन की सेटिंग्स देखें। कौन से ऐप्स सबसे ज़्यादा इस्तेमाल करते हैं? क्या आप मोबाइल डेटा पर 1 GB का AI मॉडल डाउनलोड करेंगे?

और देखें और पढ़ें

लैब

एक फ़ीचर के लिए सीमाओं, टेस्टिंग डिवाइसों और अपडेट प्रक्रिया के साथ एक on-device डिज़ाइन योजना।

~30 min

समस्या

फ़ीचर: "आशा (ASHA) कार्यकर्ताओं के लिए एक ऐसा ऐप जो हिंदी में बोले गए नोट को एक छोटे लिखित सारांश में बदल देता है, ऑफ़लाइन काम करता है, और जिसमें नोट्स कभी भी फ़ोन से बाहर नहीं जाते।"

  1. चुनें कि डिवाइस पर क्या चलेगा (उदाहरण के लिए स्पीच रिकग्निशन और सारांश बनाना) और क्या कभी कुछ सर्वर पर जाएगा या नहीं।
  2. सीमित RAM वाले फ़ोन के लिए, पाठ 3 के मेमोरी नियम का उपयोग करके उस मॉडल साइज़ का अनुमान लगाएं जिसे फ़ोन संभाल सके।
  3. तीन टेस्टिंग फ़ोन की सूची बनाएं (ब्रांड के अनुसार नहीं, बल्कि कीमत सीमा और मेमोरी के अनुसार) और बताएं कि आप प्रत्येक पर क्या मापेंगे: स्पीड, बैटरी की खपत, हीटिंग, क्रैश।
  4. बैकअप (fallback) सहित पांच चरणों में मॉडल अपडेट की प्रक्रिया लिखें।
  5. प्राइवेसी नोटिस के लिए दो वाक्य लिखें जो आपके डिज़ाइन के अनुसार सच हों।

आपका काम तब पूरा होगा जब

कठिन सवाल

उत्तर देखने से पहले ख़ुद जवाब देने की कोशिश करें। अगर आप इनके जवाब दे सकते हैं, तो आप पाठ समझ गए हैं।

Q1कोई मॉडल एक ही फ़ोन के NPU पर एक ऐप में तेज़ी से और उसी मॉडल के साथ दूसरे ऐप में धीमे क्यों चल सकता है?दिखाएं

NPU केवल कुछ खास operations और number formats को ही सपोर्ट करते हैं। अगर runtime या मॉडल का conversion किसी ऐसे operation का इस्तेमाल करता है जिसे NPU सपोर्ट नहीं करता, तो वह हिस्सा वापस CPU या GPU पर चला जाता है, और चिप्स के बीच डेटा ले जाने में समय लगता है। अलग-अलग runtimes, conversions या quantisation सेटिंग्स यह बदल सकती हैं कि कौन-सा हिस्सा कहाँ चलेगा। आपको असली डिवाइस पर इसे मापकर देखना होगा।

Q2आपका on-device मॉडल कुछ मामलों में गलत और मेडिकल जैसी लगने वाली सलाह देता है। क्या on-device प्राइवेसी इसे बनाए रखने की काफी अच्छी वजह है?दिखाएं

नहीं। प्राइवेसी नुकसानदेह जवाबों को सही नहीं ठहरा सकती। इस फ़ीचर को वहीं तक सीमित रखें जो यह भरोसेमंद तरीके से करता है (उदाहरण के लिए summarising, न कि सलाह देना), साफ़ चेतावनियाँ दिखाएँ, फ़ैसलों की ज़िम्मेदारी किसी इंसानी हेल्थ वर्कर के हाथ में रखें, और मॉडल को सुधारें या बदलें। सेहत से जुड़ी सलाह प्रशिक्षित पेशेवरों से ही आनी चाहिए।

जारी रखने के लिए कृपया साइन इन करें।

अक्सर पूछे जाने वाले सवाल

क्या कोई फ़ोन सचमुच एक language model चला सकता है?

छोटे, quantised language models हाल के कई फ़ोन पर चल सकते हैं, हालांकि सर्वर की तुलना में थोड़े धीमे। स्पीच रिकग्निशन, छोटे टेक्स्ट के अनुवाद, फ़ोटो टैगिंग या टेक्स्ट के सुझाव जैसे कामों के लिए छोटे मॉडल तो सालों से फ़ोन पर चल रहे हैं।

NPU क्या है?

एक न्यूरल प्रोसेसिंग यूनिट (Neural Processing Unit): चिप का एक हिस्सा जिसे AI मॉडल द्वारा इस्तेमाल किए जाने वाले गणित के लिए डिज़ाइन किया गया है। यह कुछ मॉडलों को CPU की तुलना में तेज़ी से और कम बैटरी खर्च करके चला सकता है। यह किन मॉडलों और फ़ॉर्मेट्स को सपोर्ट करता है, यह फ़ोन और runtime पर निर्भर करता है।

क्या सब कुछ डिवाइस पर ही करना बेहतर है?

हमेशा नहीं। एक सामान्य डिज़ाइन हाइब्रिड होता है: आसान या प्राइवेसी से जुड़े काम डिवाइस पर चलते हैं, और कठिन काम कनेक्शन होने पर और यूज़र की सहमति से सर्वर पर भेजे जाते हैं।

मैं डिवाइस पर मौजूद मॉडल फ़ाइल को कैसे सुरक्षित रखूं?

जिसके पास भी डिवाइस है, वह आम तौर पर उस फ़ाइल तक पहुंच सकता है, इसलिए इसे गुप्त रखने के भरोसे न रहें। इसके बजाय यूज़र्स की सुरक्षा करें: अपडेट लोड करने से पहले सिग्नेचर जांचें, और कभी भी मॉडल या ऐप के अंदर API keys जैसी गोपनीय जानकारी न रखें।

पाठ का टेस्ट

5 सवाल। पास होने और इस पाठ को पूरा करने के लिए 3 सही होने चाहिए (60%)।

टेस्ट देने और अपनी प्रोग्रेस सेव करने के लिए साइन इन करें