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

A Prompt-Based Framework for Loop Vulnerability Detection Using Local LLMs

यह शोध पत्र पायथन 3.7+ कोड में लूप कमजोरियों (loop vulnerabilities) का पता लगाने के लिए स्थानीय लार्ज लैंग्वेज मॉडल्स (विशेष रूप से Phi 3.5 और LLaMA 3.2) का उपयोग करने वाले एक प्रॉम्प्ट-आधारित ढांचे का प्रस्ताव करता है, जो यह प्रदर्शित करता है कि Phi 3.5, पारंपरिक स्टेटिक टूल्स की गोपनीयता और सिमेंटिक विश्लेषण सीमाओं को संबोधित करते हुए, प्रिसिजन (precision), रिकॉल (recall) और F1-स्कोर में LLaMA 3.2 से बेहतर प्रदर्शन करता है।

मूल लेखक: Adeyemi Adeseye, Aisvarya Adeseye

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

मूल लेखक: Adeyemi Adeseye, Aisvarya Adeseye

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

कल्पना कीजिए कि आप कोड से एक विशाल, जटिल मशीन बना रहे हैं। अधिकांश समय, मशीन सुचारू रूप से चलती है। लेकिन कभी-कभी, निर्देशों के भीतर छिपे हुए, "लूप्स" (loops) होते हैं—कमांड्स के ऐसे घेरे जो मशीन को एक ही चीज़ को बार-बार करते रहने के लिए कहते हैं।

यदि ये लूप्स खराब तरीके से डिज़ाइन किए गए हैं, तो वे एक दुःस्वप्न बन सकते हैं: मशीन हमेशा के लिए घूमने में फंस सकती है (इनफिनिट लूप), ईंधन खत्म कर सकती है (मेमोरी का खाली होना), या अनजाने में चोरों के लिए पिछला दरवाज़ा खोल सकती है (सुरक्षा जोखिम)।

यह शोध पत्र इन छिपे हुए लूप ट्रैप्स को परेशानी पैदा करने से पहले खोजने के एक नए तरीके के बारे में है। यह इस बात की कहानी है कि उन्होंने इसे कैसे किया, जिसे सरल भाषा में समझाया गया है।

समस्या: "ग्रामर पुलिस" बनाम "कॉन्टेक्स्ट डिटेक्टिव"

पारंपरिक रूप रूप से, सॉफ्टवेयर में गलतियों को जाँचने के लिए "ग्रामर पुलिस" (स्टैटिक एनालाइजर्स) होते थे। ये उपकरण स्पेल-चेकर की तरह होते हैं; वे स्पष्ट गलतियों को देखते हैं, जैसे कि कोई गायब सेमीकोलन या ऐसा लूप जो स्पष्ट रूप से कभी नहीं रुकता।

हालाँकि, "ग्रामर पुलिस" कॉन्टेक्स्ट (संदर्भ) समझने में बहुत खराब होते हैं। वे यह अंतर नहीं कर सकते कि एक लूप जो 10 बार चलने के लिए बनाया गया है और एक लूप जो 10 बार चलने के लिए बनाया गया है लेकिन सूक्ष्म लॉजिक एरर के कारण अनजाने में हमेशा के लिए चलता रहता है, के बीच क्या अंतर है। वे केवल सख्त नियमों पर निर्भर करते हैं, कोड की कहानी को नहीं समझते।

समाधान: स्थानीय "कोड डिटेक्टिव"

लेखकों ने लार्ज लैंग्वेज मॉडल्स (LLMs) को "कोड डिटेक्टिव" के रूप में उपयोग करने का निर्णय लिया। ये AI दिमाग हैं जिन्हें लाखों लाइनों के कोड पर प्रशिक्षित किया गया है, इसलिए वे निर्देशों के पीछे की कहानी और इरादे को समझते हैं, न कि केवल व्याकरण को।

लेकिन एक पेंच था: प्रसिद्ध जासूस (जैसे ChatGPT) क्लाउड में रहते हैं। अपने गुप्त कोड को उनके पास भेजना अपने बैंक खाते के नंबर किसी अजनबी को डाक से भेजने जैसा है। यह गोपनीयता के लिए जोखिम भरा है और धीमा भी हो सकता है।

इसलिए, लेखकों ने लोकल LLMs (विशेष रूप से LLaMA और Phi) को चुना। इन्हें ऐसे जासूसों के रूप में सोचें जिन्हें आप अपने ही घर के अंदर काम करने के लिए काम पर रखते हैं। वे आपके कंप्यूटर को कभी नहीं छोड़ते, इसलिए आपके रहस्य सुरक्षित रहते हैं, और वे इंटरनेट का इंतज़ार किए बिना तुरंत काम करते हैं।

