Kronumos 2 Kairos: Cost-Bounded Automated Program Repair via Dual-Brain Cybernetic Sub-Cortex on SWE-bench Verified
यह शोध पत्र क्रोनोस 2 काइरोस (Kronumos 2 Kairos) को प्रस्तुत करता है, जो एक लागत-बद्ध स्वचालित प्रोग्राम रिपेयर इंजन है जो एक फाइन-ट्यून्ड 7B कोड मॉडल को एक नवीन "डुअल-ब्रेन साइबरनेटिक सब-कोर्टेक्स" के साथ जोड़ता है ताकि शून्य सीमांत अनुमान लागत (zero marginal inference cost) और उद्योग के बेसलाइन की तुलना में टोकन उपयोग में 93.5% की कमी के साथ SWE-bench Verified डेटासेट पर 8 सत्यापित बग फिक्स प्राप्त किए जा सकें।
मूल पेपर CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
सॉफ्टवेयर रखरखाव एक शांत, विशाल उद्योग है जो वैश्विक इंजीनियरिंग बजट के साठ प्रतिशत से अधिक हिस्से का उपभोग करता है। यह जटिल डिजिटल प्रणालियों में टूटे हुए हिस्सों को खोजने और उन्हें ठीक करने का काम है, बिना उन हिस्सों को तोड़े जो अभी भी काम कर रहे हैं। दशकों से, यह एक मानवीय कार्य रहा है, जिसके लिए इस बात का गहरा ज्ञान आवश्यक है कि विभिन्न कोड फाइलें एक-दूसरे से कैसे संवाद करती हैं। हाल ही में, कोड की विशाल मात्रा पर प्रशिक्षित कंप्यूटर प्रोग्रामों ने स्वयं इस कार्य को करने का प्रयास करना शुरू कर दिया है। ये प्रोग्राम, जिन्हें लार्ज लैंग्वेज मॉडल्स (LLMs) के रूप में जाना जाता है, समस्या का विवरण पढ़ सकते हैं और समाधान का सुझाव दे सकते हैं। हालाँकि, जब ये मॉडल वास्तविक दुनिया के सॉफ़्टवेयर को ठीक करने की कोशिश करते हैं, तो वे अक्सर संघर्ष करते हैं। वे सूचना की विशाल मात्रा में खो जाते हैं, वे सूक्ष्म फॉर्मेटिंग त्रुटियाँ करते हैं जिसके कारण कंप्यूटर उनके काम को अस्वीकार कर देता है, और वे उच्च वित्तीय लागत पर ऐसा करते हैं, जिसके लिए अक्सर प्रत्येक प्रयास के लिए महंगी क्लाउड कंप्यूटिंग शक्ति की आवश्यकता होती है।
एक नया अध्ययन इस समस्या के प्रति एक अलग दृष्टिकोण पेश करता है, जो 'ब्रूट फोर्स' (जबरदस्ती की शक्ति) के बजाय सटीकता और लागत-दक्षता को प्राथमिकता देता है। शोधकर्ताओं ने 'क्रोनोस 2 कैरोस' (Kronumos 2 Kairos) नामक एक प्रणाली बनाई, जिसे एक व्यापक खोज इंजन के बजाय एक सर्जिकल उपकरण के रूप में कार्य करने के लिए डिज़ाइन किया गया है। कंप्यूटर मॉडल को एक कोडबेस में भटकने और बार-बार अनुमान लगाने और जाँच करने देने के बजाय, यह प्रणाली मॉडल को एक बहुत ही विशिष्ट, संकीकट कार्य पर ध्यान केंद्रित करने के लिए मजबूर करती है। यह एक मध्यम आकार के, ओपन-सोर्स कंप्यूटर मॉडल को एक कठोर, नियम-आधारित इंजन के साथ जोड़ती है जो एक सख्त गुणवत्ता नियंत्रण निरीक्षक के रूप में कार्य करता है। लक्ष्य यह देखना था कि क्या एक छोटा, सस्ता मॉडल वास्तविक सॉफ़्टवेयर बग्स को ठीक कर सकता है, यदि इसे अपनी लापरवाह गलतियाँ करने की प्रवृत्ति से बचाया जाए और इसे अनावश्यक चरणों पर संसाधन बर्बाद करने से रोका जाए। शोधकर्ताओं ने इस प्रणाली का परीक्षण पाँच सौ वास्तविक दुनिया के सॉफ़्टवेयर मुद्दों के एक बेंचमार्क पर किया, जो कृत्रिम बुद्धिमत्ता की कोड की मरम्मत करने की क्षमता को मापने के लिए उपयोग किया जाने वाला एक मानक सेट है।
यह प्रणाली कार्य को दो अलग-अलग भागों में विभाजित करके संचालित होती है। पहला भाग "कॉग्निटिव कॉर्टेक्स" (cognitive cortex) है, जो समस्या को समझने और कोड फिक्स लिखने के लिए जिम्मेदार कंप्यूटर मॉडल है। दूसरा भाग "सब-कॉर्टेक्स" (sub-cortex) है, जो एक नियत (deterministic) इंजन है जिसे एक ऐसी भाषा में लिखा गया है जो सटीक, पूर्वानुमेय व्यवहार की गारंटी देती है। यह सब-कॉर्टेक्स एक फ़िल्टर और फॉर्मेटर के रूप में कार्य करता है। मॉडल के समस्या देखने से पहले ही, सब-कॉर्टेक्स हजारों लाइनों के अप्रासंगिक तकनीकी शोर को हटा देता है जो आमतौर पर त्रुटि संदेशों में भरा होता है। यह गोपनीयता सुनिश्चित करने के लिए पासवर्ड और API कुंजी जैसे संवेदनशील विवरणों को भी हटा देता है। इसके बाद, यह मॉडल के आउटपुट को लेता है और इसकी जाँच करता है कि कोड पैच कैसे लिखे जाने चाहिए, इसके सख्त नियमों के विरुद्ध। यदि मॉडल लाइन नंबरों, इंडेंटेशन या फिक्स के फॉर्मेटिंग में गलती करता है, तो सब-कॉर्टेक्स इसे तुरंत पकड़ लेता है। यह या तो त्रुटि को सुधारता है या पैच को पूरी तरह से अस्वीकार कर देता है, जिससे यह सुनिश्चित होता है कि कोई भी टूटा हुआ या दोषपूर्ण कोड परीक्षण के लिए प्रस्तुत न किया जाए। यह प्रक्रिया सिस्टम को उन प्रयासों पर समय बर्बाद करने से रोकती है जो सरल फॉर्मेटिंग त्रुटियों के कारण विफल होने के लिए ही बने हैं।
शोधकर्ताओं ने इस प्रणाली को पाँच सौ वास्तविक दुनिया के सॉफ़्टवेयर मुद्दों के विरुद्ध चलाया। परिणामों ने दिखाया कि प्रणाली इन आठ बग्स को सफलतापूर्वक हल कर सकती है। हालांकि पाँच सौ में से आठ संख्या छोटी लग सकती है, लेकिन इसका महत्व इस बात में निहित है कि सिस्टम ने इसे कैसे हासिल किया। शोधकर्ताओं ने केवल सात बिलियन पैरामीटर्स वाला एक मॉडल उपयोग किया, जो उन विशाल मॉडलों की तुलना में काफी छोटा है जिनका उपयोग वाणिज्यिक कंपनियाँ करती हैं और जिन्हें चलाने में अक्सर हजारों डॉलर खर्च होते हैं। अपने 'डुअल-ब्रेन आर्किटेक्चर' का उपयोग करके, सिस्टम ने इन समस्याओं को शून्य मार्जिनल लागत के साथ हल किया। प्रत्येक कार्य के लिए सिस्टम द्वारा संसाधित डेटा की औसत मात्रा केवल दो हजार टोकन से थोड़ी अधिक थी, जो अन्य स्वचालित मरम्मत प्रणालियों द्वारा उपयोग किए जाने वाले सैकड़ों हजार टोकन की तुलना में नब्बे प्रतिशत से अधिक कम है। डेटा उपयोग में यह भारी कमी का अर्थ है कि सिस्टम वर्तमान विकल्पों की तुलना में कहीं अधिक कुशल और स्केलेबल है।
अध्ययन का एक महत्वपूर्ण निष्कर्ष सख्त गुणवत्ता नियंत्रण इंजन का महत्व था। जब शोधकर्ताओं ने मॉडल द्वारा कोड लिखने के बाद फॉर्मेटिंग त्रुटियों को ठीक करने की सब-कॉर्टेक्स की क्षमता को हटा दिया, तो सफल मरम्मत की संख्या आठ से घटकर छह रह गई। इसने प्रदर्शित किया कि मॉडल की विफलताओं का एक बड़ा हिस्सा समझ की कमी के कारण नहीं, बल्कि कोड को प्रस्तुत करने के तरीके में मामूली, सुधारात्मक गलतियों के कारण था। सब-कॉर्टेक्स एक सुरक्षा जाल के रूप में कार्य करता था, जिसने इन त्रुटियों को पकड़ा और सुनिश्चित किया कि मॉडल द्वारा खोजा गया तार्किक समाधान वास्तव में एक उपयोगी प्रारूप में वितरित किया गया है। सिस्टम ने यह भी सिद्ध किया कि यह मरम्मत प्रक्रिया के दौरान सॉफ़्टवेयर परीक्षणों को स्वयं चलाए बिना काम कर सकता है। फिक्स को आज़माने और यह देखने के बजाय कि क्या यह काम करता है, सिस्टम ने अपने आंतरिक नियमों पर भरोसा किया ताकि यह सुनिश्चित हो सके कि फिक्स संरचनात्मक रूप से सुदृढ़ है, इससे पहले कि इसे लागू किया जाए।
शोधकर्ताओं ने चार अलग-अलग सॉफ़्टवेयर इकोसिस्टम में इस प्रणाली का मूल्यांकन किया, जिसमें 'जेंगो' (Django) और 'साइकिट-लर्न' (Scikit-Learn) जैसी प्रमुख परियोजनाएं शामिल हैं। आठ सफल मरम्मत विभिन्न प्रकार के मुद्दों को कवर करती हैं, जिनमें डेटाबेस माइग्रेशन टूल में क्रैश को ठीक करना से लेकर डेटा विश्लेषण लाइब्रेरी में गणितीय त्रुटि को सुधारना तक शामिल है। एक मामले में, सिस्टम ने एक ऐसे बग को ठीक किया जहाँ एक प्रोग्राम क्रैश हो जाता था यदि एक विशिष्ट सेटिंग गायब होती थी; मॉडल ने सही ढंग से पहचाना कि कोड को उस सेटिंग के उपयोग करने से पहले उसकी अनुपस्थिति की जाँच करने की आवश्यकता है। एक अन्य मामले में, इसने एक समस्या को ठीक किया जहाँ एक प्रोग्राम अनजाने में उस डेटा को बदल देता था जिसे उसे छोड़ देना चाहिए था। शोधकर्ताओं ने पुष्टि करने के लिए कि तर्क सही था और समाधान केवल एक भाग्यशाली अनुमान नहीं था, प्रत्येक सफल फिक्स का मैन्युअल रूप से निरीक्षण किया।
शोधकर्ता स्वीकार करते हैं कि उनका सिस्टम सभी सॉफ़्टवेयर बग्स के लिए एक पूर्ण समाधान नहीं है। मॉडल अभी भी बहुत जटिल समस्याओं के साथ संघर्ष करता है जिनमें कई अलग-अलग फाइलों में गहरे तर्क की आवश्यकता होती है या जो इसके प्रशिक्षण से परे अमूर्त अवधारणाओं में शामिल होती हैं। हालाँकि, यह अध्ययन छोटे, ओपन-सोर्स मॉडलों के लिए क्या संभव है, इसका एक नया आधार स्थापित करता है। यह दिखाता है कि एक सक्षम लेकिन मामूली कंप्यूटर मॉडल को एक कठोर, नियम-आधारित प्रणाली के साथ जोड़कर, जो सख्त मानकों को लागू करती है, वर्तमान अत्याधुनिक प्रणालियों से जुड़े भारी खर्च के बिना विश्वसनीय परिणाम प्राप्त करना संभव है। यह कार्य सुझाव देता है कि स्वचालित मरम्मत का भविष्य मॉडलों को अनंत रूप से बड़ा बनाने पर नहीं, बल्कि उन्हें निर्देशित करने और उनकी गलतियों को पकड़ने के लिए बेहतर सिस्टम बनाने पर निर्भर है।
यह शोध स्वचालित सॉफ़्टवेयर मरम्मत को सुलभ और किफायती बनाने के लिए एक स्पष्ट मार्ग प्रदान करता है। यह सिद्ध करके कि एक प्रणाली शून्य लागत और उच्च दक्षता के साथ वास्तविक बग्स को ठीक कर सकती है, यह अध्ययन इस धारणा को चुनौती देता है कि केवल सबसे महंगी, शक्तिशाली मॉडल ही यह कार्य कर सकती हैं। 'डुअल-ब्रेन अप्रोच' की सफलता इस बात पर प्रकाश डालती है कि कोड लिखने के रचनात्मक कार्य को नियमों का पालन करने के यांत्रिक कार्य से अलग करने में कितना महत्व है। जैसे-जैसे स्वचालित मरम्मत का क्षेत्र विकसित हो रहा है, यह कार्य बुद्धि और अनुशासन के बीच संतुलन बनाने का एक व्यावहारिक उदाहरण पेश करता है, यह सुनिश्चित करता है कि हमारे सॉफ़्टवेयर को ठीक करने वाले उपकरण स्वयं भी मजबूत, विश्वसनीय और कुशल हों।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।