← नवीनतम पेपर
💻 computer science

Evaluating LLMs on Java Code Snippet Adaptation Using a Mutation-Injection Framework

यह शोध पत्र निर्देश-मुक्त जावा कोड स्निपेट अनुकूलन (instruction-free Java code snippet adaptation) पर लार्ज लैंग्वेज मॉडल्स का मूल्यांकन करने के लिए एक म्यूटेशन-इंजेक्शन फ्रेमवर्क प्रस्तावित करता है, जो एक उच्च टेस्ट कवरेज वाले ओपन-सोर्स रिपॉजिटरी से प्राप्त डेटासेट का उपयोग करते हुए विभिन्न अनुकूलन प्रकारों, जटिलता स्तरों और संदर्भ सूक्ष्मता (context granularities) के माध्यम से प्रदर्शन में होने वाले बदलावों की जांच करता है।

मूल लेखक: Ali Aman, Muhammad Asaduzzaman, Shaowei Wang, Chanchal K. Roy

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

मूल लेखक: Ali Aman, Muhammad Asaduzzaman, Shaowei Wang, Chanchal K. Roy

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

कल्पना कीजिए कि आप एक शेफ हैं जिसे एक पुरानी कुकबुक में "स्पैगेटी कार्बोनारा" की एक स्वादिष्ट रेसिपी मिलती है। आप इसे अपने दोस्तों के लिए बनाना चाहते हैं, लेकिन एक समस्या है: आपके दोस्त अंडे से एलर्जी (allergy) से पीड़ित हैं, और आपके पास केवल एक छोटा सा बर्तन है, कोई बड़ा बर्तन नहीं। आप रेसिपी की हूबहू नकल नहीं कर सकते; आपको इसे अनुकूलित (adapt) करना होगा। आपको अंडों को किसी और चीज़ से बदलना होगा, पकाने का समय बदलना होगा, और शायद कोई स्टेप छोड़ना होगा।

कंप्यूटर प्रोग्रामिंग की दुनिया में, डेवलपर्स बिल्कुल यही करते हैं। वे किसी दूसरे के लिए काम करने वाला कोड का एक टुकड़ा (एक "स्निपेट") ढूंढते हैं, उसे कॉपी करते हैं, और फिर उसे अपने प्रोजेक्ट के अनुसार ढालने के लिए उसमें बदलाव करते हैं।

यह पेपर यह परीक्षण करने की एक योजना है कि आर्टिफिशियल इंटेलिजेंस (AI) इस "रेसिपी अनुकूलन" (recipe adaptation) के काम को बिना यह बताए कि क्या बदलना है, कितनी अच्छी तरह से कर सकता है।

यहाँ इस पेपर की योजना को सरल उपमाओं (analogies) का उपयोग करके समझाया गया है:

1. समस्या: "साइलेंट शेफ" टेस्ट

वर्तमान में, जब हम AI से कोड ठीक करने के लिए कहते हैं, तो हम आमतौर पर उसे निर्देशों की एक बहुत विशिष्ट सूची देते हैं, जैसे: "वेरिएबल का नाम 'x' से बदलकर 'y' कर दें और लाइब्रेरी बदल दें।"

लेकिन वास्तविक दुनिया में, डेवलपर्स सूचियाँ नहीं लिखते। वे बस कहते हैं, "यहाँ वह कोड है जिसे मैंने कॉपी किया है; इसे मेरे नए प्रोजेक्ट में काम करने लायक बना दो।" AI को उस कोड और नए वातावरण (environment) को खुद देखना होगा और बदलावों को खुद समझना होगा। लेखक यह जानना चाहते हैं: क्या AI बिना किसी स्टेप-बाय-स्टेप मैनुअल के बदलावों को समझ सकता है?

2. समाधान: "म्यूटेशन मशीन"

इसे निष्पक्ष रूप से टेस्ट करने के लिए, लेखक इंटरनेट से रैंडम कोड का उपयोग नहीं कर सकते क्योंकि उन्हें यह नहीं पता होगा कि AI को वास्तव में क्या बदलाव करने चाहिए थे।

