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

Helping LLMs Improve Code Generation Using Feedback from Testing and Static Analysis

यह शोध पत्र एक ऐसे ढांचे को प्रस्तुत करता है जो ओपन-सोर्स एलएलएम (LLMs) के आत्म-सुधार को निर्देशित करने के लिए परीक्षण और स्टैटिक एनालिसिस फीडबैक का उपयोग करता है, जिससे यह पता चलता है कि हालांकि ये मॉडल सुरक्षित कोड उत्पन्न करने या अपनी त्रुटियों का पता लगाने में संघर्ष करते हैं, फिर भी वे विशिष्ट डायग्नोस्टिक फीडबैक दिए जाने पर खामियों को सुधारने की महत्वपूर्ण क्षमता प्रदर्शित करते हैं।

मूल लेखक: Greta Dolcetti, Vincenzo Arceri, Eleonora Iotti, Sergio Maffeis, Agostino Cortesi, Enea Zaffanella

प्रकाशित 2026-03-16
📖 5 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Greta Dolcetti, Vincenzo Arceri, Eleonora Iotti, Sergio Maffeis, Agostino Cortesi, Enea Zaffanella

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

कल्पना कीजिए कि आपके पास अविश्वसनीय रूप से प्रतिभाशाली, तेज़ बोलने वाले प्रशिक्षु (apprentices) की एक टीम है। वे बिजली की गति से कंप्यूटर कोड (वे निर्देश जो सॉफ़्टवेयर को चलाने के लिए बनाते हैं) लिख सकते हैं। ये प्रशिक्षु लार्ज लैंग्वेज मॉडल्स (LLMs) हैं। वे पैटर्न सीखने और जो कुछ भी उन्होंने पहले देखा है उसकी नकल करने में माहिर हैं, लेकिन वे मूर्खतापूर्ण गलतियाँ करने के भी आदी होते हैं, बिल्कुल वैसे ही जैसे कोई इंसान नया काम सीख रहा हो।

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

यहाँ उनके प्रयोग की कहानी है, जिसे सरल चरणों में विभाजित किया गया है:

1. सेटअप: "कोड फैक्ट्री"

शोधकर्ताओं ने चार अलग-अलग AI मॉडल्स (सोचिए कि वे चार अलग-अलग प्रशिक्षु हैं: Llama 3, Gemma, और Mixtral) को 100 सरल प्रोग्रामिंग पहेलियों की एक सूची दी। उन्होंने AI से इन पहेलियों को हल करने के लिए C कोड (एक सख्त, पुराना प्रोग्रामिंग भाषा) लिखने के लिए कहा।

  • समस्या: AI एक ऐसे शेफ की तरह है जिसे खाना बनाते समय बातें करना बहुत पसंद है। कभी-कभी, वह रेसिपी तो लिख देता है लेकिन नमक डालना भूल जाता है, या वह ऐसी रेसिपी लिख देता है जो सुनने में तो अच्छी लगती है लेकिन वास्तव में रसोई को जला सकती है।
  • परिणाम: जब AI ने कोड लिखा, तो केवल आधे कोड ही वास्तव में सही ढंग से काम कर पाए। बाकी में बग्स (त्रुटियाँ) थे या वे चल भी नहीं पा रहे थे।

2. सुरक्षा निरीक्षक: "स्टैटिक एनालिसिस टूल"

इसके बाद, शोधकर्ताओं ने केवल कोड को चलाया ही नहीं; उन्होंने एक बहुत ही सख्त सुरक्षा निरीक्षक नियुक्त किया जिसका नाम Infer है। यह निरीक्षक कोड को चलाता नहीं है; बल्कि यह ब्लूप्रिंट (नक्शे) को पढ़ता है ताकि छिपे हुए खतरों जैसे मेमोरी लीक (गैस चालू छोड़ देना) या बफर ओवरफ्लो (एक पिंट के आकार के कप में एक गैलन पानी डालने की कोशिश करना) का पता लगाया जा सके।

  • निष्कर्ष: निरीक्षक ने पाया कि हालांकि कोड हमेशा खतरनाक नहीं था, लेकिन इसमें सुरक्षा संबंधी खामियां थीं। लगभग 90% कोड ने सुरक्षा जांच पास कर ली, लेकिन वास्तविक दुनिया में जहाँ एक गलती भी सिस्टम को क्रैश कर सकती है, वहां 10% की विफलता दर बहुत बड़ी है।

