NeuroPrefetcher: Storage-Aware Sparse LLM Inference via Delta Prefetching
NeuroPrefetcher एक स्टोरेज-जागरूक (storage-aware) LLM इन्फरेंस सिस्टम है जो रिएक्टिव डिमांड पेजिंग (reactive demand paging) पर निर्भर रहने के बजाय, केवल आवश्यक वेट डेल्टा (weight deltas) को स्टोरेज से प्रेडिक्टिवली प्रीफ़etch करने के लिए MLP न्यूरॉन गतिविधि की टेम्पोरल लोकैलिटी (temporal locality) का लाभ उठाकर मेमोरी-बाधित एज डिवाइसेस पर महत्वपूर्ण स्पीडअप प्राप्त करता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
लार्ज लैंग्वेज मॉडल्स आधुनिक आर्टिफिशियल इंटेलिजेंस के इंजन हैं, जो ऐसी प्रवाहपूर्णता के साथ लिखने, तर्क करने और अनुवाद करने में सक्षम हैं जो कभी असंभव लगती थी। ये सिस्टम टेक्स्ट को एक बार में एक शब्द के रूप में प्रोसेस करके काम करते हैं, जो प्रशिक्षण के दौरान सीखे गए विशाल पैटर्न के आधार पर अनुक्रम (sequence) में अगले शब्द की भविष्यवाणी करते हैं। ऐसा करने के लिए, वे संख्याओं के विशाल डिजिटल पुस्तकालयों पर निर्भर करते हैं, जिन्हें 'वेट्स' (weights) कहा जाता है, और इन्हें कंप्यूटर की मेमोरी में स्टोर किया जाता है। मॉडल जितना बड़ा और अधिक सक्षम होगा, उसे उतनी ही अधिक मेमोरी की आवश्यकता होगी। हालाँकि, एक महत्वपूर्ण अंतर उभर कर आया है: जबकि ये मॉडल आकार में तेजी से बढ़े हैं, लैपटॉप, टैबलेट और विशेष एज कंप्यूटर्स जैसे पोर्टेबल उपकरणों में उपलब्ध मेमोरी उस गति से नहीं बढ़ी है। यह उन्नत बुद्धिमत्ता को विशाल डेटा सेंटरों के बाहर चलाने के लिए एक मौलिक समस्या पैदा करता है। जब कोई मॉडल डिवाइस की मेमोरी में फिट होने के लिए बहुत बड़ा होता है, तो सिस्टम को तेज़ मेमोरी और धीमी, बड़ी स्टोरेज ड्राइव के बीच लगातार डेटा को स्वैप (बदलना) करना पड़ता है, एक ऐसी प्रक्रिया जो आमतौर पर प्रदर्शन को रोक देती है।
केनेसा स्टेट यूनिवर्सिटी और सैमसंग के शोधकर्ताओं ने इस समस्या के लिए एक नया दृष्टिकोण विकसित किया है, उन्होंने 'न्यूरोप्रिफेचर' (NeuroPrefetcher) नामक एक सिस्टम बनाया है जो इन अत्यधिक बड़े मॉडल्स को बहुत सीमित मेमोरी वाले उपकरणों पर कुशलतापूर्वक चलाने की अनुमति देता है। मॉडल को छोटा करने या उसे फिट करने के लिए मजबूर करने के बजाय, उनका सिस्टम यह स्वीकार करता है कि मॉडल उपलब्ध मेमोरी से बड़ा है और स्टोरेज ड्राइव को गणना प्रक्रिया के एक सक्रिय हिस्से के रूप में उपयोग करता है। उनकी सफलता की कुंजी इन मॉडल्स के सोचने के तरीके के एक सरल अवलोकन में निहित है। जब मॉडल एक शब्द उत्पन्न करता है, तो वह आंतरिक मार्गों (pathways) के एक विशिष्ट सेट को सक्रिय करता है। जब वह अगले शब्द को उत्पन्न करता है, तो वह लगभग उसी सटीक मार्ग का फिर से उपयोग करता है। शोधकर्ताओं ने पाया कि एक शब्द से दूसरे शब्द के बीच 82 से 85 प्रतिशत सक्रिय मार्ग समान रहते हैं। इसका अर्थ है कि अधिकांश कार्य के लिए, आवश्यक डेटा पहले से ही डिवाइस की मेमोरी में मौजूद होता है, जिसका उपयोग होने की प्रतीक्षा रहती है।
न्यूरोप्रिफेचर का नवाचार इस बात में है कि यह उस छोटे से डेटा को कैसे प्रबंधित करता है जो बदलता रहता है। पारंपरिक सिस्टम तब तक इंतजार करते हैं जब तक कि मॉडल को डेटा के किसी टुकड़े की आवश्यकता न हो जाए, और फिर स्टोरेज ड्राइव से उसे लाने के लिए जाते हैं—यह एक प्रतिक्रियात्मक (reactive) प्रक्रिया है जिसके कारण कंप्यूटर रुक जाता है और प्रतीक्षा करता है। न्यूरोप्रिफेचर अलग तरह से काम करता है, यह आगे की ओर देखता है। यह एक छोटे, विशेषीकृत प्रेडिक्टर का उपयोग करता है जो वर्तमान शब्द का विश्लेषण करता है और अनुमान लगाता है कि अगले शब्द के लिए किन नए मार्गों की आवश्यकता होगी। क्योंकि इसे पता है कि आगे क्या आने वाला है, यह स्टोरेज ड्राइव से केवल उन विशिष्ट, गायब हिस्सों को प्राप्त कर सकता है जिनकी आवश्यकता है, जबकि कंप्यूटर वर्तमान शब्द की गणना करने में व्यस्त होता है। यह एक अराजक, रुक-रुक कर चलने वाली प्रक्रिया को एक सुचारू, निरंतर प्रवाह में बदल देता है। यह सिस्टम अनिवार्य रूप से केवल आवश्यक नई जानकारी के छोटे से हिस्से को प्री-लोड करता है, और उस विशाल डेटा को अनदेखा कर देता है जो पहले से ही मेमोरी में मौजूद है।
इस विचार का परीक्षण करने के लिए, टीम ने एक पूर्ण सिस्टम बनाया और इसे जेटसन एजीएक्स ओरिन (Jetson AGX Orin) नामक एक शक्तिशाली एज डिवाइस पर चलाया, जिसमें प्रोसेसर और ग्राफिक्स यूनिट के बीच साझा की जाने वाली एक यूनिफाइड मेमोरी आर्किटेक्चर है। उन्होंने मिस्ट्रल-7बी (Mistral-7B) और लामा-3-8बी (Llama-3-8B) जैसे बड़े लैंग्वेज मॉडल्स के साथ सख्त मेमोरी सीमाओं के तहत परीक्षण किया, जो उन स्थितियों का अनुकरण करता है जहाँ मॉडल उपलब्ध मेमोरी से काफी बड़ा था। इन चुनौतीपूर्ण स्थितियों में, इन मॉडल्स को चलाने का मानक तरीका, जो डेटा स्वैपिंग को प्रबंधित करने के लिए ऑपरेटिंग सिस्टम पर निर्भर करता है, खराब प्रदर्शन करता है और अक्सर डिवाइस को ठप कर देता है। इसके विपरीत, न्यूरोप्रिफेचर ने डिवाइस को गतिमान रखा, जिससे मानक पद्धति की तुलना में लगभग आठ से बारह गुना अधिक गति प्राप्त हुई। सिस्टम ने प्रति सेकंड तीन से अधिक शब्द उत्पन्न करने की दर बनाए रखी, जबकि मानक दृष्टिकोण एक शब्द प्रति सेकंड भी बनाने के लिए संघर्ष कर रहा था।
शोधकर्ताओं ने यह भी जांचा कि मेमोरी बदलने पर सिस्टम कैसे व्यवहार करता है। उन्होंने पाया कि सिस्टम मेमोरी कम होने पर मॉडल के अधिक कार्य को स्टोरेज ड्राइव की ओर स्थानांतरित करके और अधिक स्थान उपलब्ध होने पर कार्य को वापस तेज़ मेमोरी की ओर स्थानांतरित करके अनुकूलित हो सकता है। सबसे कठिन मेमोरी स्थितियों में भी, सिस्टम ने उच्च प्रदर्शन बनाए रखा क्योंकि इसने उन विशाल डेटा ट्रांसफरों से परहेज किया जो आमतौर पर इन ऑपरेशनों को धीमा कर देते हैं। मॉडल के मस्तिष्क के पूरे स्तरों (layers) को इधर-उधर ले जाने के बजाय, इसने केवल डेटा के छोटे, बदलते हुए हिस्सों को स्थानांतरित किया। यह दृष्टिकोण इतना प्रभावी साबित हुआ कि सिस्टम अन्य उन्नत उपकरणों की तुलना में भी सबसे तेज़ बना रहा, जिनमें से कई विशिष्ट बाधाओं के तहत चलने में ही विफल रहे।
इस कार्य का एक महत्वपूर्ण हिस्सा यह सुनिश्चित करना था कि गति के लाभों के कारण बुद्धिमत्ता से समझौता न हो। शोधकर्ताओं ने सिस्टम द्वारा उत्पन्न टेक्स्ट की गुणवत्ता को मापा और पाया कि यह पूर्ण, अनकंप्रेस्ड मॉडल की गुणवत्ता के बहुत करीब है। सिस्टम ने मॉडल की भविष्यवाणियों की सटीकता को बनाए रखा, और सबसे आक्रामक मेमोरी-बचत सेटिंग्स का उपयोग करने पर भी मूल प्रदर्शन का 90 प्रतिशत से अधिक बरकरार रखा। इसने पुष्टि की कि केवल आवश्यक डेटा को स्थानांतरित करने की रणनीति ने भाषा को समझने और उत्पन्न करने की मॉडल की क्षमता को कम नहीं किया। सिस्टम ने प्रभावी रूप से उस डेटा को अनदेखा करना सीख लिया जो तत्काल अगले कदम के लिए आवश्यक नहीं था, और अपने संसाधनों को केवल उसी पर केंद्रित किया जो महत्वपूर्ण था।
यह अध्ययन इस बात पर प्रकाश डालता है कि हम रोजमर्रा के उपकरणों पर आर्टिफिशियल इंटेलिजेंस चलाने के बारे में कैसे सोच सकते हैं। वर्षों से, छोटे हार्डवेयर पर बड़े मॉडल्स को चलाने का समाधान मॉडल्स को छोटा बनाना या उन्हें कंप्रेस करना रहा है, जो कभी-कभी उनकी क्षमताओं को कम कर सकता है। न्यूरोप्रिफेचर एक अलग रास्ता सुझाता है: पूर्ण मॉडल को बरकरार रखें और उसके डेटा की आवाजाही को अत्यंत सटीकता के साथ प्रबंधित करें। यह अनुमान लगाकर कि मॉडल को आगे क्या चाहिए और केवल उस विशिष्ट परिवर्तन को प्राप्त करके, यह सिस्टम स्टोरेज ड्राइव को एक बाधा (bottleneck) से एक सहायक भागीदार में बदल देता है। यह दृष्टिकोण शक्तिशाली बुद्धिमत्ता को उन उपकरणों पर संचालित करने की अनुमति देता है जो पहले इसे रखने के लिए बहुत छोटे थे, जिससे उन्नत एआई को दूरस्थ सर्वर से कनेक्शन के बिना स्थानीय रूप से चलाने का द्वार खुल जाता है। परिणाम दिखाते हैं कि डेटा प्रवाह के सही प्रबंधन के साथ, मॉडल की शक्ति से समझौता किए बिना मेमोरी की भौतिक सीमाओं को पार किया जा सकता है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।