इसके बजाय, वे एक "म्यूटेशन मशीन" (एक फ्रेमवर्क जिसे वे Mutation-Injection कहते हैं) बना रहे हैं। यह इस प्रकार काम करता है:

  • चरण 1: वे एक आदर्श, काम करने वाले कोड के टुकड़े से शुरू करते हैं जिसे पहले ही टेस्ट किया जा चुका है (जैसे एक परफेक्ट रेसिपी)।
  • चरण 2: वे एक रोबोट का उपयोग करके जानबूझकर कोड को विशिष्ट, नियंत्रित तरीकों से "खराब" या "बनाना" करते हैं। उदाहरण के लिए, वे एक वेरिएबल का नाम बदल सकते हैं, एक नंबर बदल सकते हैं, या एक टूल को दूसरे से बदल सकते हैं।
  • चरण 3: वे इस "खराब" कोड को AI को देते हैं और कहते हैं, "इसे ठीक करो ताकि यह फिर से काम करने लगे।"
  • चरण 4: यदि AI इसे ठीक कर देता है और कोड अपने सभी टेस्ट पास कर लेता है, तो AI को एक पॉइंट मिलता है।

क्योंकि उन्होंने ये "खराबी" (breaks) खुद बनाई हैं, इसलिए उन्हें ठीक-ठीक पता है कि AI को क्या करना चाहिए था। यह एक शिक्षक की तरह है जो गणित का एक सवाल लिखता है जिसमें एक ज्ञात गलती होती है, उसे छात्र को देता है, और फिर चेक करता है कि क्या छात्र ने उस विशिष्ट गलती को ढूँढा और ठीक किया।

3. तीन बड़े सवाल (द "मेन्यू")

शोधकर्ता AI का तीन मुख्य चीजों पर परीक्षण कर रहे हैं:

  • सवाल 1: कौन से "सामग्री" (ingredients) को बदलना सबसे कठिन है?
    कुछ बदलाव आसान होते हैं, जैसे वेरिएबल का नाम बदलना (जैसे "मैदा" को "चीनी" में बदलना)। अन्य कठिन होते हैं, जैसे पूरी खाना पकाने की विधि बदलना (बेकिंग से बदलकर तलना)। वे देखना चाहते हैं कि किस प्रकार के बदलाव AI को सबसे ज्यादा उलझा देते हैं।
  • सवाल 2: क्या यह और कठिन हो जाता है अगर आप एक साथ कई चीजें खराब कर दें?
    यदि AI एक खराब हिस्से को ठीक कर सकता है, तो क्या वह एक साथ तीन खराब हिस्सों को ठीक कर सकता है? वे परीक्षण कर रहे हैं कि क्या कठिनाई रैखिक (linear) रूप से बढ़ती है या क्या AI पूरी तरह से भ्रमित हो जाता है जब कई चीजें गलत होती हैं।
  • सवाल 3: AI को कितने "संदर्भ" (context) की आवश्यकता है?
    कल्पना कीजिए कि आप एक रेसिपी को ठीक कर रहे हैं।
    • परिदृश्य A: आप केवल रेसिपी कार्ड देखते हैं।
    • परिदृश्य B: आप रेसिपी कार्ड और अपनी रसोई की अलमारी (pantry) में मौजूद सामग्री की सूची देखते हैं।
    • परिदृश्य C: आप रेसिपी कार्ड, अलमारी और पूरी रसोई का लेआउट देखते हैं।
      शोधकर्ता जानना चाहते हैं: क्या AI को अच्छा काम करने के लिए पूरी "रसोई" (आस-पास का कोड) देखने की आवश्यकता है, या केवल रेसिपी कार्ड ही काफी है?

4. खेल के नियम

  • भाषा: वे इसके लिए Java का उपयोग कर रहे हैं, जो एक बहुत ही सामान्य प्रोग्रामिंग भाषा है।
  • "कोई मदद नहीं" का नियम: AI को यह नहीं बताया जाने वाला है कि क्या बदलना है। इसे केवल एक सामान्य प्रॉम्प्ट मिलता है: "इस स्निपेट को संदर्भ (context) के अनुसार अनुकूलित करें।"
  • सुरक्षा जाल (Safety Net): वे वास्तविक, ओपन-सोर्स प्रोजेक्ट्स का उपयोग कर रहे हैं जिनमें मजबूत "टेस्ट सूट्स" हैं। इन टेस्ट्स को एक सुरक्षा निरीक्षक (safety inspector) के रूप में समझें। यदि AI कोड को बदलता है और सुरक्षा निरीक्षक कहता है, "यह अभी भी पूरी तरह से काम कर रहा है," तो AI पास हो जाता है।

5. यह क्यों महत्वपूर्ण है

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

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

संक्षेप में: लेखक AI के लिए एक नियंत्रित "बाधा दौड़" (obstacle course) बना रहे हैं ताकि यह देखा जा सके कि AI बिना किसी चीट शीट के, अपने आप खराब कोड को कितनी अच्छी तरह ठीक कर सकता है।

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

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

Digest आज़माएँ →