3. आत्म-चिंतन: "क्या आप जानते हैं कि आप गलत हैं?"

यह सबसे दिलचस्प हिस्सा है। शोधकर्ताओं ने AI से पूछा: "हे, अपने द्वारा लिखे गए कोड को देखो। क्या यह सही है? क्या यह सुरक्षित है?"

  • वास्तविकता की जाँच: AI इसमें बहुत खराब था। यह एक छात्र को उत्तर कुंजी देखे बिना अपना होमवर्क खुद ग्रेड करने के लिए कहने जैसा था।
    • कुछ AI अति-आत्मविश्वासी थे, कहते थे "हाँ, यह एकदम सही है!" भले ही वह टूटा हुआ था।
    • अन्य अत्यधिक निराशावादी थे, कहते थे "नहीं, यह टूटा हुआ है!" भले ही वह काम कर रहा था।
    • सबक: AI में "आत्म-जागरूकता" बहुत कम है। वे यह नहीं बता सकते कि उन्होंने गलती की है या नहीं।

4. मरम्मत की दुकान: "क्या आप इसे ठीक कर सकते हैं?"

अंत में, शोधकर्ताओं ने AI को दूसरा मौका दिया। उन्होंने AI को टूटा हुआ कोड दिखाया और कहा, "यहाँ ठीक वही गलत है जो गलत है: कोड यहाँ क्रैश हुआ, और इस सुरक्षा निरीक्षक ने यहाँ एक छेद पाया। कृपया इसे ठीक करें।"

  • परिणाम: यहीं पर जादू हुआ। जब AI को विशिष्ट फीडबैक दिया गया (जैसे एक शिक्षक द्वारा सटीक त्रुटि की ओर इशारा करना), तो वह एक मरम्मत विशेषज्ञ बन गया।
    • टूटे हुए लॉजिक को ठीक करने के लिए, सबसे अच्छे AI ने लगभग 62% त्रुटियों को ठीक किया।
    • सुरक्षा खामियों को ठीक करने के लिए, सबसे अच्छे AI ने पूरे 89% कमजोरियों को ठीक कर दिया।

बड़ा निष्कर्ष (उपमा)

इन AI मॉडल्स को प्रतिभाशाली लेकिन लापरवाह इंटर्न की तरह समझें।

  1. निर्माण (Generation): यदि आप बस उन्हें कहें "मेरे लिए एक पुल बनाओ," तो वे शायद एक ऐसा पुल बनाएंगे जो दिखने में शानदार होगा लेकिन कार के नीचे आते ही ढह जाएगा। वे विचार को समझते हैं, लेकिन विवरण अक्सर गलत होते हैं।
  2. आत्म-मूल्यांकन (Self-Evaluation): यदि आप उनसे पूछें, "क्या यह पुल सुरक्षित है?", तो वे आत्मविश्वास से कहेंगे "हाँ!" भले ही वह गिरने ही वाला हो। वे यह नहीं जानते कि वे क्या नहीं जानते।
  3. मरम्मत (Repair): हालाँकि, यदि आप उन्हें एक ब्लूप्रिंट थमाते हैं जिस पर लाल मार्कर से लिखा है, "यहाँ सपोर्ट बीम बहुत पतली है," तो वे आमतौर पर इसे पूरी तरह से ठीक कर सकते हैं।

यह क्यों मायने रखता है

शोध पत्र यह निष्कर्ष निकालता है कि हमें केवल AI पर कोड लिखने और चले जाने के लिए भरोसा नहीं करना चाहिए। हमें एक मानव-इन-द-लूप (human-in-the-loop) या एक स्वचालित सुरक्षा निरीक्षक (जैसे कि उन्होंने उपयोग किया गया टूल) की आवश्यकता है जो गलतियों को पकड़ सके।

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

संक्षेप में: AI कोड लिखने में बहुत अच्छा है, यह जानने में बहुत बुरा है कि वह कब गलत है, लेकिन जब आप उन्हें ठीक से बताते हैं कि क्या गलत है, तो वे चीजों को ठीक करने में उत्कृष्ट हैं।

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

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

Digest आज़माएँ →