In-Place Tokenizer Expansion for Pre-trained LLMs
यह शोध पत्र एक इन-प्लेस टोकेनाइज़र एक्सपेंशन विधि प्रस्तुत करता है जो एक बहुभाषी कॉर्पस पर BPE मर्ज को जारी रखकर और सब-टोकेन एवरेजिंग के माध्यम से नए एम्बेडिंग्स को इनिशियलाइज़ करके प्री-ट्रेंड LLMs को अपग्रेड करती है, जिससे मॉडल की गुणवत्ता से समझौता किए बिना हिंदी और वियतनामी जैसी भाषाओं के लिए टोकन काउंट को काफी कम किया जाता है और डिकोड गति में सुधार किया जाता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
मशीनों की भाषा: एक त्वरित परिचय
कल्पना कीजिए कि आप एक रोबोट को बोलना सिखा रहे हैं। ऐसा करने के लिए, आप उसे ब्रह्मांड के हर शब्द की डिक्शनरी नहीं दे सकते; वह ले जाने के लिए बहुत भारी होगी। इसके बजाय, आप उसे निर्माण खंडों (building blocks) का एक सेट देते हैं। आर्टिफिशियल इंटेलिजेंस की दुनिया में, इन ब्लॉक्स को टोकन (tokens) कहा जाता है। टोकन को टेक्स्ट के सबसे छोटे टुकड़ों के रूप में समझें—कभी-कभी यह "cat" जैसा एक पूरा शब्द होता है, लेकिन अक्सर यह "c" जैसा एक एकल अक्षर या एक शब्दांश भी हो सकता है।
जब एक रोबोट भाषा सीखता है, तो वह वाक्यों को इन ब्लॉक्स में तोड़ने का निर्णय लेता है। यदि वह पहले अंग्रेजी सीखता है, तो उसके पास "the" शब्द के लिए एक विशेष ब्लॉक हो सकता है। लेकिन यदि आप बाद में उससे हिंदी या वियतनामी बोलने के लिए कहते हैं, और वह उन भाषाओं के लिए तैयार नहीं था, तो उसे उन शब्दों को बहुत छोटे, अक्षम टुकड़ों में तोड़ना पड़ सकता है, जैसे "हिं-दी" के बजाय "हि-ं-दी-ी"। यह एक ऐसे घर को बनाने की कोशिश करने जैसा है जहाँ आपको पेचकस की ज़रूरत है लेकिन आप हथौड़े का उपयोग कर रहे हैं; यह काम तो करता है, लेकिन यह धीमा, बोझिल है और ऊर्जा बर्बाद करता है। यह शोध पत्र इस समस्या पर काम करता है कि कैसे एक रोबोट के "टूलबॉक्स" (उसकी शब्दावली) को अपग्रेड किया जाए, बिना पूरे रोबोट को फिर से बनाए बिना।
टूटे हुए टूलबॉक्स की पहेली
लि्विड एआई (Liquid AI) के जिमी और उनकी टीम से मिलिए। वे LFM2 नामक एक बहुत ही स्मार्ट रोबोट पर काम कर रहे थे, जो फोन और लैपटॉप जैसे उपकरणों पर रहता है। यह रोबोट अंग्रेजी और कोडिंग में बहुत अच्छा था, लेकिन जब इसने हिंदी, वियतनामी या थाई जैसी भाषाएं बोलने की कोशिश की, तो यह लड़खड़ा गया। क्यों? क्योंकि इसकी शब्दावली एक ऐसे टूलबॉक्स की तरह थी जिसे लंदन की यात्रा के लिए पैक किया गया था, बैंकॉक के लिए नहीं। जब रोबकार ने "Hindi" लिखने की कोशिश की, तो उसके पास पूरे शब्द के लिए एक एकल ब्लॉक नहीं था। इसके बजाय, उसे इसे जोड़ने के लिए चार या पांच छोटे ब्लॉक्स का उपयोग करना पड़ा। इससे रोबोट धीमा, थका हुआ और बैटरी पावर का भूखा हो गया।
टीम के सामने एक कठिन विकल्प था। वे अपने कठिन परिश्रम को फेंक सकते थे, एक बेहतर टूलबॉक्स के साथ शून्य से एक नया रोबोट बना सकते थे, और फिर से शुरुआत कर सकते थे। या, वे पुराने रोबोट को बिना तोड़े उसमें नए औजारों का एक सेट चुपके से डाल सकते थे। दूसरा विकल्प एक पूरी तरह से असेंबल की गई, चलती हुई कार के इंजन में हाईवे पर चलते समय एक नया दराज जोड़ने की कोशिश करने जैसा है। अधिकांश लोगों ने सोचा कि यह असंभव या बहुत जोखिम भरा है।
"इन-प्लेस" अपग्रेड
टीम ने ठीक यही करने का एक चतुर तरीका खोज निकाला। उन्होंने इसे टोकेनाइज़र एक्सपेंशन (Tokenizer Expansion) नाम दिया। पुराने टूलबॉक्स को फेंकने के बजाय, उन्होंने मूल औजारों को रखा और बस बॉक्स के अंत में नए औजार जोड़ दिए।
उन्होंने इसे चरण-दर-चरण इस प्रकार किया:
- स्मार्ट कॉपी-पेस्ट: उन्होंने रोबोट की मौजूदा बिल्डिंग ब्लॉक्स की सूची ली और उसे कई अलग-अलग भाषाओं के मिश्रण पर सीखना जारी रखने के लिए कहा। जैसे-जैसे रोबोट नए शब्द सीख रहा था, उसने पुराने ब्लॉक्स को फेंका नहीं। इसके बजाय, उसने "Hindi" या "Thai" जैसे शब्दों के लिए नए, बड़े ब्लॉक्स बनाए। महत्वपूर्ण बात यह थी कि प्रत्येक नया ब्लॉक उन पुराने, छोटे ब्लॉक्स द्वारा बनाया गया था जिन्हें वह पहले से जानता था। यह यह महसूस करने जैसा था कि यदि आपके पास एक "H" ब्लॉक और एक "i" ब्लॉक है, तो आप उन्हें "Hi" ब्लॉक बनाने के लिए एक साथ जोड़ सकते हैं, और फिर उसे "nd" और "i" के साथ जोड़कर "Hindi" बना सकते हैं।
- जादुई गोंद (एम्बेडिंग इनिशियलाइजेशन): अब रोबोट के पास नए ब्लॉक्स थे, लेकिन उसे नहीं पता था कि उनका अर्थ क्या है। टीम को रोबोट को यह सिखाना था कि ये नए ब्लॉक्स क्या दर्शाते हैं। उन्होंने एक सरल लेकिन शानदार ट्रिक का उपयोग किया: उन्होंने उन पुराने ब्लॉक्स को देखा जिनसे नया ब्लॉक बना था और नए ब्लॉक को उसके हिस्सों का "औसत" अर्थ दे दिया। यदि एक नया ब्लॉक तीन पुराने ब्लॉक्स से बना था, तो रोबोट के मस्तिष्क ने उसे उन तीन का औसत व्यक्तित्व दे दिया। इसका मतलब था कि रोबोट को अनुमान लगाने की ज़रूरत नहीं थी; वह एक बहुत अच्छे अनुमान के साथ शुरू हुआ।
- दो-चरणीय वर्कआउट: रोबोट अभी मैराथन दौड़ने के लिए तैयार नहीं था। यदि वे इसे तुरंत दौड़ने देते, तो यह लड़खड़ा जाता। इसलिए, उन्होंने दो-चरणीय वर्कआउट किया:
- चरण 1: उन्होंने रोबोट के मस्तिष्क को फ्रीज कर दिया (नए ब्लॉक्स को छोड़कर) और केवल नए ब्लॉक्स को सीखने दिया। यह टूलबॉक्स में नए दराजों को बाकी कार को हिलाए बिना चीजें रखने के लिए अभ्यस्त होने देने जैसा था।
- चरण 2: एक बार जब नए ब्लॉक्स सहज हो गए, तो उन्होंने पूरे रोबोट को अनफ्रीज कर दिया और उसे कई भाषाओं में फिर से पढ़ना और लिखना सिखाया। इससे रोबोट को यह समझने में मदद मिली कि नए ब्लॉक्स बड़े चित्र में कैसे फिट होते हैं।
परिणाम: तेज़, स्मार्ट और हल्का
परिणाम प्रभावशाली थे। इस नए, विस्तारित टूलबॉक्स का उपयोग करके, रोबोट हिंदी, वियतनामी और थाई को बहुत अधिक कुशलता से बोल सका।
- हिंदी टेक्स्ट को 2.4 गुना कम ब्लॉक्स में तोड़ा गया।
- वियतनामी में 2.6 गुना कमी आई।
- थाई में सबसे बड़ी छलांग देखी गई, जिसमें 4.0 गुना कम ब्लॉक्स की आवश्यकता पड़ी।
क्योंकि रोबोट को एक ही बात कहने के लिए कम ब्लॉक्स को प्रोसेस करना पड़ा, इसलिए वह बहुत तेज़ हो गया। टीम ने अनुमान लगाया कि फोन पर, इन भाषाओं को बोलने में प्रति वर्ण (character) 2.2 से 3.7 गुना तेज़ गति मिल सकती है। यह पैदल चलने के बजाय साइकिल पर स्विच करने जैसा था; रोबोट ने उसी दूरी को बहुत कम समय में तय किया।
उन्होंने क्या सीखा (और क्या नहीं किया)
टीम ने यह भी सीखा कि क्या नहीं करना चाहिए, जो उतना ही महत्वपूर्ण है।
- पुराने औजारों को न छुएं: एक प्रयोग में, उन्होंने नए ब्लॉक्स जोड़ते समय रोबोट को अपने पुराने ब्लॉक्स के अर्थ को फिर से सीखने की कोशिश करने दी। इससे रोबमान भ्रमित हो गया और वह एक टूटे हुए रिकॉर्ड की तरह खुद को दोहराने लगा। उन्होंने पाया कि पुराने ब्लॉक्स को बिल्कुल वैसा ही रखना जैसा वे थे, सफलता का रहस्य था।
- केवल अंग्रेजी न पढ़ें: जब उन्होंने मुख्य रूप से अंग्रेजी टेक्स्ट का उपयोग करके रोबोट को नए ब्लॉक्स सिखाने की कोशिश की, तो रोबोट बहुविकल्पीय प्रश्नों के उत्तर देने में तो अच्छा हो गया लेकिन वास्तव में वाक्य लिखने में खराब हो गया। वह सही उत्तर चुन सकता था लेकिन कहानी नहीं सुना सकता था। उन्होंने सीखा कि उसे स्वस्थ रखने के लिए उसे कई भाषाओं का संतुलित आहार देना आवश्यक है।
निचोड़
यह शोध पत्र दिखाता है कि नई भाषा बोलने के लिए आपको हमेशा एक नया रोबोट बनाने की आवश्यकता नहीं होती है। यदि आप वह व्यक्ति हैं जिसने रोबोट बनाया है, तो आप उसके जीवन के बीच में ही उसकी शब्दावली को अपग्रेड कर सकते हैं। सावधानीपूर्वक नए उपकरण जोड़कर और उन्हें सही "औसत" अर्थ देकर, आप रोबोट को तेज़ और अधिक कुशल बना सकते हैं, बिना उसके मौजूदा कौशल को खोए। यह आपकी जेब में मौजूद डिवाइस पर AI को अधिक समावेशी और तेज़ बनाने का एक व्यावहारिक नुस्खा है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।