AxDafny: Agentic Verified Code Generation in Dafny
यह शोध पत्र AxDafny प्रस्तुत करता है, जो एजेंटिक कोड जनरेशन के लिए एक विनियरिफायर-निर्देशित ढांचा है जो कार्यान्वयन और प्रमाणों को पुनरावृत्ति रूप से परिष्कृत करता है, और नए प्रस्तावित LCB-Pro-Dafny बेंचमार्क और मौजूदा DafnyBench पर अत्याधुनिक बेसलाइनों की तुलना में सत्यापन सफलता में महत्वपूर्ण सुधार प्रदर्शित करता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक बहुत ही प्रतिभाशाली लेकिन थोड़े लापरवाह आर्किटेक्ट को एक घर बनाने के लिए काम पर रख रहे हैं। आप उन्हें एक ब्लूप्रिंट (नियम) देते हैं और कहते हैं, "मेरे लिए एक ऐसा घर बनाओ जिसमें एक किचन, एक बेडरूम और एक छत हो।"
कंप्यूटर कोडिंग की दुनिया में, अधिकांश AI मॉडल उसी आर्किटेक्ट की तरह काम करते हैं: वे एक ऐसा घर बनाते हैं जो दिखने में तो सही लगता है, लेकिन जब आप उसमें रहने की कोशिश करते हैं, तो शायद छत से पानी टपक रहा हो, या किचन में दरवाजा गायब हो। वे "टेस्ट ड्राइव" (test drives) पर निर्भर रहते हैं—यह देखने के लिए कि क्या घर कुछ विशिष्ट स्थितियों में ठीक से काम करता है, यह देखना कि क्या वह पर्याप्त रूप से अच्छा है।
AxDafny एक नया सिस्टम है जो खेल बदल देता है। केवल घर बनाने और फिर उम्मीद करने के बजाय, यह एक "सुपर-इंस्पेक्टर" (जिसे फॉर्मल वेरिफायर कहा जाता है) का उपयोग करता है जो घर बनते समय ही उसके पीछे के गणित की जांच करता है।
यहाँ शोध पत्र द्वारा इसे सरल अवधारणाओं में तोड़कर समझाया गया है:
1. चुनौती: गणितीय प्रमाण के साथ एक घर बनाना
शोधकर्ताओं ने यह देखना चाहा कि क्या AI ऐसा कोड लिख सकता है जो न केवल "काम करने वाला" हो, बल्कि गणितीय रूप से सिद्ध (mathematically proven) भी हो कि वह सही है। इसके लिए उन्होंने Dafny नामक एक विशेष भाषा का उपयोग किया।
Dafny को एक ऐसी भाषा के रूप में सोचें जहाँ आप केवल यह नहीं कह सकते कि, "मैंने एक दरवाजा बनाया है।" आपको यह भी साबित करना होगा, "यह दरवाजा ठीक 3 फीट चौड़ा है, यह केवल हैंडल घुमाने पर खुलता है, और यह कभी अपने कब्जों से नहीं गिरेगा।"
- समस्या: कोड लिखना कठिन है। कोड और उस कोड का गणितीय प्रमाण (proof) दोनों लिखना और भी कठिन है। अधिकांश AI अटक जाते हैं क्योंकि वे "प्रमाण" वाला हिस्सा नहीं लिख पाते।
2. समाधान: AxDafny ("ठीक करने वाला" लूप)
टीम ने AxDafny बनाया, जो दो लोगों की एक टीम की तरह काम करता है जो मिलकर काम कर रहे हैं:
- बिल्डर (The Builder - AI): कोड और उसका प्रमाण लिखने की कोशिश करता है।
- इंस्पेक्टर (The Inspector - Verifier): तुरंत काम की जांच करता है।
यदि बिल्डर कोई गलती करता है, तो इंस्पेक्टर केवल "गलत" नहीं कहता। वह सीधे उस लीकी छत या गायब दरवाजे की ओर इशारा करता है और कहता है, "आप यह साबित करना भूल गए कि दरवाजा जुड़ा हुआ रहेगा।"
बिल्डर फिर उस विशिष्ट भाग को ठीक करता है और दोबारा प्रयास करता है। वे इस लूप (बनाना → जांचना → ठीक करना → बनाना) को तब तक करते रहते हैं जब तक कि इंस्पेक्टर "पास" (Pass) न दे दे।
3. नया टेस्ट: "LCB-Pro-Dafny"
यह देखने के लिए कि क्या यह सिस्टम वास्तव में काम करता है, शोधकर्ताओं ने LCB-Pro-Dafny नामक एक नया टेस्ट बनाया।
- कल्पना कीजिए कि आप प्रोग्रामिंग प्रतियोगिता से 250 कठिन पहेलियाँ ले रहे हैं (जैसे कोडर के लिए उच्च-स्तरीय गणित ओलंपियाड)।
- उन्होंने इन पहेलियों को सख्त "Dafny" भाषा में अनुवादित किया।
- अब, AI को पहेली हल करनी है और यह सिद्ध भी करना है कि उसका समाधान सही है।
4. परिणाम: कौन जीता?
शोधकर्ताओं ने अपने नए सिस्टम (AxDafny) की तुलना एक मानक, शक्तिशाली AI (GPT-5.5) से की, जो बिना "फिक्स-इट" लूप के केवल एक बार कोड लिखने की कोशिश करता है।
"प्रूफ" टेस्ट पर (DafnyBench):
- मानक AI ने लगभग 54% प्रमाण सही किए।
- AxDafny (फिक्स-इट लूप का उपयोग करते हुए) ने 92.7% सही किए।
- उपमा: यह मानक AI के उत्तर का अनुमान लगाने जैसा है, जबकि AxDafny एक ऐसे छात्र की तरह है जो अपना काम तब तक चेक करता रहता है जब तक उसे A+ न मिल जाए।
"कॉम्पिटिशन" टेस्ट पर (LCB-Pro-Dafny):
- मानक AI ने केवल 11.6% कठिन पहेलियों को सही ढंग से हल किया।
- AxDafny ने 56.4% हल किया।
- उपमा: AxDafny वास्तविक समस्याओं को हल करने में बहुत बेहतर था, लेकिन वह अभी भी "कठिन" स्तर पर संघर्ष कर रहा था, जो यह दर्शाता है कि सुपर-इंस्पेक्टर के होने के बावजूद, कुछ पहेलियाँ अविश्वसनीय रूप से कठिन होती हैं।
5. पकड़: "सही" बनाम "तेज़"
यहाँ शोध पत्र से एक आश्चर्यजनक निष्कर्ष निकला।
कभी-कभी, AxDafny एक ऐसा घर बनाता था जो गणितीय रूप से पूर्ण था (इंस्पेक्टर ने "पास" कहा!), लेकिन जब वे उसमें रहने की कोशिश करते, तो घर बहुत धीमा था या बहुत अधिक बिजली खर्च कर रहा था।
- क्यों? इंस्पेक्टर केवल यह जाँचता है कि घर सुरक्षित और सही है या नहीं। वह यह जाँच नहीं करता कि घर कुशल (efficient) है या नहीं।
- AI कभी-कभी एक ऐसा "धीमा" समाधान बनाता था जिसे सही साबित करना आसान था, बजाय एक "तेज़" समाधान के जिसे साबित करना कठिन हो।
- जब उन्होंने वास्तविक कंप्यूटरों पर कोड का परीक्षण किया, तो कई "पूर्ण" समाधान विफल हो गए क्योंकि उन्हें चलने में बहुत अधिक समय लगा (Time Limit Exceeded) या उन्होंने बहुत अधिक मेमोरी का उपयोग किया।
सारांश
AxDafny एक ऐसा सिस्टम है जो AI को "चेक-एंड-फिक्स" लूप का उपयोग करके ऐसा कोड लिखना सिखाता है जो गणितीय रूप से सही सिद्ध हो सके।
- यह सुनिश्चित करने में बहुत अच्छा काम करता है कि कोड बिल्कुल वैसा ही करे जैसा उसे करना चाहिए (कोई बग नहीं)।
- यह मानक AI की तुलना में एक बड़ा सुधार है, जो अक्सर केवल अनुमान लगाता है।
- सीमा: केवल इसलिए कि कोड "सही सिद्ध" है, इसका मतलब यह नहीं है कि वह वास्तविक दुनिया की प्रतियोगिताओं के लिए "पर्याप्त तेज़" भी है। AI को सही होने के साथ-साथ कुशल (efficient) होना भी सीखना होगा।
शोध पत्र निष्कर्ष निकालता है कि यह दृष्टिकोण कोड को अधिक विश्वसनीय बनाने का एक शक्तिशाली तरीका है, लेकिन हमें अभी भी AI को गति (speed) के प्रति सचेत करना होगा, न कि केवल शुद्धता (correctness) के प्रति।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।