Pipeline-Native Transformers: Co-Designing Model Architecture and CPU Inference for Bandwidth-Efficient Autoregressive Decode
यह शोध पत्र cflow को प्रस्तुत करता है, जो सिंगल-टोकन ऑटोरेग्रेसिव डिकोडिंग में मेमोरी बैंडविड्थ बाधाओं को दूर करने के लिए पाइपलाइन-नेटिव ट्रांसफॉर्मर आर्किटेक्चर के साथ सह-डिज़ाइन किया गया एक CPU-फर्स्ट स्ट्रीमिंग इंजन है, जो L2-आकार की वेट टिलिंग (weight tiling), टॉप-k एक्सपर्ट सिलेक्शन और एसिंक्रोनस I/O ओवरलैप का उपयोग करके क्रिटिकल-पाथ वेट बैंडविड्थ में 2.00x तक की कमी और 32-vCPU सर्वर पर 5.94 टोकन/सेकंड की उपलब्धि प्राप्त करता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
आर्टिफिशियल इंटेलिजेंस की दुनिया में, सबसे शक्तिशाली कंप्यूटर प्रोग्रामों को अक्सर अरबों छोटे स्विचों से बने एक "मस्तिष्क" के रूप में वर्णित किया जाता है। ये स्विच, या 'वेट्स' (weights), कंप्यूटर की मुख्य मेमोरी में एक विशाल पुस्तकालय की शेल्फ पर रखी किताबों की तरह संग्रहीत होते हैं। एक भविष्यवाणी करने या टेक्स्ट का एक एकल शब्द उत्पन्न करने के लिए, कंप्यूटर को शेल्फ से सही किताबें निकालनी होती हैं, उन्हें पढ़ना होता है और एक गणना करनी होती है। वर्षों से, इंजीनियरों ने यह मान लिया था कि इन गणनाओं की गति ही सीमित कारक थी, यह मानते हुए कि यदि वे केवल प्रोसेसर को तेजी से सोचने में सक्षम बना सकें, तो प्रोग्राम तेजी से चलेगा। हालाँकि, शोध की एक नई धारा बताती है कि यह धारणा इस सबसे सामान्य तरीके के लिए गलत है जिस तरह से इन प्रोग्रामों का उपयोग किया जाता है: एक बार में एक शब्द उत्पन्न करना। इस विशिष्ट मोड में, प्रोसेसर अपने मस्तिष्क के सोचने का इंतज़ार नहीं कर रहा है; वह डेटा देने के लिए मेमोरी का इंतज़ार कर रहा है। प्रोसेसर इतना तेज़ है कि वह अपना अधिकांश समय खाली बैठा रहता है, एक खाली शेल्फ को ताकते हुए, अगली किताब के आने का इंतज़ार करता हुआ। यह एक ऐसा 'बॉटलनेक' (bottleneck) बनाता है जहाँ पूरे सिस्टम की गति इस बात से तय होती है कि कंप्यूटर कितनी तेज़ी से गणना कर सकता है, बल्कि इस बात से कि वह मेमोरी शेल्फ से प्रोसेसर तक डेटा कितनी तेज़ी से स्थानांतरित कर सकता है।
टॉम पोपरस्की नामक एक शोधकर्ता ने इस समस्या से निपटने के लिए यह महसूस किया कि इन "किताबों" को शेल्फ पर व्यवस्थित करने का मानक तरीका पूरी तरह से एक अलग प्रकार के कंप्यूटर के लिए बनाया गया था। अधिकांश आधुनिक एआई मॉडल विशेष ग्राफिक्स चिप्स पर चलने के लिए बनाए गए थे, जो एक साथ कई किताबें पढ़ने में उत्कृष्ट हैं। जब इन मॉडलों को मानक कंप्यूटर प्रोसेसर पर चलाया जाता है, तो पुराना संगठन प्रोसेसर को शेल्फ के चारों ओर इधर-उधर कूदने के लिए मजबूर करता है, जिससे डेटा एक अराजक क्रम में प्राप्त होता है जिसे हार्डवेयर अनुमानित नहीं कर पाता। पोपरस्की का काम एक क्रांतिकारी समाधान प्रस्तावित करता है: पुराने मॉडलों को नए हार्डवेयर पर बेहतर ढंग से चलाने की कोशिश करने के बजाय, उन्होंने मॉडल और उसे चलाने वाले सॉफ़्टवेयर दोनों को ज़मीन से ऊपर तक (from the ground up) एक साथ काम करने के लिए फिर से डिज़ाइन किया। उन्होंने मॉडल के डेटा को छोटे, सुव्यवस्थित टुकड़ों में संग्रहीत करने का एक नया तरीका बनाया जो प्रोसेसर के तत्काल कार्यक्षेत्र (workspace) में पूरी तरह फिट बैठते हैं, और उन्होंने मॉडल के आंतरिक निर्देशों को फिर से लिखा ताकि यह बिना रुके एक सुचारू, निरंतर रेखा में इन टुकड़ों को पढ़ सके।
इस नए दृष्टिकोण का मूल एक प्रणाली है जिसे 'cflow' कहा जाता है, जो कंप्यूटर के लिए एक अत्यधिक कुशल लाइब्रेरियन (पुस्तकालयाध्यक्ष) के रूप में कार्य करती है। एक मानक सेटअप में, जब कंप्यूटर को एक शब्द उत्पन्न करने की आवश्यकता होती है, तो उसे अक्सर मॉडल के एक विशिष्ट भाग के लिए निर्देशों का पूरा सेट लोड करना पड़ता है, भले ही उसे उनके एक बहुत छोटे अंश की ही आवश्यकता हो। यह एक तथ्य खोजने के लिए पूरी विश्वकोश को खोलने जैसा है। पोपरस्की की प्रणाली इसे डेटा को छोटे 'टाइल्स' (tiles) में व्यवस्थित करके बदल देती है, जो लगभग एक एकल पृष्ठ के आकार के होते हैं, और उन्हें ठीक उसी क्रम में संग्रहीत करती है जिसमें कंप्यूटर को उनकी आवश्यकता होगी। जब कंप्यूटर अगली जानकारी के टुकड़े के लिए पूछता है, तो सिस्टम अगले टाइल को तुरंत अपनी जगह पर खिसका देता है, जिससे प्रोसेसर व्यस्त रहता है। इसके अलावा, उन मॉडलों के लिए जो "मिक्सचर ऑफ एक्सपर्ट्स" (mixture of experts) का उपयोग करते हैं—जो एक ऐसी तकनीक है जहाँ मॉडल प्रत्येक कार्य के लिए कुछ विशिष्ट उप-प्रक्रियाओं को चुनता है—नया सिस्टम केवल उन्हीं विशिष्ट उप-प्रक्रियाओं को लोड करता है जिनकी उस क्षण आवश्यकता होती है, बाकी को शेल्फ पर ही छोड़ देता है। यह हर एक शब्द उत्पन्न करने के लिए हजारों अप्रयुक्त निर्देशों को लोड करने की बर्बादी को समाप्त करता है।
इस प्रणाली को काम करने के योग्य बनाने के लिए, शोधकर्ता को स्वयं मॉडल की वास्तुकला (architecture) को बदलना पड़ा। मानक मॉडल एक सख्त असेंबली लाइन की तरह बनाए जाते हैं जहाँ एक चरण के पूरी तरह से समाप्त होने के बाद ही अगला चरण शुरू हो सकता है। यह संरचना कंप्यूटर को अगला सेट निर्देश पढ़ने से पहले पूरी लाइन के खत्म होने का इंतज़ार करने के लिए मजबूर करती है। पोस्परकी ने मॉडल को एक "वर्टिकल पाइपलाइन" (vertical pipeline) के लिए डिज़ाइन किया, जहाँ कंप्यूटर वर्तमान चरण को पूरा कर ही रहा होता है, उसी दौरान वह अगले चरण के निर्देशों को पढ़ना शुरू कर सकता है। यह केवल इसलिए संभव है क्योंकि मॉडल को पिछले चरण से सूचना के थोड़े विलंबित संस्करण को स्वीकार करने के लिए प्रशिक्षित किया गया है, एक ऐसा परिवर्तन जो मानक मॉडल में त्रुटियाँ पैदा करेगा लेकिन इस नए डिज़ाइन में पूरी तरह से काम करता है। इन पुनर्गठित मॉडलों के पांच अलग-अलग संस्करणों को प्रशिक्षित करके, शोधकर्ता ने पाया कि एक विशिष्ट विन्यास (configuration) डेटा की मात्रा को आधा करने में सक्षम है जिसे कंप्यूटर को स्थानांतरित करने की आवश्यकता होती है। डेटा संचलन में यह कमी सीधे गति में परिवर्तित होती है, क्योंकि कंप्यूटर प्रतीक्षा करने के बजाय अधिक काम करता है।
इस सह-डिज़ाइन (co-design) के परिणामों को वास्तविक हार्डवेयर पर मापा गया, जिससे मौजूदा सॉफ़्टवेयर पर एक स्पष्ट लाभ दिखाई दिया। एक मानक सर्वर कंप्यूटर पर, नया सिस्टम लगभग छह शब्द प्रति सेकंड की दर से टेक्स्ट उत्पन्न करता है, जो सर्वोत्तम उपलब्ध विकल्पों से बेहतर प्रदर्शन करता है जो उसी मशीन पर केवल लगभग साढे चार शब्द प्रति सेकंड ही प्रबंधित कर पाते हैं। यह सुधार केवल एक सैद्धांतिक गणना नहीं थी; यह कंप्यूटर की मेमोरी को एक्सेस करने की संख्या को कम करके प्राप्त की गई एक वास्तविक दुनिया की गति वृद्धि थी। अध्ययन ने कई अन्य विचारों का भी परीक्षण किया, जैसे कि कंप्यूटर को यह बताने के लिए स्पष्ट निर्देश देना कि आगे डेटा कहाँ देखना है। आश्चर्यजनक रूप से, परीक्षणों ने दिखाया कि इन निर्देशों ने मदद नहीं की और कभी-कभी सिस्टम को धीमा भी कर दिया, क्योंकि कंप्यूटर का अपना हार्डवेयर पहले से ही बेहतर अनुमान लगा रहा था कि आगे क्या आवश्यक है। यह निष्कर्ष महत्वपूर्ण है, क्योंकि यह एक सामान्य अनुकूलन तकनीक को खारिज करता है और पुष्टि करता है कि वास्तविक लाभ डेटा और मॉडल के मौलिक पुनर्गठन से आता है।
शोध ने यह भी पता लगाया कि ये परिवर्तन मॉडल बड़े होने पर कैसे टिकेंगे। विश्लेषण बताता है कि जबकि परीक्षण किए गए मॉडलों के लिए गति वृद्धि महत्वपूर्ण है, विशिष्ट लाभ मॉडल के आकार और उपयोग किए जाने वाले कंप्यूटर के प्रकार पर निर्भर करते हैं। बहुत बड़े मॉडलों के लिए, बाधा (bottleneck) फिर से बदल सकती है, लेकिन सिद्धांत वही रहता है: मॉडल की संरचना को इस तरह से संरेखित करके कि कंप्यूटर मेमोरी को पढ़ता है, ऐसी गति अनलॉक करना संभव है जिसे पहले साधारण प्रोसेसर पर असंभव माना जाता था। यह कार्य प्रदर्शित करता है कि वर्तमान आर्टिफिशियल इंटेलिजेंस की सीमाएँ भौतिकी के निश्चित नियम नहीं हैं, बल्कि डिज़ाइन के विकल्प हैं जिन्हें बदला जा सकता है। मॉडल और रनटाइम को दो अलग-अलग टुकड़ों के बजाय एक एकल, एकीकृत प्रणाली के रूप में मानकर, एक ऐसा सिस्टम बनाना संभव है जो डेटा को एक सुव्यवस्थित पुस्तकालय की दक्षता के साथ स्थानांतरित करता है, जिससे कंप्यूटर अपने स्वयं के हार्डवेयर की गति से सोच सके। यह दृष्टिकोण बिना विशेष चिप्स वाले उपकरणों पर शक्तिशाली एआई चलाने के लिए एक स्पष्ट मार्ग प्रदान करता है, जिससे उन्नत बुद्धिमत्ता वास्तविक दुनिया में अधिक सुलभ और उत्तरदायी बनती है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।