Bridging Generation and Training: A Systematic Review of Quality Issues in LLMs for Code
यह शोध पत्र 114 अध्ययनों की एक व्यवस्थित समीक्षा प्रस्तुत करता है ताकि एलएलएम (LLMs) में दोषपूर्ण कोड जनरेशन से जुड़े प्रशिक्षण डेटा गुणवत्ता संबंधी मुद्दों के लिए एक एकीकृत वर्गीकरण और कारण ढांचा स्थापित किया जा सके, साथ ही शमन तकनीकों को संश्लेषित किया जा सके और विश्वसनीय कोड मॉडल के लिए सक्रिय, डेटा-केंद्रित शासन की ओर एक प्रतिमान बदलाव की रूपरेखा तैयार की जा सके।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक बहुत ही प्रतिभाशाली लेकिन बहुत ही शाब्दिक (literal) छात्र को कंप्यूटर कोड लिखना सिखाने की कोशिश कर रहे हैं। आप उसे अध्ययन करने के लिए किताबों का एक विशाल पुस्तकालय (प्रशिक्षण डेटा/training data) देते हैं। छात्र सब कुछ पढ़ता है, पैटर्न याद करता है, और फिर अपने आप नया कोड लिखने की कोशिश करता है।
यह शोध पत्र इस बात की एक व्यापक जांच है कि वह छात्र कभी-कभी गलत, असुरक्षित या बस पूरी तरह से गलत कोड क्यों लिखता है। लेखकों ने, जो शोधकर्ताओं की एक टीम है, 114 अलग-अलग अध्ययनों का विश्लेषण किया ताकि एक सरल लेकिन महत्वपूर्ण प्रश्न का उत्तर दिया जा सके: क्या छात्र का खराब लेखन उसकी अपनी गलती है, या यह इसलिए है क्योंकि जिन किताबों का उसने अध्ययन किया था वे गलतियों से भरी थीं?
उनका निष्कर्ष चौंकाने वाला है: यह ज्यादातर किताबों की वजह से है।
यहाँ उनके निष्कर्षों का विवरण दिया गया, जिसे सरल उपमाओं (analogies) के माध्यम से समझाया गया है:
1. "कचरा अंदर, कचरा बाहर" (Garbage In, Garbage Out) की वास्तविकता
यह पत्र तर्क देता है कि जब एक AI (लार्ज लैंग्वेज मॉडल) खराब कोड बनाता है, तो यह शायद इसलिए नहीं होता क्योंकि AI "सोच" नहीं पा रहा है। इसके बजाय, यह इसलिए होता है क्योंकि AI केवल उसी को कॉपी कर रहा है जो उसने अपने प्रशिक्षण डेटा में देखा है।
- उपमा: कल्पना कीजिए कि आप एक कुकबुक (पाक कला की पुस्तक) पढ़कर खाना बनाना सीख रहे हैं। यदि कुकबुक में एक रेसिपी लिखी है कि "सूप में एक कप नमक डालें," और आप उसका पालन करते हैं, तो आपका सूप खाने लायक नहीं होगा। आपने गलती नहीं की; किताब ने की।
- पेपर का दावा: AI एक "कुकबुक" (प्रशिक्षण डेटा) से सीखता है जिसमें इंटरनेट से लिए गए कोड की लाखों लाइनें होती हैं। यदि उस इंटरनेट कोड में सुरक्षा खामियां, पुराने निर्देश या टाइपो (लिखने की गलतियाँ) हैं, तो AI उन गलतियों को ऐसे सीख लेगा जैसे कि वे करने का सही तरीका हों।
2. "खराब किताबों" के दो प्रकार
शोधकर्ताओं ने प्रशिक्षण डेटा में समस्याओं को दो मुख्य श्रेणियों में व्यवस्थित किया है:
- "खराब रेसिपी" वाली समस्याएँ (कोड एट्रिब्यूट्स): ये कोड स्निपेट्स के भीतर ही विशिष्ट गलतियाँ हैं।
- उदाहरण: एक रेसिपी जिसमें एक ऐसे टूल का उपयोग किया गया है जो 10 साल पहले प्रतिबंधित कर दिया गया था। AI उस प्रतिबंधित टूल का उपयोग करना सीख जाता है क्योंकि उसने उसे किताब में देखा था।
- उदाहरण: एक रेसिपी जिसमें चिकन धोना भूल जाते हैं, जिससे बीमार करने वाला भोजन बनता है (एक सुरक्षा भेद्यता/security vulnerability)।
- "खराब लाइब्रेरी" वाली समस्याएँ (गैर-कोड एट्रिब्यूट्स): ये केवल व्यक्तिगत रेसिपी की नहीं, बल्कि पूरी लाइब्रेरी की समस्याएं हैं।
- उदाहरण: लाइब्रेरी में एक ही उबाऊ रेसिपी की 1,000 प्रतियां हैं लेकिन एक जटिल, स्वस्थ व्यंजन की केवल एक प्रति है। AI उबाऊ व्यंजन में विशेषज्ञ बन जाता है लेकिन जटिल व्यंजन बनाने में पूरी तरह विफल हो जाता है।
- उदाहरण: लाइब्रेरी रैंडम बड़बड़ाहट या विज्ञापनों (शोर/noise) से भरी हुई है जो छात्र को वास्तविक खाना बनाना सीखने से भटका देती है।
3. गलतियाँ कैसे यात्रा करती हैं (द पाइपलाइन)
यह पेपर मानचित्रित करता है कि "किताब" में एक गलती कैसे "अंतिम व्यंजन" में बदल जाती है। उन्होंने पाया कि ऐसा होने के 18 अलग-अलग तरीके हैं, जिन्हें वे दो पथों में वर्गीकृत करते हैं:
- सीधी नकल (Direct Mappings): AI एक विशिष्ट खराब पैटर्न देखता है और उसे दोहराता है।
- उपमा: छात्र किताब में एक टाइपो देखता है और अपने निबंध में भी वही टाइपो लिख देता है।
- वास्तविक दुनिया का परिणाम: AI एक पुराना (deprecated) कंप्यूटर कमांड उपयोग करता है जो अब काम नहीं करता, जिससे प्रोग्राम क्रैश हो जाता है।
- विकृत सीखना (Indirect Mappings): AI चीजों का गलत संतुलन सीख जाता है क्योंकि लाइब्रेरी असंतुलित थी।
- उपमा: क्योंकि लाइब्रेरी में "टोस्ट जलाना" की 99% रेसिपी और "ब्रेड बनाना" की केवल 1% रेसिपी थी, इसलिए AI सोचता है कि टोस्ट जलाना ही खाना पकाने का एकमात्र तरीका है। उसे अच्छी ब्रेड बनाना नहीं आता क्योंकि उसने पर्याप्त उदाहरण नहीं देखे।
- वास्तविक दुनिया का परिणाम: AI सरल पायथन कोड लिखने में बहुत अच्छा है लेकिन अन्य भाषाओं या जटिल कार्यों के लिए कोड लिखने में बहुत खराब है क्योंकि प्रशिक्षण डेटा असंतुलित था।
4. वर्तमान समाधान बनाम बेहतर समाधान
यह पेपर बताता है कि अधिकांश कंपनियां वर्तमान में इस समस्या को तब ठीक करने की कोशिश कर रही हैं जब AI कोड लिख चुका होता है। वे एक खाद्य निरीक्षक (food inspector) की तरह कार्य करते हैं जो अंत में सूप को चखता है और कहता है, "यह बहुत नमकीन है, इसे फेंक दो।"
- समस्या: यह धीमा, महंगा और प्रतिक्रियात्मक (reactive) है। आप लगातार खराब सूप फेंकते रहते हैं।
- पेपर की सिफारिश: हमें छात्र के अध्ययन शुरू करने से पहले लाइब्रेरियन और संपादक बनने की आवश्यकता है।
- अंत में खराब सूप को छानने के बजाय, हमें लाइब्रेरी में जाना चाहिए, खराब रेसिपी को हटाना चाहिए, टाइपो को ठीक करना चाहिए और यह सुनिश्चित करना चाहिए कि विभिन्न प्रकार के व्यंजनों का एक अच्छा मिश्रण हो।
- लेखक इसे "प्रतिक्रियात्मक फ़िल्टरिंग" (reactive filtering) से "सक्रिय डेटा गवर्नेंस" (proactive data governance) की ओर बदलाव कहते हैं।
5. क्या अभी भी कठिन है?
इस नई समझ के बावजूद, पेपर स्वीकार करता है कि बड़ी बाधाएं मौजूद हैं:
- "लीकी" (Leaky) लाइब्रेरी: कभी-कभी "किताबें" जिनका अध्ययन AI करता है, उनमें उन परीक्षाओं के उत्तर होते हैं जो वह बाद में देगा। यह AI को वास्तव में स्मार्ट दिखने के लिए मजबूर करता है क्योंकि उसने बस उत्तरों को रट लिया है।
- "ब्लैक बॉक्स" लाइब्रेरी: हम अक्सर यह नहीं जानते कि सबसे लोकप्रिय AI को प्रशिक्षित करने के लिए किन किताबों का उपयोग किया गया था। स्रोत को जाने बिना, यह पता लगाना कठिन है कि एक विशिष्ट गलती क्यों हुई।
- बदलता लक्ष्य: सॉफ्टवेयर की दुनिया तेजी से बदलती है। आज की एक "अच्छी" रेसिपी कल की "खराब" रेसिपी हो सकती है क्योंकि तकनीक अपडेट होती रहती है। लाइब्रेरी को लगातार अपडेट करने की आवश्यकता होती है, जो बहुत कठिन है।
सारांश
पेपर निष्कर्ष निकालता है कि AI से विश्वसनीय कोड प्राप्त करने के लिए, हम केवल AI को दोष नहीं दे सकते या उसके आउटपुट को बाद में ठीक करने की कोशिश नहीं कर सकते। हमें स्रोत सामग्री को ठीक करना होगा। यदि हम चाहते हैं कि AI सटीक कोड लिखे, तो हमें पहले यह सुनिश्चित करना होगा कि वह "लाइब्रेरी" जिससे उसने सीखा है, वह स्वच्छ, संतुलित और अद्यतित (up-to-date) है। आउटपुट की गुणवत्ता इनपुट की गुणवत्ता का सीधा प्रतिबिंब है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।