← नवीनतम पेपर
🤖 AI

An Evaluation of Context Length Extrapolation in Long Code via Positional Embeddings and Efficient Attention

यह शोध पत्र लॉन्ग कोड कंप्लीशन कार्यों में लार्ज लैंग्वेज मॉडल्स की फिक्स्ड कॉन्टेक्स्ट लेंथ सीमाओं को दूर करने के लिए पोजीशनल एम्बेडिंग्स और एफिशिएंट अटेंशन मैकेनिज्म्स से जुड़े ज़ीरो-शॉट, इन्फरेंस-ओनली तरीकों का मूल्यांकन करता है।

मूल लेखक: Madhusudan Ghosh, Rishabh Gupta

प्रकाशित 2026-02-26
📖 6 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Madhusudan Ghosh, Rishabh Gupta

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

कल्पना कीजिए कि आपके पास एक शानदार, अत्यंत बुद्धिमान रोबोट सहायक (एक लार्ज लैंग्वेज मॉडल) है जो कंप्यूटर कोड लिखने में विशेषज्ञ है। आप उससे कोड की एक पंक्ति पूरी करने के लिए कहते हैं, और वह बहुत अच्छा काम करता है। लेकिन क्या होता है जब आप उसे सिर्फ एक पैराग्राफ के बजाय एक पूरा कोड का उपन्यास लिखने के लिए कहते हैं?

यही वह समस्या है जिसे यह शोध पत्र (paper) संबोधित करता है। रोबोट को छोटी कहानियाँ पढ़ने के लिए प्रशिक्षित किया गया था, लेकिन अब हम उससे एक पूरी लाइब्रेरी लिखने के लिए कह रहे हैं। जब कहानी बहुत लंबी हो जाती है, तो रोबोट भ्रमित हो जाता है, शुरुआत को भूल जाता है, या बेतुकी बातें (nonsense) बनाने लगता है। इसे "कॉन्टेक्स्ट लेंथ" (Context Length) की समस्या कहा जाता है।

इस शोध पत्र के लेखकों ने पूछा: क्या हम इस रोबोट को बिना शून्य से फिर से प्रशिक्षित किए (जो महंगा और धीमा है) लंबे कोड को संभालने के योग्य बना सकते हैं? उन्होंने रोबोट को चीजों को बेहतर ढंग से याद रखने में मदद करने के लिए दो मुख्य "जुगाड़" (hacks) का परीक्षण किया।

यहाँ उनके निष्कर्षों का सरल उपमाओं (analogies) के साथ विवरण दिया गया है:

दो मुख्य रणनीतियाँ

शोधकर्ताओं ने रोबोट को लंबे अनुक्रमों (sequences) को संभालने में मदद करने के दो अलग-अलग तरीके आजमाए:

1. "जीपीएस" रणनीति (पोजीशनल एम्बेडिंग्स)

समस्या: कल्पना कीजिए कि रोबोट एक किताब पढ़ रहा है, लेकिन पन्नों पर नंबर नहीं हैं। यदि किताब छोटी है, तो कोई बात नहीं। लेकिन यदि किताब 10,000 पन्नों लंबी है, तो रोबोट खो जाएगा। उसे नहीं पता कि वह पेज 5 पर है या पेज 5,000 पर।
समाधान (RoPE और ReRoPE): शोधकर्ताओं ने रोबोट को एक बेहतर "जीपीएस" देने की कोशिश की।

  • मानक जीपीएस (RoPE): रोबोट को बताता है कि वह ठीक कहाँ है।
  • स्मार्ट जीपीएस (ReRoPE): यह मुख्य आकर्षण है। यह एक ऐसे जीपीएस की तरह है जो कहता है, "मुझे पता है कि हम शुरुआत से बहुत दूर हैं, लेकिन चलिए हमने जो आखिरी कुछ पन्ने पढ़े हैं उन पर ध्यान केंद्रित करते हैं, और बाकी का अनुमान पैटर्न के आधार पर लगाते हैं।"
  • परिणाम: यह तरीका कोड के ढांचे (structure) को बरकरार रखने में बहुत अच्छा था। इसने "कहानी के प्रवाह" और पदानुक्रम (hierarchy) को याद रखा (जैसे यह जानना कि एक फंक्शन किस क्लास के अंदर आता है)। इसने ऐसा कोड तैयार किया जो सही दिखता और महसूस होता था, भले ही वह अक्षर-दर-अक्षर सटीक मिलान न हो।

2. "फ्लैश मेमोरी" रणनीति (कुशल अटेंशन)

समस्या: 10,000 पन्नों की किताब पढ़ने के लिए भारी मात्रा में मेमोरी की आवश्यकता होती है। रोबोट का मस्तिष्क (GPU) हर एक शब्द को एक साथ अपने दिमाग में रखने की कोशिश में जगह खत्म कर देता है।
समाधान (Paged Attention, Flash Attention): यह एक लाइब्रेरी कार्ड सिस्टम का उपयोग करने जैसा है। पूरी किताब को अपने दिमाग में रखने के बजाय, आप केवल वर्तमान पेज और पहले कुछ पेजों को अपने मन में रखते हैं। यदि आपको पेज 5,000 देखने की आवश्यकता है, तो आप जल्दी से उस पर जाते हैं, उसे पढ़ते हैं, और उसे वापस रख देते हैं।

  • परिणाम: यह तरीका अविश्वसनीय रूप से तेज़ था और सटीक मिलान (exact matches) के लिए अच्छा था। यदि रोबोट को किसी विशिष्ट लाइन को बिल्कुल सही तरह से कॉपी करने की आवश्यकता थी, तो यह तरीका सबसे अच्छा था। हालाँकि, यह अक्सर "बड़ी तस्वीर" (big picture) को भूल जाता था। यह शब्दों को तो सही कर सकता था लेकिन तर्क या संरचना को बिगाड़ सकता था क्योंकि यह तत्काल पेज पर बहुत अधिक केंद्रित था।

