LARA: Lightweight Adapters in the Residual Stream for Composable Adaptation and Alignment
LARA एक हल्का अनुकूलन (lightweight adaptation) तरीका है जो सीधे एक फ्रीज़्ड मॉडल के रेसिडुअल स्ट्रीम (residual stream) में लो-रैंक सुधारों (low-rank corrections) को इंजेक्ट करता है, जिससे पैरामीटर-मैच्ड प्रदर्शन, एक स्केलिंग फैक्टर के माध्यम से सुचारू इन्फरेंस-टाइम नियंत्रण, और एक ही डिवाइस पर कई विशिष्ट व्यवहारों को एक साथ होस्ट करने की क्षमता सक्षम होती है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आपके पास एक सुपर-स्मार्ट रोबोट है जिसने इंटरनेट पर लगभग सब कुछ पढ़ लिया है। वह एक जीनियस है, लेकिन वह थोड़ा जिद्दी भी है: एक बार जब उसने अपने सबक सीख लिए, तो आप उसे बिना उसका दिमाग खराब किए या खुद का एक नया संस्करण स्टोर करने के लिए भारी मात्रा में मेमोरी की आवश्यकता के बिना नए करतब नहीं सिखा सकते। यह लार्ज लैंग्वेज मॉडल्स (LLMs) की दुनिया है। इन रोबनों को विशिष्ट कार्यों के लिए उपयोगी बनाने के लिए—जैसे पायथन कोड लिखना या चिकित्सा सलाह देना—वैज्ञानिक आमतौर पर एक तकनीक का उपयोग करते हैं जिसे फाइन-ट्यूनिंग (fine-tuning) कहा जाता है। इसे रोबोट को एक नई पाठ्यपुस्तक देने के रूप में सोचें। पुराना, प्रमुख तरीका, जिसे LoRA कहा जाता है, ऐसा है जैसे रोबोट के दिमाग के हिस्सों को अलग करना, उसके आंतरिक निर्देश मैनुअल के कुछ पन्नों को फिर से लिखना और फिर उसे वापस चिपका देना। यह अच्छा काम करता है, लेकिन यह भारी है। यदि आप चाहते हैं कि रोबोट एक कोडर और एक डॉक्टर और एक कवि हो, तो आपको उसके दिमाग के तीन अलग-अलग, भारी संस्करणों को साथ लेकर चलना होगा, जो एक फोन जैसे छोटे उपकरण के लिए असंभव है।
यहाँ LARA (लाइटवेट एडिटिव रेसिडुअल अडैप्टेशन) आता है, जो रॉयल हॉलोवे और यूनिवर्सिटी ऑफ वेस्ट लंदन के शोधकर्ताओं का एक नया विचार है। रोबोट के आंतरिक मैनुअल को फिर से लिखने के बजाय, LARA रोबोट के विचारों के प्रवाह में बोलने से ठीक पहले एक छोटा, हटाने योग्य "नोट" (टिप्पणी) जोड़ता है। यह नोट इतना छोटा और हल्का है कि आप एक ही रोबोट पर एक साथ कई अलग-अलग "व्यक्तित्वों" (कोडिंग के लिए एक, गणित के लिए एक, विनम्र होने के लिए एक) की एक पूरी लाइब्रेरी रख सकते हैं। रोबोट फिर शब्द दर शब्द, बिना अपने पूरे दिमाग को रीलोड किए, इन व्यक्तित्वों के बीच स्विच कर सकता है। यह पेपर सुझाव देता है कि यह "नोट लेने" की विधि भारी "पुनर्लेखन" विधि जितनी ही अच्छी तरह काम करती है, लेकिन एक सुपरपावर के साथ: आप नए व्यवहार का वॉल्यूम ऊपर या नीचे कर सकते हैं, और आप एक बहुत छोटी जगह में कई व्यवहारों को पैक कर सकते हैं, जिससे आपके डिवाइस पर एक बहु-प्रतिभाशाली AI चलाना संभव हो जाता है।
समस्या: भारी दिमाग
कल्पना कीजिए कि आपके पास एक प्रतिभाशाली व्यक्ति की एक विशाल, जमी हुई मूर्ति है। यह उत्तम है, लेकिन यह बदल नहीं सकती। यदि आप चाहते हैं कि यह फ्रेंच बोलना शुरू करे, तो आप इसे केवल फुसफुसा नहीं सकते; आपको पत्थर में नई मांसपेशियां छीलनी होंगी। अधिकांश AI अनुकूलन यही करते हैं: वे मूर्ति को छीलने की कोशिश करते हैं। लोकप्रिय तरीका, LoRA, मूर्ति की मांसपेशियों के ऊपर मिट्टी की एक पत层 परत जोड़ने जैसा है। यह काम करता है, लेकिन यदि आप चाहते हैं कि मूर्ति फ्रेंच, स्पेनिश और जर्मन बोले, तो आपको तीन अलग-अलग मूर्तियाँ चाहिए, या मिट्टी की तीन अलग-अलग परतें जिन्हें आपको अंदर-बाहर बदलना पड़ता है। यह धीमा है और बहुत जगह लेता है।
समाधान: स्टिकी नोट (Sticky Note)
LARA के पीछे के शोधकर्ताओं ने एक अलग सवाल पूछा: "क्या होगा अगर हम मूर्ति को छुएं ही नहीं?" मूर्ति को छीलने या मिट्टी जोड़ने के बजाय, उन्होंने तय किया कि वे हर बार जब वह किसी चीज़ के लिए हाथ बढ़ाता है, तो मूर्ति के हाथ पर एक छोटा, जादुई स्टिकी नोट चिपका देंगे।
AI की दुनिया में, "हाथ" को रेसिडुअल स्ट्रीम (residual stream) कहा जाता है। यह सूचना का प्रवाह है जो मॉडल की परतों के माध्यम से गुजरता है, जैसे एक नदी जो रोबोट के विचारों को ले जा रही है। LARA नदी के तल (फ्रीज किए गए वेट्स) को नहीं बदलता है; यह बस नदी में एक छोटा, लो-रैंक स्पंज डुबोता है, उससे थोड़ा सा "सुधार" निचोड़ता है, और उसे वापस पानी में मिला देता है।
- स्पंज: यह केवल लगभग 2.39 मिलियन ट्रेन करने योग्य पैरामीटर्स वाला एक छोटा मॉड्यूल है।
- नदी: मुख्य मॉडल (एक 1.5 बिलियन पैरामीटर वाला मॉडल) पूरी तरह से फ्रीज और अछूता रहता है।
चूंकि मुख्य मॉडल को कभी छुआ नहीं जाता है, इसलिए "बेस" रोबोट हमेशा वहां मौजूद रहता है। स्पंज बस विचारों के बहते समय उनमें थोड़ा स्वाद जोड़ देता है।
जादुई करतब
पेपर ने इस दृष्टिकोण के बारे में तीन शानदार बातें पाईं:
1. यह भारी तरीके जितना ही अच्छा है
शोधकर्ताओं ने कोडिंग कार्य और एक "वरीयता" (preference) कार्य (रोबोट को अधिक सहायक और कम रूखा बनाना सिखाना) पर LARA का परीक्षण किया। उन्होंने ठीक उसी संख्या में ट्रेन करने योग्य पैरामीटर्स का उपयोग करके भारी मिट्टी वाले तरीके (LoRA) के साथ इसकी तुलना की। परिणाम? LARA ने LoRA की बराबरी की। इसने कोडिंग करना और वरीयताओं का पालन करना उतना ही अच्छा सीखा, भले ही इसने मूल मस्तिष्क को कभी छुआ भी नहीं। यह ऐसा है जैसे स्टिकी नोट, मैनुअल को फिर से लिखने जितना प्रभावी था।
2. वॉल्यूम नॉब (Volume Knob)
यहीं पर LARA वास्तव में दिलचस्प हो जाता है। क्योंकि "सुधार" केवल एक योगात्मक नोट है, आप रोबोट के बोलने के समय एक डायल घुमा सकते हैं जिसे (गामा) कहा जाता है।
- यदि आप सेट करते हैं, तो रोबोट नोट को अनदेखा कर देता है और बिल्कुल फ्रीज बेस की तरह व्यवहार करता है।
- यदि आप सेट करते हैं, तो यह नोट का पूरा उपयोग करता है।
- यदि आप सेट करते हैं, तो यह आधा-आधा होता है।
पेपर दिखाता है कि आप केवल इस नॉब को घुमाकर "उबाऊ बेस" और "विशेषज्ञ कोडर" के बीच सहजता से स्विच कर सकते हैं। एक बार चिपका दिए जाने के बाद आप भारी मिट्टी वाले तरीके (LoRA) के साथ ऐसा नहीं कर सकते; वह एक स्थायी परिवर्तन है। LARA के साथ, आप कह सकते हैं, "हे रोबोट, 70% कोडर और 30% कवि बनो," बस वॉल्यूम एडजस्ट करके।
3. व्यक्तित्वों की लाइब्रेरी
यह सबसे बड़ी बात है। चूंकि बेस फ्रीज है और नोट्स बहुत छोटे हैं, इसलिए आप एक ही 1.5 बिलियन पैरामीटर वाले मॉडल पर सात अलग-अलग व्यवहारों को एक साथ रख सकते हैं।
- शोधकर्ताओं ने एक फ्रीज मॉडल पर छह फाइन-ट्यून किए गए व्यवहार (कोड, सामान्य चैट, गणित, चिकित्सा, दूसरा कोड सेट, और सारांश) और एक "वरीयता" व्यवहार रखा।
- सभी सात के लिए कुल अतिरिक्त वजन? केवल 33 MB।
- यदि आप पुराने तरीके का उपयोग करते, तो आपको मॉडल की सात पूर्ण प्रतियां चाहिए होतीं, जो 21.6 GB जगह लेतीं।
कल्पना कीजिए कि आप सात अलग-अलग व्यक्तित्वों को एक सिंगल MP3 फ़ाइल के आकार में फिट कर रहे हैं। मॉडल एक छोटा "रूटर" (ट्रैफिक पुलिस) उपयोग करता है जो यह देखने के लिए देखता है कि रोबोट अगला कौन सा शब्द बोलने वाला है और यह तय करता है कि उस विशिष्ट शब्द के लिए किस व्यक्तित्व का उपयोग करना है। यदि वाक्य गणित के बारे में है, तो वह गणित वाला नोट उठा लेता है। यदि कोडिंग के बारे में है, तो वह कोडिंग वाला नोट उठाता है। यदि वाक्य अस्पष्ट है, तो यह उन्हें मिला भी सकता है।
कमी (और भविष्य)
पेपर सावधानी से कहता है कि यह अभी भी हर चीज़ के लिए जादुई समाधान नहीं है।
- "कोड" परीक्षण: यह प्रमाण कि LARA, LoRA जितना अच्छा काम करता है, मुख्य रूप से एक कोड डेटासेट पर किया गया था। लेखक सुझाव देते हैं कि यह अन्य चीजों के लिए भी संभवतः काम करता है, लेकिन उन्होंने अभी तक हर संभावित विषय पर इसका पूरी तरह से परीक्षण नहीं किया है।
- "एम्प्लीफिकेशन" की सीमा: यदि आप वॉल्यूम नॉब () को बहुत अधिक (जैसे 3 पर) सेट करते हैं, तो रोबोट हकलाने लगता है और गलतियाँ करने लगता है, खासकर यदि आपके पास कई नोट्स एक साथ हों। एक अकेला नोट स्थिर है, लेकिन कई नोट्स को एक साथ रखकर वॉल्यूम बढ़ाने से नदी में बाढ़ आ जाती है।
- रूटर का भ्रम: जब दो व्यवहार बहुत समान होते हैं (जैसे दो अलग-अलग कोड डेटासेट), तो ट्रैफिक पुलिस कभी-कभी भ्रमित हो जाता है और वोट विभाजित कर देता है। हालांकि, पेपर में पाया गया कि भ्रमित होने पर भी रोबोट अच्छा काम करता है क्योंकि दोनों नोट्स कोडिंग में मदद करने की कोशिश कर रहे होते हैं।
यह क्यों मायने रखता है
पेपर सुझाव देता है कि हमें हर नए कौशल के लिए विशाल, अलग मस्तिष्क बनाने की आवश्यकता नहीं हो सकती है। इसके बजाय, हमारे पास एक ठोस, फ्रीज किया हुआ मस्तिष्क और छोटे, स्विच करने योग्य नोट्स से भरा एक बैकपैक हो सकता है। यह फोन या लैपटॉप जैसे उपकरणों पर AI चलाने के लिए बहुत बड़ा है, जहाँ मेमोरी सीमित होती है। यह एक ऐसे भविष्य का संकेत देता जहाँ आपके फोन में एक ही AI मॉडल हो सकता है जो बिना कोई नया ऐप डाउनलोड किए या बड़े अपडेट का इंतजार किए, तुरंत आपके गणित के ट्यूटर से कोडिंग असिस्टेंट और फिर आपके रचनात्मक लेखन साथी में बदल सकता है। शोधकर्ता इसे "कंपोजेबल अडैप्टेशन" (composable adaptation) कहते हैं, लेकिन आप इसे अपने रोबोट को छोटे, जादुई स्टिकी नोट्स की एक वॉर्डरोब देने के रूप में देख सकते हैं।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।