टूल: "मैजिक प्रॉम्प्ट"

AI एक बहुत ही बुद्धिमान लेकिन शाब्दिक अर्थ निकालने वाले इंटर्न की तरह है। यदि आप बस कहें, "बग ढूंढो," तो यह भ्रमित हो सकता है या अपनी ओर से कुछ भी बना सकता है (जिसे "हैलुसिनेशन" कहा जाता है)।

इसे ठीक करने के लिए, लेखकों ने एक प्रॉम्प्ट-बेस्ड फ्रेमवर्क बनाया। इसे एक विस्तृत निर्देश पुस्तिका या एक चेकलिस्ट के रूप में समझें जो जासूस को काम शुरू करने से पहले दी जाती है।

  • सिस्टम प्रॉम्प्ट: यह जासूस की पहचान तय करता है। "आप पायथन लूप्स में विशेषज्ञता रखने वाले सुरक्षा विशेषज्ञ हैं।"
  • यूजर प्रॉम्प्ट: यह विशिष्ट कार्य देता है। "यहाँ एक कोड ब्लॉक है। तीन प्रकार के लूप ट्रैप खोजें: लॉजिक एरर, सुरक्षा जोखिम और बर्बादी (waste)।"
  • गार्डरेल्स (Guardrails): निर्देश स्पष्ट रूप से AI को बताते हैं, "अनुमान न लगाएं। केवल वही रिपोर्ट करें जो आप देखते हैं। समस्याओं को मनगढ़ंत न बनाएं।"

प्रयोग: "टेस्ट ऑफ टेस्ट"

यह देखने के लिए कि क्या यह नया तरीका काम करता है, लेखकों ने एक कठोर परीक्षण आयोजित किया:

  1. गोल्ड स्टैंडर्ड: दो विशेषज्ञ मानव डेवलपर्स ने पायथन कोड के एक सेट की मैन्युअल रूप से समीक्षा की और जितनी भी लूप कमजोरियां उन्हें मिलीं, उन्हें चिह्नित किया। यह "उत्तर कुंजी" बन गई।
  2. प्रतियोगिता: उन्होंने वही कोड दो स्थानीय AI जासूसों को दिया: LLaMA (3B पैरामीटर्स) और Phi (4B पैरामीटर्स)।
  3. स्कोरकार्ड: उन्होंने AI द्वारा खोजी गई चीज़ों की तुलना मानव "उत्तर कुंजी" से तीन आंकड़ों का उपयोग करके की:
    • प्रिसिजन (Precision): क्या AI ने तब "भेड़िया आया!" चिल्लाया जब वहां कोई भेड़िया नहीं था? (गलत अलार्म)।
    • रिकॉल (Recall): क्या AI ने किसी वास्तविक भेड़िये को मिस कर दिया? (गलत नेगेटिव)।
    • F1-स्कोर: दोनों का एक संतुलन।

परिणाम: कौन जीता?

परिणाम स्पष्ट थे:

  • Phi (4B मॉडल) चैंपियन रहा। इसने बग्स को अधिक सटीकता से पाया और LLaMA की तुलना में कम गलतियाँ कीं। इसने लॉजिक एरर, सुरक्षा जोखिम और दक्षता की बर्बादी को खोजने में बहुत उच्च स्कोर (लगभग 90-95%) किया।
  • LLaMA (3B मॉडल) ने भी अच्छा काम किया, लेकिन यह Phi की तुलना में थोड़ा कम सटीक था।

अध्ययन ने पाया कि एक अच्छी तरह से तैयार किए गए "निर्देश मैनुअल" (प्रॉम्प्ट इंजीनियरिंग) का उपयोग करके, ये स्थानीय AI जासूस उन सूक्ष्म लूप कमजोरियों को पकड़ सकते थे जिन्हें पुराने "ग्रामर पुलिस" टूल्स पूरी तरह से मिस कर देते।

मुख्य निष्कर्ष

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

जो इस पेपर ने नहीं कहा:

  • इसने यह दावा नहीं किया कि यह सभी प्रकार के बग्स (जैसे कंकरेंसी इश्यूज जहाँ दो चीजें एक साथ होती हैं) के लिए काम करता है।
  • इसने यह दावा नहीं किया कि यह तुरंत हर उद्योग के लिए तैयार है; यह विशेष रूप से पायथन कोड पर एक अध्ययन था।
  • इसने मानव डेवलपर्स को बदलने का वादा नहीं किया, बल्कि उन्हें उनके कठिन बग्स को तेज़ी से खोजने में मदद करने के लिए एक शक्तिशाली नया टूल देने का वादा किया।

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

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

Digest आज़माएँ →