← नवीनतम पेपर
💻 computer science

HAFixAgent: History-Aware Program Repair Agent

HAFixAgent एक इतिहास-जागरूक (history-aware) स्वचालित प्रोग्राम रिपेयर एजेंट है जो मौजूदा अत्याधुनिक प्रणालियों की तुलना में मरम्मत प्रभावशीलता, शोर वाले दोष स्थानीयकरण (noisy fault localization) के विरुद्ध मजबूती और जटिल मल्टी-हंक बग्स के लिए दक्षता में उल्लेखनीय सुधार करने के लिए रिपॉजिटरी ब्लेम ह्यूरिस्टिक्स का लाभ उठाता है।

मूल लेखक: Yu Shi, Hao Li, Bram Adams, Ahmed E. Hassan

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

मूल लेखक: Yu Shi, Hao Li, Bram Adams, Ahmed E. Hassan

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

कल्पना कीजिए कि आप एक मास्टर डिटेक्टिव हैं जो एक अपराध (एक सॉफ़्टवेयर बग) को सुलझाने की कोशिश कर रहे हैं जो एक विशाल, हलचल भरे शहर (एक सॉफ़्टवेयर प्रोजेक्ट) में हुआ है।

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

हाल ही में, जासूसों की एक नई पीढ़ी आई है: AI एजेंट्स। ये सुपर-स्मार्ट सहायक हैं जो शहर से बात कर सकते हैं, फाइलों को खोज सकते हैं और यहाँ तक कि खुद चीजों को ठीक करने की कोशिश भी कर सकते हैं। लेकिन इन AI एजेंट्स की भी एक कमी थी: वे "भूलने की बीमारी" (amnesiacs) के शिकार थे। वे अपराध स्थल को देखते तो थे लेकिन उनके पास शहर के इतिहास की कोई स्मृति नहीं थी। उन्हें यह नहीं पता था कि पिछले हफ्ते किसने खिड़की तोड़ी थी, क्यों तोड़ी थी, या क्या यह इमारत पहले कभी नवीनीकृत (renovated) हुई थी।

प्रवेश होता है HAFixAgent: वह जासूस जिसके पास टाइम मशीन है।

यह पेपर HAFixAgent को पेश करता है, एक नया AI सिस्टम जो न केवल टूटी हुई खिड़की को देखता है; बल्कि यह पूरी कहानी देखने के लिए पुलिस अभिलेखागार (रिपॉजिटरी हिस्ट्री) को भी निकाल लेता है।

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

1. "दोषारोपण" का खेल (टाइम मशीन)

सॉफ्टवेयर की दुनिया में, एक टूल है जिसे git blame कहा जाता है। इसे एक जादुई आवर्धक लेंस (magnifying glass) की तरह समझें जो, जब आप इसे कोड की एक विशिष्ट पंक्ति पर रखते हैं, तो आपको बताता है: "यह पंक्ति मंगलवार को दोपहर 3:00 बजे बॉब द्वारा अंतिम बार बदली गई थी।"

  • पुराना तरीका: अधिकांश AI एजेंट बॉब को अनदेखा कर देते हैं। वे बस आज के कोड को देखते हैं जैसा वह है।
  • HAFixAgent का तरीका: जब एजेंट को बग मिलता है, तो वह पूछता है, "इस पंक्ति को आखिरी बार किसने छुआ था?" फिर वह बॉब के बदलाव (ब्लैम कमिट) को पढ़ने, यह देखने के लिए कि बॉब ने उसी समय और क्या-क्या बदला था, और कोड के पीछे के इरादे (intent) को समझने के लिए वापस जाता है।

उपमा (Analogy): कल्पना कीजिए कि आपको एक पत्र में टाइपिंग की गलती (typo) मिलती है।

  • इतिहास के बिना: आप बस उस गलती को देखते हैं, यह अनुमान लगाते हुए कि वह वहाँ क्यों है।
  • HAFixAgent के साथ: आप कल के ड्राफ्ट को देखते हैं। आप देखते हैं कि लेखक जल्दबाजी में था और गलती से एक शब्द हटा बैठा। आप महसूस करते हैं कि टाइपिंग की गलती रैंडम नहीं है; यह एक सुराग है। यह आपको इसे बहुत तेज़ी से ठीक करने में मदद करता है।

2. "बड़ी गड़बड़ी" को सुलझाना (Multi-Hunk Bugs)

कुछ बग सरल होते हैं (एक साधारण टाइपिंग की गलती)। लेकिन सबसे कठिन बग वे होते हैं जो एक ऐसे घर की तरह होते जहाँ प्लंबिंग, बिजली की वायरिंग और पेंट सब अलग-अलग कमरों में खराब हो गए हैं। इन्हें Multi-Hunk Bugs कहा जाता है।

