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

The Code Whisperer: LLM and Graph-Based AI for Smell and Vulnerability Resolution

यह शोध पत्र "द कोड व्हिस्परर" (The Code Whisperer) को प्रस्तुत करता है, जो एक हाइब्रिड फ्रेमवर्क है जो कोड स्मेल्स और कमजोरियों (vulnerabilities) का संयुक्त रूप से पता लगाने, समझाने और सुधारने के लिए ग्राफ-आधारित प्रोग्राम विश्लेषण को लार्ज लैंग्वेज मॉडल्स के साथ एकीकृत करता है, जो मौजूदा नियम-आधारित या एकल-मॉडल दृष्टिकोणों की तुलना में बेहतर प्रदर्शन और व्यावहारिक उपयोगिता प्रदर्शित करता है।

मूल लेखक: Mohammad Baqar, Raji Rustamov, Alexander Hughes

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

मूल लेखक: Mohammad Baqar, Raji Rustamov, Alexander Hughes

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

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

अब, कल्पना कीजिए कि आपने एक नया, अत्यंत बुद्धिमान सहायक नियुक्त किया है: द कोड व्हिस्परर (The Code Whisperer)

यह सहायक दो शक्तिशाली कौशलों का एक हाइब्रिड है:

  1. द आर्किटेक्ट (ग्राफ-आधारित AI): इस सहायक का यह हिस्सा जहाज के ब्लूप्रिंट (खाके) को देख सकता है। यह समझता है कि इंजन रडर से कैसे जुड़ता है, कार्गो होल्ड्स कैसे रखे गए हैं, और पाइपों के माध्यम से पानी का प्रवाह कैसा है। यह संरचना (Structure) को देखता है।
  2. द स्टोरीटेलर (लार्ज लैंग्वेज मॉडल): इस सहायक का यह हिस्सा लॉगबुक को पढ़ता है और संदर्भ (Context) को समझता है। यह जानता है कि एक "घिसी हुई रस्सी" रसोई में ठीक हो सकती है लेकिन इंजन के पास खतरनाक हो सकती है। यह कोड के अर्थ को समझता है।

समस्या: दो अलग दुनिया

आमतौर पर, सॉफ्टवेयर इंजीनियर कोड स्मेल (Code Smells) (बिखरा हुआ, रखरखाव में कठिन कोड, जैसे एक रसोई जहाँ बर्तन और पैन सब मिले-जुले हों) की जांच के लिए एक टूल का उपयोग करते हैं और वल्नरेबिलिटी (Vulnerabilities) (सुरक्षा खामियां, जैसे खजाने के संदूक पर ढीला ताला) की जांच के लिए दूसरे टूल का।

समस्या यह है कि ये दोनों मुद्दे अक्सर आपस में जुड़े होते हैं। एक बिखरी हुई रसोई (कोड स्मेल) एक चोर के लिए खजाना ढूंढना आसान बना सकती है (वल्नरेबिलिटी)। लेकिन क्योंकि टूल्स अलग-अलग काम करते हैं, वे बड़ी तस्वीर को देखने में चूक जाते हैं।

समाधान: द कोड व्हिस्परर

द कोड व्हिस्परर आर्किटेक्ट और स्टोरीटेलर को एक ही मस्तिष्क में लाता है।

  • यह संरचना को देखता है: यह कंट्रोल फ्लो ग्राफ (जहाज कैसे चलता है इसका मानचित्र) और प्रोग्राम डिपेंडेंसी ग्राफ (कैसे हिस्से एक-दूसरे पर निर्भर हैं) को देखता है।
  • यह संदर्भ को समझता है: यह कोड को एक इंसान की तरह पढ़ता है, कोड की पंक्तियों के पीछे की "कहानी" को समझता है।

इन दोनों को मिलाकर, यह केवल यह नहीं कहता, "यहाँ एक समस्या है।" बल्कि यह कहता है, "यह कोड का हिस्सा अव्यवस्थित है (एक स्मेल), और क्योंकि यह अव्यवस्थित है, यह आपके गुप्त पासवर्ड भी लीक कर रहा है (एक वल्नरेबिलिटी)।"

यह वास्तव में कैसे काम करता है

यहाँ कोड के एक टुकड़े की 'द कोड व्हिस्परर' के माध्यम से यात्रा दी गई है:

  1. स्कैन (पहचान): सहायक आपके कोड को देखता है। केवल एक चेकलिस्ट की जाँच करने के बजाय, यह आपके कोड के काम करने का एक 3D मानसिक मॉडल बनाता है। यह एक "लॉन्ग मेथड" (एक फंक्शन जो बहुत कुछ करता है, जैसे एक शेफ अकेले पूरा भोजन पकाने की कोशिश कर रहा हो) को पहचानता है और महसूस करता है कि यह जटिलता एक सुरक्षा जोखिम को छिपा रही है।
  2. व्याख्या (Explainability): आपको एक डरावना, रहस्यमयी एरर कोड देने के बजाय, यह विशिष्ट लाइन की ओर इशारा करता है और कहता है, "यह फंक्शन बहुत लंबा है और यह संवेदनशील डेटा को संभाल रहा है। यह वैसा ही है जैसे जग्लिंग करते हुए कार चलाने की कोशिश करना; चीज़ों पर ध्यान केंद्रित करना कठिन है, और आप चाबियाँ गिरा सकते हैं।" यह मानव डेवलपर के लिए समझना आसान बनाता है कि यह एक समस्या क्यों है।
  3. सुधार (स्वचालित मरम्मत): सहायक केवल शिकायत नहीं करता; यह एक समाधान भी पेश करता है। यह सुझाव देता है, "आइए इस विशाल फंक्शन को तीन छोटे, विशिष्ट सहायकों में तोड़ दें। यहाँ नया कोड दिया गया है।"
  4. सुरक्षा जांच: आपके द्वारा सुधार को स्वीकार करने से पहले, सहायक यह सुनिश्चित करने के लिए एक त्वरित परीक्षण चलाता है कि नया कोड जहाज को नुकसान न पहुँचाए। यह एक मैकेनिक की तरह है जो कार शुरू करने से पहले इंजन की दोबारा जांच करता है।
  5. एकीकरण (CI/CD): यह सब स्वचालित रूप से होता है जब आप काम कर रहे होते हैं। यह एक को-पायलट की तरह है जो आपके कान में फुसफुसाता है जबकि आप स्टीयरिंग संभाल रहे होते हैं, न कि दुर्घटना होने के बाद आपको बताने के लिए इंतज़ार करता है।

यह क्यों महत्वपूर्ण है

  • कम गलत अलार्म: पारंपरिक उपकरण अक्सर तब "आग!" चिल्लाते हैं जब वह केवल एक मोमबत्ती होती है। द कोड व्हिस्परर अंतर जानता है क्योंकि यह संदर्भ को समझता है।
  • बेहतर सुधार: यह केवल छेद को नहीं भरता; यह बेहतर डिज़ाइन का सुझाव देता है ताकि वह छेद दोबारा न आए।
  • ह्यूमन इन द लूप: यह पेपर इस बात पर जोर देता है कि यह इंजीनियरों को बदलने के बारे में नहीं है। यह इंजीनियरों को एक सुपर-शक्तिशाली सहायक देने के बारे में है जो उबाऊ, जटिल विश्लेषण को संभालता है ताकि इंसान रचनात्मक, उच्च-स्तरीय निर्णयों पर ध्यान केंद्रित कर सकें।

निचोड़

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

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

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

Digest आज़माएँ →