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

CodeHacker: Automated Test Case Generation for Detecting Vulnerabilities in Competitive Programming Solutions

CodeHacker एक स्वचालित एजेंट फ्रेमवर्क है जो लक्षित प्रतिकूल परीक्षण मामले (adversarial test cases) उत्पन्न करने के लिए एक बहु-रणनीति दृष्टिकोण और एक स्व-अंशांकन चरण (self-calibration phase) को नियोजित करके कोड जनरेशन मॉडल्स के मूल्यांकन को बढ़ाता है, जो प्रतिस्पर्धी प्रोग्रामिंग समाधानों में कमजोरियों को प्रभावी ढंग से उजागर करता है और बेंचमार्क डेटासेट एवं RL-प्रशिक्षित मॉडल्स दोनों की मजबूती में सुधार करता है।

मूल लेखक: Jingwei Shi, Xinxiang Yin, Jing Huang, Jinman Zhao, Shengyu Tao

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

मूल लेखक: Jingwei Shi, Xinxiang Yin, Jing Huang, Jinman Zhao, Shengyu Tao

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

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

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

यह कैसे काम करता है, यहाँ सरल अवधारणाओं में दिया गया है:

1. समस्या: "फेक पास" (झूठा पास होना)

वर्तमान में, जब हम AI कोड का परीक्षण करते हैं, तो हम मानक परीक्षण मामलों (एक चेकलिस्ट की तरह) का उपयोग करते हैं। शोध पत्र का तर्क है कि ये चेकलिस्ट अक्सर बहुत आसान होती हैं। वे "अजीब एज केसेस" (weird edge cases) को छोड़ देती हैं—वे पेचीदा, असामान्य स्थितियाँ जहाँ एक प्रोग्राम विफल हो सकता है।

  • उपमा: कल्पना कीजिए कि एक कार सुरक्षा परीक्षण में, आप कार को केवल एक आदर्श, खाली हाईवे पर चलाते हैं। कार पास हो जाती है! लेकिन आपने कभी इसका परीक्षण बर्फीले, घुमावदार पहाड़ी रास्ते पर नहीं किया। कार सुरक्षित दिखती है, लेकिन वास्तव में यह खतरनाक है। मौजूदा बेंचमार्क उसी आदर्श हाईवे की तरह हैं; वे "दोषपूर्ण" समाधानों को पास होने देते हैं क्योंकि उन्होंने कभी गड्ढों का सामना नहीं किया।

2. समाधान: "CodeHacker" एजेंट

CodeHacker एक AI एजेंट है जिसे अंतिम "गड्ढा खोजने वाला" (pothole finder) बनने के लिए डिज़ाइन किया गया है। बिना किसी रैंडम अनुमान के, यह एक प्रतिस्पर्धी प्रोग्रामर की तरह कार्य करता है जो किसी विशिष्ट कोड को तोड़ने की कोशिश कर रहा है। यह तीन मुख्य रणनीतियों का उपयोग करता है:

  • स्ट्रेस टेस्टिंग (Stress Testing): यह कोड पर भारी मात्रा में डेटा डालता है ताकि यह देखा जा सके कि क्या यह क्रैश होता है या इसकी मेमोरी खत्म हो जाती है (जैसे किसी बाल्टी को फायरहोस से भरने की कोशिश करना)।
  • लॉजिक टारगेटिंग (Logic Targeting): यह कोड को पढ़ता है, इसके तर्क (logic) को समझता है, और विशेष रूप से उस तर्क को धोखा देने के लिए इनपुट तैयार करता है (जैसे वह सटीक चाबी ढूंढना जो ताले में फिट बैठती है)।
  • एंटी-हैश अटैक्स (Anti-Hash Attacks): कुछ कोडर उत्तरों की जाँच करने के लिए "हैश" (गणितीय शॉर्टकट) का उपयोग करते हैं। CodeHacker के पास एक विशेष गणितीय ट्रिक है जिससे वह दो पूरी तरह से अलग इनपुट ढूंढ लेता है जो एक ही हैश परिणाम देते हैं, जिससे कोड को यह विश्वास दिलाने में धोखा मिलता है कि वे एक ही हैं।

3. "कैलिब्रेशन" चरण: रेफरी को ठीक करना

CodeHacker को चीजें तोड़ने शुरू करने से पहले, उसे यह सुनिश्चित करना होगा कि "रेफरी" (वह सिस्टम जो जाँचता है कि उत्तर सही है या नहीं) एकदम सटीक हो।

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

4. परिणाम: स्कोरबोर्ड की सफाई

जब लेखकों ने मौजूदा डेटासेट्स पर CodeHacker का उपयोग किया, तो उन्हें बहुत सारे "फॉल्स पॉजिटिव" (False Positives) मिले।

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

5. बेहतर AI को प्रशिक्षित करना

यह शोध पत्र यह भी दिखाता है कि इन "हैक किए गए" उदाहरणों का उपयोग करके AI मॉडल को प्रशिक्षित करने से वे अधिक स्मार्ट बनते हैं।

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

सारांश

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

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

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

Digest आज़माएँ →