← नवीनतम पेपर
💬 NLP

DuET: Dual Execution for Test Output Prediction with Generated Code and Pseudocode

यह शोध पत्र DuET को प्रस्तुत करता है, जो एक दोहरा-निष्पादन ढांचा (dual-execution framework) है जो कार्यात्मक बहुमत मतदान (functional majority voting) के माध्यम से प्रत्यक्ष कोड निष्पादन और LLM-आधारित स्यूडोकोड तर्क (pseudocode reasoning) को जोड़ता है ताकि टेस्ट आउटपुट भविष्यवाणी की विश्वसनीयता में महत्वपूर्ण सुधार किया जा सके और LiveCodeBench पर अत्याधुनिक प्रदर्शन प्राप्त किया जा सके।

मूल लेखक: Hojae Han, Jaejin Kim, Seung-won Hwang, Yu Jin Kim, Moontae Lee

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

मूल लेखक: Hojae Han, Jaejin Kim, Seung-won Hwang, Yu Jin Kim, Moontae Lee

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

यहाँ DUET पेपर का स्पष्टीकरण दिया गया है, जिसे रोज़मर्रा की भाषा में कुछ रचनात्मक उपमाओं (analogies) के साथ अनुवादित किया गया है।

बड़ी समस्या: "विश्वास करें लेकिन जाँच लें" (Trust but Verify) की दुविधा

कल्पना कीजिए कि आप एक मैनेजर हैं जो एक नए ऐप के लिए कोड लिखने हेतु जूनियर डेवलपर्स (AI मॉडल्स) की एक टीम को काम पर रख रहे हैं। आप उन्हें एक समस्या का विवरण देते हैं, और वे उसे हल करने के लिए कोड लिखते हैं।

यह जाँचने के लिए कि क्या उनका कोड काम कर रहा है, आपको यह जानने की आवश्यकता है कि एक विशिष्ट टेस्ट के लिए सही उत्तर क्या होना चाहिए। इसे टेस्ट आउटपुट प्रेडिक्शन (Test Output Prediction) कहा जाता है।

परंपरागत रूप से, इस उत्तर का पता लगाने के दो तरीके रहे हैं, और दोनों में एक घातक दोष है:

  1. "इसे चलाओ" विधि (Direct Execution):

    • यह कैसे काम करती है: आप AI द्वारा लिखे गए कोड को वास्तव में अपने कंप्यूटर पर चलाते हैं।
    • दोष: यदि AI ने एक छोटी सी टाइपिंग मिस्टेक (जैसे एक कॉमा छोड़ देना या गलत वेरिएबल का नाम लिखना) कर दी है, तो पूरा प्रोग्राम क्रैश हो जाएगा। भले ही AI ने लॉजिक को पूरी तरह से समझा हो, एक छोटी सी "इम्प्लीमेंटेशन त्रुटि" परिणाम को खराब कर देती है। यह एक ऐसे शेफ की तरह है जो केक बनाना तो ठीक जानता है, लेकिन केक जला देता है क्योंकि उसने ओवन को 350°F के बजाय 500°F पर सेट कर दिया था।
  2. "मानसिक सिमुलेशन" विधि (LLM-आधारित निष्पादन):

    • यह कैसे काम करती है: कोड को चलाने के बजाय, आप AI से कहते हैं कि वह अपने दिमाग में कोड को "दिखावा" (pretend) करके चलाए और आपको परिणाम बताए।
    • दोष: AI मॉडल लॉजिक में तो बहुत अच्छे होते हैं लेकिन लंबी और विस्तृत गणनाओं में बहुत खराब होते हैं। यदि कोड में एक जटिल लूप (जैसे 1,000 तक गिनती करना) है, तो AI रास्ता भटक सकता है, कोई स्टेप भूल सकता है, या ऐसा नंबर "हैलुसिनेट" (hallucinate) कर सकता है जो सुनने में सही लगे लेकिन वास्तव में गलत हो। यह एक इंसान से बिना कुछ लिखे मन ही मन लंबी भाग (long division) करने के लिए कहने जैसा है; वे शुरुआती कुछ स्टेप्स सही कर सकते हैं लेकिन अंत में चूक सकते हैं।

समाधान: DUET (एक "डबल-चेक" सिस्टम)

इस पेपर के लेखकों ने महसूस किया कि केवल एक विधि पर भरोसा करना जोखिम भरा है। इसलिए, उन्होंने एक ऐसा सिस्टम बनाया जो एक ही समय में दोनों का उपयोग करता है और उन्हें अंतिम उत्तर पर वोट करने देता है।

DUET को एक फैक्ट्री के लिए दो-सदस्यीय गुणवत्ता नियंत्रण (quality control) टीम के रूप में सोचें:

1. "रोबोट" (डायरेक्ट कोड निष्पादन)

यह टीम का सदस्य उत्पन्न कोड को लेता है और उसे एक मशीन पर चलाता है।

  • सुपरपावर: यदि कोड सही ढंग से लिखा गया है, तो रोबोट 100% सटीक होता है। वह कभी थकता नहीं है और न ही गणित से भ्रमित होता है।
  • कमजोरी: यदि कोड में टाइपिंग की गलती है, तो रोबोट तुरंत काम करना बंद कर देता है।

2. "मानव विशेषज्ञ" (LLM-आधारित स्यूडोकोड निष्पादन)