शोधकर्ताओं ने पाया कि जबकि इतिहास को देखना सरल बगों के लिए मददगार है, एक बड़ा सवाल यह था: क्या यह बड़ी, उलझी हुई गड़बड़ियों के लिए भी मददगार है?

परिणाम: हाँ! इतिहास को देखकर, HAFixAgent ने महसूस किया कि जब एक डेवलपर एक जटिल बग को ठीक करता है, तो वे अक्सर एक साथ कई संबंधित चीजों को बदलते हैं। अतीत के "अपराध स्थल" (इतिहास) का अध्ययन करके, एजेंट यह समझ जाता है कि डेवलपर के सोचने का पैटर्न क्या है।

  • उपमा: यदि आप एक लीक होती छत को ठीक कर रहे हैं, तो इतिहास को देखना आपको बताता है कि पिछली बार जिस व्यक्ति ने छत ठीक की थी, उसने गटर भी बदले थे। इसलिए, जब आप लीकेज देखते हैं, तो आप केवल छेद को पैच नहीं करते; आप गटर की भी जाँच करते हैं।

3. "भूलने की बीमारी" का परीक्षण (Robustness)

शोधकर्ता जानना चाहते थे कि क्या होगा यदि जासूस को गलत स्थान मिल जाए? क्या होगा यदि मैप कहता है कि अपराध कमरा 101 में हुआ था, लेकिन वास्तव में यह कमरा 103 में था?

  • पुराने एजेंट्स: यदि उन्हें स्थान गलत मिलता है, तो वे पूरी तरह से भ्रमित हो जाते हैं और हार मान लेते हैं। उनकी सफलता दर 0% तक गिर जाती है।
  • HAFixAgent: क्योंकि इसके पास इतिहास है, इसके पास एक "सुरक्षा जाल" (safety net) है। भले ही मैप थोड़ा गलत हो, ऐतिहासिक सुराग (जैसे "बॉब हमेशा इस गलियारे में वायरिंग ठीक करता है") इसे ट्रैक पर रहने में मदद करते हैं। इसने स्थान गलत होने पर भी 40% से 56% तक बग्स को हल करना जारी रखा।

उपमा: यदि आप अपने दोस्त के घर जा रहे हैं और गलत मोड़ ले लेते हैं, तो बिना मेमोरी वाला GPS घबरा सकता है। लेकिन मेमोरी वाला ड्राइवर कहता है, "रुको, मैं इस मोहल्ले को जानता हूँ। भले ही मैं गलत सड़क पर हूँ, मुझे याद है कि बड़ा नीला घर दो ब्लॉक दूर है। मैं अभी भी रास्ता ढूंढ सकता हूँ।"

4. लागत (क्या यह महंगा है?)

आप सोच सकते हैं, "वाह, उन सभी पुराने पुलिस फाइलों को देखने में तो बहुत समय लगेगा और बहुत पैसा खर्च होगा।"

आश्चर्य: ऐसा नहीं है! शोधकर्ताओं ने पाया कि यह "इतिहास" जोड़ने से AI को काफी अधिक समय नहीं लगा और न ही इससे बहुत अधिक पैसा खर्च हुआ। दक्षता के मामले में यह एक "फ्री लंच" (मुफ्त का लाभ) था। AI बिना अधिक ईंधन की आवश्यकता के बस स्मार्ट हो गया।

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

यह पेपर सिद्ध करता है कि संदर्भ (Context) ही राजा है।

AI एजेंटों को कोड के इतिहास को देखने के लिए "टाइम मशीन" देकर, हम निम्नलिखित को हल कर सकते हैं:

  1. अधिक बग्स: विशेष रूप से जटिल, उलझे हुए बग जो कई फाइलों में फैले हुए हैं।
  2. अधिक विश्वसनीयता: यहाँ तक कि जब शुरुआती सुराग थोड़े गलत हों।
  3. अधिक दक्षता: प्रक्रिया को धीमा किए बिना।

संक्षेप में: HAFixAgent एक सॉफ़्टवेयर रिपेयर रोबोट को लाइब्रेरी कार्ड देने जैसा है। केवल आज जो दिख रहा है उसके आधार पर अनुमान लगाने के बजाय, यह कोड की कहानी समझने के लिए इतिहास की किताबें पढ़ता है, जिससे यह एक बहुत बेहतर जासूस बन जाता है।

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

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

Digest आज़माएँ →