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

RepoRepair: Leveraging Code Documentation for Repository-Level Automated Program Repair

RepoRepair एक नवीन, लागत प्रभावी स्वचालित प्रोग्राम रिपेयर फ्रेमवर्क है जो रिपॉजिटरी-स्तरीय फॉल्ट लोकलाइजेशन को बढ़ाने के लिए LLM-जनरेटेड पदानुक्रमित (hierarchical) कोड डॉक्यूमेंटेशन का लाभ उठाता है और SWE-bench बेंचमार्क पर अत्याधुनिक (state-of-the-art) रिपेयर दरएं प्राप्त करता है।

मूल लेखक: Zhongqiang Pan, Chuanyi Li, Wenkang Zhong, Yi Feng, Bin Luo, Vincent Ng

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

मूल लेखक: Zhongqiang Pan, Chuanyi Li, Wenkang Zhong, Yi Feng, Bin Luo, Vincent Ng

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

कल्पना कीजिए कि आप एक मास्टर मैकेनिक हैं जिन्हें इमारतों के एक विशाल, फैले हुए शहर (एक सॉफ्टवेयर रिपॉजिटरी) में एक विशिष्ट समस्या को ठीक करने के लिए काम पर रखा गया है। इस शहर में हजारों इमारतें, लाखों कमरे और उन्हें जोड़ने वाली जटिल प्लंबिंग और इलेक्ट्रिकल प्रणालियाँ हैं।

आपके बॉस ने आपको एक नोट थमाया जिसमें एक लीकेज (रिसाव) का वर्णन है: "5वीं स्ट्रीट पर स्थित नीले घर की रसोई में पानी का दबाव अजीब है।"

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

नया तरीका (RepoRepair):
इस पेपर के लेखकों ने महसूस किया कि समस्या मैकेनिक के कौशल में नहीं है; बल्कि एक अच्छे गाइडबुक (मार्गदर्शिका) की कमी में है।

अंधेरे शहर में भागने के बजाय, RepoRepair पहले पूरे शहर के लिए एक पदानुक्रमित गाइडबुक (hierarchical guidebook) लिखने के लिए विशेषज्ञों की एक टीम (AI मॉडल) को काम पर रखता है।

यह कैसे काम करता है, इसे सरल चरणों में यहाँ दिया गया है:

1. "सिटी गाइड" लिखना (डॉक्यूमेंटेशन जनरेशन)

लीकेज को ठीक करने से पहले, RepoRepair शहर की प्रत्येक इमारत के लिए दो प्रकार के सारांश तैयार करता है:

  • "बिल्डिंग समरी" (फ़ाइल-स्तर): एक छोटा पैराग्राफ जो बताता है कि पूरा भवन क्या करता है। "यह एक लाइब्रेरी है; यह सभी पुस्तक भंडारण और खोज कार्यों को संभालती है।"
  • "रूम समरी" (फ़ंक्शन-स्तर): अंदर के प्रत्येक विशिष्ट कमरे का विस्तृत विवरण। "यह 'सर्च' कमरा है; यह उपयोगकर्ता के प्रश्न को लेता है और मिलान वाली पुस्तकें खोजता है।"

उपमा: कल्पना कीजिए कि यदि आपके शहर की हर इमारत के बाहर एक स्पष्ट संकेत होता कि वह क्या है, और हर कमरे के अंदर एक लेबल होता कि वहां क्या होता है। आपको यह जानने के लिए हर दरवाजा खोलने की आवश्यकता नहीं है कि कहाँ देखना है।

2. सही स्थान खोजना (लोकलाइजेशन)

जब बॉस कहता है, "रसोई में पानी के दबाव को ठीक करो," तो RepoRepair दीवारें तोड़ना शुरू नहीं करता है।

  • चरण A: यह बिल्डिंग समरी को देखता है। यह तुरंत समझ जाता है, "रसोई नीले घर में है, लेकिन पानी के दबाव की समस्या वास्तव में हरे घर (प्लंबिंग हब) में मुख्य वाल्व के कारण है।" यह तुरंत शहर के 99% हिस्से को फ़िल्टर कर देता है।
  • चरण B: यह हरे घर के अंदर रूम समरी को देखता है। यह उस विशिष्ट वाल्व वाले कमरे को ढूंढ लेता है जो दबाव को नियंत्रित करता है।

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

3. सुधार करना (रिपेयर)

एक बार जब सटीक कमरा मिल जाता है, तो RepoRepair पूरे घर को फिर से नहीं बनाता है। यह एक बहुत ही सटीक "पैच" (एक diff) बनाता है जो केवल विशिष्ट वाल्व को बदलता है।

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

यह एक बड़ी बात क्यों है?

इस पेपर ने दो बड़ी चुनौतियों पर परीक्षण किया:

  1. SWE-bench Lite: कोड को ठीक करने का एक मानक परीक्षण। RepoRepair ने 45.7% समस्याओं को ठीक किया।
  2. SWE-bench Multimodal: एक कठिन परीक्षण जिसमें विजुअल बग्स (जैसे स्क्रीन पर बटन का गलत दिखना) और जटिल कोड शामिल हैं। इसने 37.1% के साथ इन समस्याओं को ठीक किया, जो अन्य सभी वर्तमान उपकरणों को पछाड़ देता है।

लागत:
अधिकांश अन्य उपकरण शहर में खोजने के लिए 100 इंटर्न की एक टीम को काम पर रखने जैसे हैं। वे महंगे और धीमे हैं। RepoRepar एक स्मार्ट आर्किटेक्ट को एक परफेक्ट मैप के साथ काम पर रखने जैसा है। यह सस्ता (प्रति फिक्स लगभग 44 सेंट) और स्मार्ट है।

निचोड़ (The Bottom Line)

RepoRepair एक रोबोट को किसी बग को ठीक करने के लिए कहने से पहले पूरे सॉफ़्टवेयर की एक व्यापक, AI-लिखित विश्वकोश देने जैसा है। अंधेरे में अनुमान लगाने और खोजने के बजाय, रोबोट पूरे सिस्टम के कनेक्शन को समझने के लिए विश्वकोश पढ़ता है, समस्या के वास्तविक स्रोत को ढूंढता है (भले ही वह किसी अलग फ़ाइल में हो), और एक सटीक, सुरक्षित सुधार करता है।

यह एक विशाल सॉफ़्टवेयर शहर को ठीक करने के अराजक कार्य को एक नक्शा पढ़ने और एक सिंगल स्क्रू को घुमाने की एक संरचित, तार्किक प्रक्रिया में बदल देता है।

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

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

Digest आज़माएँ →