यह सदस्य बिखरे हुए कोड को नहीं देखता। इसके बजाय, वे AI से एक स्यूडोकोड (Pseudocode) (लॉजिक का एक सरल, सामान्य अंग्रेजी सारांश, जैसे कि एक रेसिपी) लिखने को कहते हैं और फिर अपने दिमाग में उन चरणों का "सिमुलेशन" करते हैं।

  • सुपरपावर: क्योंकि वे लॉजिक (रेसिपी) को देख रहे हैं न कि सिंटैक्स (विशिष्ट सामग्री की स्पेलिंग) को, वे टाइपिंग की गलतियों को नज़रअंदाज़ कर देते हैं। यदि कोड में टाइपिंग की गलती थी, तो मानव विशेषज्ञ अभी भी सही उत्तर निकाल सकता है क्योंकि वह इरादे (intent) को समझता है।
  • कमजोरी: यदि कार्य बहुत जटिल है या इसमें बहुत अधिक चरण शामिल हैं, तो मानव विशेषज्ञ भ्रमित हो सकता है और गणित में गलती कर सकता है।

वे एक साथ कैसे काम करते हैं (वोटिंग सिस्टम)

DUET केवल एक को नहीं चुनता; यह दोनों रास्तों को एक साथ चलाता है।

  • परिदृश्य A: कोड में टाइपिंग की गलती है।

    • रोबोट क्रैश हो जाता है और कहता है "Error!"
    • मानव विशेषज्ञ टाइपिंग की गलती को अनदेखा करता है, लॉजिक को पढ़ता है, और कहता है "उत्तर 42 है।"
    • परिणाम: DUET मानव विशेषज्ञ पर भरोसा करता है।
  • परिदृश्य B: लॉजिक अविश्वसनीय रूप से जटिल है (100 स्टेप्स)।

    • मानव विशेषज्ञ गणित में उलझ जाता है और अनुमान लगाता है "43" (एक हैलुसिनेशन)।
    • रोबोट कोड को पूरी तरह से चलाता है और कहता है "42।"
    • परिणाम: DUET रोबोट पर भरोसा करता है।
  • परिदृश्य C: दोनों सहमत हैं।

    • दोनों कहते हैं "42।"
    • परिणाम: DUET 100% आश्वस्त है।

यह क्यों महत्वपूर्ण है ("जीरो-एडवांटेज" की समस्या)

लेखकों ने एक छिपी हुई समस्या की भी खोज की कि हम आमतौर पर AI कोड को कैसे टेस्ट करते हैं।

कल्पना कीजिए कि आप एक AI को गणित की एक समस्या के 10 अलग-अलग समाधान लिखने के लिए कहते हैं। फिर, आप उसी AI से उन समाधानों के उत्तर का अनुमान लगाने के लिए कहते हैं ताकि यह देखा जा सके कि कौन सा सबसे अच्छा है।

  • यदि AI गणित में खराब है, तो वह खराब समाधान उत्पन्न करेगा।
  • फिर, वह उन खराब समाधानों के उत्तरों का अनुमान लगाएगा, और वे अनुमान भी गलत होंगे।
  • जाल (The Trap): AI अनिवार्य रूप से अपने ही होमवर्क को ग्रेड कर रहा है, और यदि वह विषय में खराब है, तो वह एक अच्छे उत्तर और एक बुरे उत्तर के बीच अंतर नहीं बता सकता। इसे "जीरो-एडवांटेज प्रॉब्लम" (Zero-Advantage Problem) कहा जाता है।

DUET इसे ठीक करता है क्योंकि "मानव विशेषज्ञ" (स्यूडोकोड पथ) परीक्षण किए जा रहे विशिष्ट कोड से अलग (decoupled) है। यह समाधान के विचार को देखता है, न कि विशिष्ट कोड स्निपेट को। यह "बुरे" कोड को फ़िल्टर करने की अनुमति देता है भले ही कोड स्वयं बिखरा हुआ या गलत हो।

परिणाम

जब उन्होंने LiveCodeBench नामक एक विशाल बेंचमार्क पर DUET का परीक्षण किया:

  • इसने पिछले सर्वश्रेष्ठ तरीकों को बड़े अंतर से पछाड़ दिया (सटीकता में 13.6% का सुधार)।
  • यह केवल कोड चलाने या केवल उत्तर का अनुमान लगाने की तुलना में बेहतर काम करता है।
  • यह समग्र रूप से बेहतर कोड बनाने में मदद करता है क्योंकि यह "बुरे" उम्मीदवारों को अधिक प्रभावी ढंग से फ़िल्टर कर सकता है।

मुख्य निष्कर्ष (The Takeaway)

DUET एक सुरक्षा जाल (safety net) की तरह है।
यदि आप एक पतली रस्सी (tightrope) पर चलकर नदी पार करने की कोशिश करते हैं (कोड चलाना), तो यदि रस्सी घिसी हुई है तो आप गिर सकते हैं। यदि आप उसके ऊपर से उड़ने की कोशिश करते हैं (दिमाग में सिमुलेशन करना), तो आपको चक्कर आ सकता है और आप गिर सकते हैं।
DUET आपको एक पतली रस्सी और एक पैराशूट दोनों देता है। यदि रस्सी टूट जाती है, तो पैराशूट आपको बचा लेगा। यदि पैराशूट विफल हो जाता है, तो रस्सी आपको थामे रखेगी। दोनों का उपयोग करके, आप लगभग कभी नहीं गिरते।

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

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

Digest आज़माएँ →