More GPUs or a Smaller Cache? Tensor Parallelism versus KV Compression for Memory-Bound LLM Serving
यह शोध पत्र यह प्रदर्शित करता है कि मेमोरी-बाउंड (memory-bound) LLM सर्विंग के लिए, KV कंप्रेशन लगातार टेंसर पैरेललिज्म (tensor parallelism) की तुलना में एक बेहतर लागत-से-क्षमता अनुपात (cost-to-capacity ratio) प्रदान करता है, जो केवल उन मॉडलों के लिए आवश्यक है जो डिवाइस मेमोरी सीमाओं से अधिक हैं लेकिन छोटे मॉडलों के लिए लेटेंसी या लागत-दक्षता में सुधार करने में विफल रहता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
जब एक बड़े भाषा मॉडल (लार्ज लैंग्वेज मॉडल) को एक लंबी बातचीत करने या एक विशाल दस्तावेज़ को प्रोसेस करने के लिए कहा जाता है, तो उसे एक सरल लेकिन जिद्दी भौतिक सीमा का सामना करना पड़ता है: मेमोरी। मॉडल को यह सुनिश्चित करने के लिए कि उसके उत्तर सुसंगत बने रहें, उसे कंप्यूटर की मेमोरी के एक विशेष क्षेत्र, जिसे 'कैश' (cache) कहा जाता है, में कही और सुनी गई हर बात का एक चलता हुआ रिकॉर्ड रखना होता है। यदि बातचीत बहुत लंबी हो जाती है या एक साथ बहुत सारे लोग प्रश्न पूछ लेते हैं, तो यह कैश ओवरफ्लो हो जाता है, और सिस्टम क्रैश हो जाता है। सेवा को चालू रखने के लिए, इंजीनियर पारंपरिक रूप से दो अलग-अलग रणनीतियों पर निर्भर रहे हैं। एक दृष्टिकोण यह है कि अधिक कंप्यूटर चिप्स खरीदें, जिससे मेमोरी के भार को कई शक्तिशाली प्रोसेसरों के बीच साझा किया जा सके जो एक साथ मिलकर काम करते हैं। दूसरा दृष्टिकोण यह है कि स्वयं बातचीत के मेमोरी फुटप्रिंट को छोटा किया जाए, जिसमें डेटा को कंप्रेस करने के लिए चतुर गणितीय युक्तियों का उपयोग किया जाता है ताकि वह एक ही चिप पर फिट हो सके, भले ही इसके लिए थोड़ी सी सटीकता का त्याग करना पड़े। वर्षों तक, विशेषज्ञों के ये दो समूह अलग-अलग दुनियाओं में काम करते रहे, और उन्होंने शायद ही कभी अपने समाधानों के वास्तविक मूल्य (प्राइस टैग) की तुलना की हो।
एक नया अध्ययन इन दोनों दृष्टिकोणों को एक ही कमरे में लाता है ताकि यह देखा जा सके कि इन प्रणालियों को चलाने वाले लोगों के लिए वास्तव में कौन सा सस्ता है। शोधकर्ताओं ने, वास्तविक दुनिया के हार्डवेयर के विरुद्ध कैलिब्रेटेड सिमुलेशन का उपयोग करते हुए, उस टिपिंग पॉइंट (निर्णायक बिंदु) को खोजने की कोशिश की जहाँ अधिक चिप्स जोड़ना डेटा को कंप्रेस करने से बेहतर सौदा बन जाता है। उन्होंने लोकप्रिय ओपन-सोर्स मॉडलों और विभिन्न प्रकार के उच्च श्रेणी के कंप्यूटर चिप्स का उपयोग करके विभिन्न कॉन्फ़िगरेशन का परीक्षण किया, और प्रति दस लाख शब्द उत्पन्न करने की लागत के मुकाबले प्रतिक्रिया की गति को मापा। परिणाम एक आश्चर्य था: कोई टिपिंग पॉइंट नहीं है। उनके द्वारा परीक्षण किए गए प्रत्येक परिदृश्य में, डेटा को कंप्रेस करना अधिक हार्डवेयर जोड़ने की तुलना में काफी सस्ता था। जैसे-जैसे मेमोरी राहत की अधिक आवश्यकता पड़ी, लागत का अंतर और भी बढ़ गया, जहाँ कंप्रेशन ने केवल अधिक चिप्स खरीदने की तुलना में लगभग दोगुने तक की बचत प्रदान की।
यह अध्ययन प्रकट करता है कि प्रश्न स्वयं इस गलतफहमी पर आधारित था कि ये प्रणालियाँ कैसे विफल होती हैं। शोधकर्ताओं ने पाया कि छोटे मॉडलों के लिए, मेमोरी की सीमा शायद ही कभी केवल बातचीत की लंबाई के कारण पहुँचती है। सात बिलियन पैरामीटर्स वाला एक मॉडल जो एक मानक उच्च-स्तरीय चिप पर चल रहा है, अपनी अधिकतम संभव बातचीत की लंबाई को बिना कभी जगह खत्म हुए संभाल सकता है। वास्तविक बाधा यह नहीं है कि चैट कितनी लंबी है, बल्कि यह है कि मॉडल स्वयं कितना बड़ा है। जब मॉडल के मूल निर्देश, या 'वेट्स' (weights), एक ही चिप पर फिट होने के लिए बहुत बड़े होते हैं, तो कंप्रेशन किसी भी काम नहीं आता, क्योंकि कंप्रेशन केवल बातचीत के इतिहास को सिकोड़ता है, मॉडल के मस्तिष्क को नहीं। इन मामलों में, अधिक चिप्स जोड़ना कोई विकल्प नहीं है; यह सिस्टम को काम करने लायक बनाने का एकमात्र तरीका है। यह एक स्पष्ट विभाजन रेखा बनाता है: यदि मॉडल इतना छोटा है कि एक चिप पर फिट हो सके, तो कंप्रेशन एक बेहतर, कम लागत वाला विकल्प है। यदि मॉडल बहुत बड़ा है, तो चिप्स जोड़ना अनिवार्य है, और कंप्रेशन एक माध्यमिक उपकरण बन जाता है ताकि हार्डवेयर मौजूद होने के बाद अधिक उपयोगकर्ताओं को संभाला जा सके।
शोधकर्ताओं ने यह भी खोजा कि ये दो रणनीतियाँ अलग-अलग चीजें खरीदती हैं। अधिक चिप्स जोड़ने से सिस्टम तेज़ हो जाता है, जिससे उत्तर शुरू करने और प्रत्येक शब्द उत्पन्न करने में लगने वाला समय कम हो जाता है। हालाँकि, डेटा को कंप्रेस करने से सिस्टम धीमा हो जाता है क्योंकि कंप्यूटर को कंप्रेस की गई जानकारी को अनपैक करने के लिए अधिक मेहनत करनी पड़ती है, और अब जो अतिरिक्त उपयोगकर्ता इसे संभाल सकते हैं वे ट्रैफिक जाम पैदा करते हैं जो प्रतिक्रियाओं में देरी करते हैं। जबकि कंप्रेशन एक डॉलर के हार्डवेयर खर्च से लगभग सोलह गुना अधिक समवर्ती (concurrent) उपयोगकर्ताओं को सपोर्ट करने की अनुमति देता है, वहीं अधिक चिप्स जोड़ने से वह क्षमता केवल थोड़े से अंतर से बढ़ती है और उसकी लागत बहुत अधिक होती है। अध्ययन निष्कर्ष निकालता है कि सबसे कुशल मार्ग यह निर्धारित करना है कि क्या मॉडल एक चिप पर फिट बैठता है। यदि वह फिट बैठता है, तो अधिक लोगों को सस्ते में सेवा देने के लिए डेटा को कंप्रेस करें। यदि वह नहीं बैठता है, तो इसे व्यवहार्य बनाने के लिए आवश्यक चिप्स जोड़ें, और फिर उस हार्डवेयर का अधिकतम उपयोग करने के लिए डेटा को कंप्रेस करें कि कितने उपयोगकर्ता उसे सपोर्ट कर सकें। यह विचार कि एक मध्य मार्ग है जहाँ दोनों विधियों की लागत समान है, इन सिमुलेशनों की वास्तविक दुनिया में अस्तित्व में ही नहीं है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।