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

A Multi-Language Perspective on the Robustness of LLM Code Generation

यह शोध पत्र कोड जनरेशन के लिए लार्ज लैंग्वेज मॉडल्स का एक व्यापक बहुभाषी मूल्यांकन प्रस्तुत करता है, जो यह प्रकट करता है कि विभिन्न भाषाओं में विभिन्न प्रॉम्प्ट परिवर्तनों के तहत प्रदर्शन लगातार घटता है, बड़े मॉडल आकार कोई विश्वसनीय मजबूती लाभ प्रदान नहीं करते हैं और LLM-आधारित डॉकस्ट्रिंग रिपेयर केवल मामूली या यहाँ तक कि नकारात्मक लाभ प्रदान करता है।

मूल लेखक: Fazle Rabbi, Zishuo Ding, Jinqiu Yang

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

मूल लेखक: Fazle Rabbi, Zishuo Ding, Jinqiu Yang

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

कल्पना कीजिए कि आपके पास एक शानदार, अति-बुद्धिमान सहायक है जो आपकी हिदायतों को सुनकर कंप्यूटर कोड लिख सकता है। आप उससे कहते हैं, "संख्याओं की एक सूची को सॉर्ट करने के लिए एक फंक्शन लिखें," और वह इसे पूरी तरह से कर देता है। आप आश्वस्त महसूस करते हैं। लेकिन क्या होगा अगर आप एक छोटी सी गलती कर दें? क्या होगा अगर आप गलती से "sort" के बजाय "sortt" टाइप कर दें, या कार्य को "sort a list" के बजाय "arrange numbers in order" के रूप में वर्णित करें?

यह शोध पत्र अनिवार्य रूप से इन AI कोडिंग सहायकों के लिए एक तनाव परीक्षण (stress test) है। शोधकर्ता यह देखना चाहते थे: यह सहायक कितना नाजुक है? क्या एक छोटी सी टाइपिंग की गलती या थोड़ा अलग वाक्य इसे पूरी तरह से तोड़ देता है?

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

1. "एक-भाषा" का जाल (The "One-Language" Trap)

समस्या: पिछले अध्ययनों ने इन AI सहायकों का परीक्षण केवल Python (एक लोकप्रिय, पढ़ने में आसान प्रोग्रामिंग भाषा) पर किया था। यह एक कार को केवल कैलिफोर्निया के चिकने, धूप वाले राजमार्ग पर चलाने के परीक्षण जैसा था और यह मान लेना कि वह कनाडा के बर्फीले पहाड़ या अफ्रीका के धूल भरे रेगिस्तान में भी उसी तरह काम करेगी।
अध्ययन: शोधकर्ताओं ने AI का परीक्षण तीन अलग-अलग "इलाकों" (terrains) पर करने का निर्णय लिया:

  • Java: सख्त और संरचित (जैसे एक औपचारिक बिजनेस सूट)।
  • C++: जटिल और शक्तिशाली लेकिन ट्रिकी (जैसे मैनुअल ट्रांसमिशन वाली एक हाई-परफॉर्मेंस रेस कार)।
  • JavaScript: लचीला और ढीला (जैसे एक आरामदायक हुडी)।

2. "ट्विस्ट" प्रयोग (The "Twist" Experiments - Perturbations)

शोधकर्ताओं ने केवल AI को कोड लिखने के लिए नहीं कहा; उन्होंने यह देखने के लिए कि AI कैसे प्रतिक्रिया देता है, निर्देशों को चार विशिष्ट तरीकों से जानबूझकर बिगाड़ दिया। इसे "टेलीफोन" के खेल की तरह समझें जहाँ संदेश थोड़ा विकृत हो जाता है:

  • "DocString" ट्विस्ट (विवरण): उन्होंने प्राकृतिक भाषा के विवरण को बदल दिया।
    • उदाहरण: "Sort the list" को "Arrange the numbers in order" में बदलना या "sortt the list" जैसा टाइपो जोड़ना।
    • उपमा: एक शेफ को "केक बेक करने" के बजाय "एक केक बेक करने" बनाम "एक मीठा डेज़र्ट बनाने" के लिए कहना।
  • "Function Name" ट्विस्ट: उन्होंने उस फंक्शन का नाम बदल दिया जिसे AI को लिखना था।
    • उदाहरण: calculateTotal को calculateTota1 (नंबर 1 के साथ) या calc_total में बदलना।
    • उपमा: एक दोस्त को "Bob" के बजाय "Rob" या "B0b" कहकर बुलाना।
  • "Syntax" ट्विस्ट: उन्होंने पहले से दिए गए कोड की संरचना को बदल दिया।
    • उदाहरण: एक गणितीय समीकरण में संख्याओं का क्रम बदलना या एक for लूप को while लूप में बदलना।
    • उपमा: एक रेसिपी देना जहाँ आप मात्रा समान रखते हुए सामग्री का क्रम बदल देते हैं।
  • "Format" ट्विस्ट: उन्होंने स्पेसिंग, टैब या लाइन ब्रेक को बदल दिया।
    • उदाहरण: सभी स्पेस हटा देना या स्पेस के बजाय टैब का उपयोग करना।
    • उपमा: शब्दों के बीच बिना स्पेस के एक पत्र लिखना।

3. चौंकाने वाले परिणाम

शोधकर्ताओं ने पाया कि सभी AI मॉडल आश्चर्यजनक रूप से नाजुक थे। यहाँ तक कि सबसे स्मार्ट, बड़े मॉडल (जिन्हें आप एक जीनियस PhD छात्र की तरह मानेंगे) भी थोड़े से बदलाव के साथ काफी विफल रहे।

  • आकार बचाव नहीं करता (Size Doesn't Save You): बड़े मॉडल (अधिक "मस्तिष्क शक्ति" वाले) जरूरी नहीं कि अधिक मजबूत हों। कभी-कभी, बड़े मॉडल छोटे मॉडलों की तुलना में अधिक भंगुर (brittle) होते थे। यह एक विशाल, महंगी रोबोट जैसा है जो एक कंकड़ से टकराकर गिर जाती है, जबकि एक छोटी, साधारण खिलौना कार उसके ऊपर से आसानी से निकल जाती है।
  • भाषा मायने रखती है (Language Matters):
    • Java सबसे लचीला था (मजबूत सेडान)।
    • C++ सबसे नाजुक था (संवेदनशील रेस कार)।
    • JavaScript बीच में कहीं था।
    • मुख्य निष्कर्ष: आप यह मानकर नहीं चल सकते कि AI को कोडिंग में अच्छा माना जाए क्योंकि वह Python में अच्छा है। यह Java या C++ में पूरी तरह विफल हो सकता है।
  • अर्थ बनाम वर्तनी (Meaning vs. Spelling): आश्चर्यजनक रूप से, वाक्य के अर्थ को बदलना (भले ही थोड़ा सा हो) वर्तनी बदलने जितना ही खतरनाक था। AI विशिष्ट कीवर्ड्स और वाक्यांशों पर बहुत अधिक निर्भर करता है।

4. "ठीक करने" का प्रयास (The "Fix-It" Attempt)

शोधकर्ताओं ने एक चालाकी भरा तरीका आजमाया: क्या हम कोडिंग AI के देखने से पहले टूटे हुए निर्देशों को ठीक करने के लिए एक AI का उपयोग कर सकते हैं?

  • विचार: यदि प्रॉम्प्ट में "sortt the list" लिखा है, तो पहले इसे "sort the list" में सुधारने के लिए एक AI का उपयोग करें।
  • परिणाम: यह साधारण टाइपो (जैसे स्पेलिंग की गलती को ठीक करना) के लिए थोड़ा काम आया, लेकिन गहरे बदलावों के लिए यह पूरी तरह विफल रहा। यदि विवरण को फिर से लिखा गया था या अर्थ थोड़ा बदल गया था, तो "फिक्सर" AI मूल इरादे को नहीं समझ सका, और कभी-कभी स्थिति को और खराब कर दिया।
  • उपमा: यदि आप एक अनुवादक को एक वाक्य को ठीक करने के लिए कहते हैं जिसे खराब तरीके से अनुवादित किया गया है, तो वे व्याकरण को ठीक कर सकते हैं, लेकिन उन्हें यह पता नहीं चल सकता कि मूल अर्थ पहले ही खो चुका है।

5. आपको इसकी परवाह क्यों करनी चाहिए?

यह शोध पत्र उन डेवलपर्स और कंपनियों के लिए एक चेतावनी है जो कोड लिखने के लिए AI का उपयोग कर रहे हैं।

  • "पास रेट" पर भरोसा न करें: सिर्फ इसलिए कि एक AI 90% बार टेस्ट पास करता है, इसका मतलब यह नहीं है कि वह विश्वसनीय है। एक छोटी सी टाइपिंग की गलती उस 90% को 10% तक गिरा सकती है।
  • प्रॉम्प्ट्स के साथ सावधान रहें: आपको अपने निर्देशों के प्रति बहुत सटीक होने की आवश्यकता है। यदि आप एक बैंकिंग ऐप (Java) या गेम इंजन (C++) के लिए कोड लिखने के लिए AI का उपयोग कर रहे हैं, तो आप यह मानकर नहीं चल सकते कि यह काम करेगा क्योंकि यह एक Python ट्यूटोरियल पर काम कर गया था।
  • मजबूती एक विशेषता है (Robustness is a Feature): हमें ऐसे AI बनाने की आवश्यकता है जो "अधिक कठिन" हो—जैसे एक बेहतर सस्पेंशन वाली कार जो गड्ढों को झेल सके, न कि केवल चिकने राजमार्गों को।

संक्षेप में: AI कोड जनरेटर अविश्वसनीय रूप से स्मार्ट लेकिन आश्चर्यजनक रूप से संवेदनशील हैं। वे एक हाई-परफॉर्मेंस स्पोर्ट्स कार की तरह हैं जिन्हें एकदम सही ईंधन और एक चिकनी सड़क की आवश्यकता होती है। यदि आप उन्हें थोड़ा अलग निर्देश या एक अलग प्रोग्रामिंग भाषा देते हैं, तो वे रुक सकते हैं। हमें उन्हें जादू की छड़ी की तरह मानना बंद करना होगा और उन्हें उन नाजुक उपकरणों की तरह टेस्ट करना शुरू करना होगा जो वे वर्तमान में हैं।

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

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

Digest आज़माएँ →