बड़ा मुकाबला: संरचना बनाम पूर्णता

शोधपत्र ने इन तरीकों की तुलना तीन प्रकार के कोड पर की: Python (लचीला, जैसे एक अनौपचारिक बातचीत), C#, और Java (कठोर, जैसे एक औपचारिक कानूनी अनुबंध)।

  • "संरचना" का विजेता (ReRoPE): जब लक्ष्य ऐसा कोड लिखना था जो तार्किक रूप से समझ में आए और भाषा के नियमों का पालन करे, तो "स्मार्ट जीपीएस" (ReRoPE) जीत गया। इसने कोड को व्यवस्थित रखा।
  • "पूर्णता" का विजेता (Paged Attention): जब लक्ष्य किसी विशिष्ट स्निपेट को बिल्कुल सटीक रूप से कॉपी करना था, तो "लाइब्रेरी कार्ड" विधि (Paged Attention) जीत गई। इसने अक्सर सटीक वर्णों (characters) को सही प्राप्त किया।

पेंच (The Catch):

  • Paged Attention एक फोटोकॉपी मशीन की तरह था: यह एक पेज को पूरी तरह से कॉपी कर सकता था, लेकिन यह कहानी को नहीं समझता था।
  • ReRoPE एक कुशल संपादक की तरह था: इसने कहानी को समझा और अध्यायों को क्रम में रखा, लेकिन यह यहाँ-वहाँ कुछ शब्द बदल सकता था।

भाषा का अंतर

शोधकर्ताओं ने पाया कि प्रोग्रामिंग भाषा का प्रकार मायने रखता था:

  • Python रोबोट के लिए संभालना आसान था क्योंकि यह लचीला है। यह एक कविता लिखने जैसा है; आपके पास अधिक स्वतंत्रता है।
  • Java और C# कठिन थे क्योंकि वे बहुत सख्त हैं। यह एक कानूनी अनुबंध लिखने जैसा है; यदि आप एक सेमीकोलन भी छोड़ देते हैं, तो सब कुछ टूट जाता है। रोबोट इन लंबे, सख्त अनुक्रमों के साथ अधिक संघर्ष करता है।

"स्कोरकार्ड" की समस्या

लेखकों ने यह भी बताया कि हम रोबोट को कैसे ग्रेड देते हैं इसमें एक खामी है।

  • एक्जेक्ट मैच (EM): यह एक ऐसे शिक्षक की तरह है जो टेस्ट को इस तरह ग्रेड करता है जहाँ यदि आप एक अक्षर भी चूक जाते हैं, तो आपको शून्य अंक मिलते हैं, भले ही उत्तर सही हो। कोड के लिए यह बहुत कठोर है।
  • एडिट सिमिलरिटी (Edit Sim): यह बेहतर है। यह जाँचता है कि कोड उत्तर के कितना समान है।
  • लापता कड़ी: लेखक तर्क देते हैं कि हमें ग्रेड करने का एक नया तरीका चाहिए। हमें केवल यह नहीं देखना चाहिए कि कोड कैसा दिखता है; हमें यह देखना चाहिए कि कोड वास्तव में काम करता है या नहीं (क्या यह कंपाइल होता है? क्या यह टेस्ट पास करता है?)। वर्तमान में, एक रोबोट ऐसा कोड लिख सकता है जो दिखने में तो सही है लेकिन प्रोग्राम को क्रैश कर देता है, और हमारे वर्तमान परीक्षण इसे पकड़ नहीं पाएंगे।

निष्कर्ष

यदि आप चाहते हैं कि एक रोबोट बिना पुन: प्रशिक्षित हुए लंबा, जटिल कोड लिखे:

  1. ReRoPE का उपयोग करें यदि आप परवाह करते हैं कि कोड तार्किक रूप से सही हो और अपनी संरचना बनाए रखे।
  2. Paged Attention का उपयोग करें यदि आपको गति और सटीक वर्ण प्रतिलिपि (character copying) की आवश्यकता है।
  3. भविset लक्ष्य: लेखकों को उम्मीद है कि वे इन दोनों तरीकों को मिलाकर दोनों का सर्वश्रेष्ठ परिणाम प्राप्त करेंगे: ऐसा कोड जो संरचनात्मक रूप से भी सुदृढ़ हो और पूरी तरह से सटीक भी।

संक्षेप में, यह शोध पत्र इस बारे में एक मार्गदर्शिका है कि कैसे हमारे AI सहायकों को कंप्यूटर कोड की "लंबी किताबें" पढ़ने में मदद की जाए ताकि वे अपना मानसिक संतुलन न खोएं, और यह सुझाव देता है कि हमें उनके होमवर्क को ग्रेड करने के बेहतर तरीके चाहिए।

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →