Leveraging Large Language Models for Trustworthiness Assessment of Web Applications
यह शोध पत्र एक ऐसी अनुभवजन्य कार्यप्रणाली का प्रस्ताव करता है जो वेब अनुप्रयोगों के विश्वासयोग्यता मूल्यांकन को स्वचालित करने के लिए लार्ज लैंग्वेज मॉडल्स (Large Language Models) का लाभ उठाती है, जो सुरक्षित कोडिंग प्रथाओं को सत्यापित करती है और एक समग्र विश्वासयोग्यता स्कोर उत्पन्न करने के लिए उनके आउटपुट को एक पदानुक्रमित गुणवत्ता मॉडल (hierarchical Quality Model) में एकीकृत करती है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक विशाल, हलचल भरे रेस्टोरेंट (वेब एप्लिकेशन) के मैनेजर हैं। आपके ग्राहक (उपयोगकर्ता) उम्मीद करते हैं कि खाना सुरक्षित हो, सेवा सुचारू हो और रसोई एकदम साफ-सुथरी हो। यदि एक अकेला शेफ अपनी उंगली काट लेता है और हाथ नहीं धोता, या यदि कोई वेटर ग्राहक का आईडी चेक करना भूल जाता है, तो पूरा रेस्टोरेंट बंद किया जा सकता है या उसकी प्रतिष्ठा धूमिल हो सकती है।
डिजिटल दुनिया में, इस "सुरक्षा" को विश्वसनीयता (Trustworthiness) कहा जाता है।
वर्षों से, यह जांचना कि क्या कोई रेस्टोरेंट सुरक्षित है, एक टीम के सुपर-एक्सपर्ट स्वास्थ्य निरीक्षकों (health inspectors) को रसोई में जाने, हर व्यंजन को चखने और हर रेसिपी बुक को पढ़ने के समान रहा है। यह धीमा, महंगा और स्केल करने में कठिन है। यदि आप प्रतिदिन 1,000 नए रेस्टोरेंट खोलते हैं, तो आप 1,000 निरीक्षक नहीं रख सकते।
यह शोध पत्र एक बड़ा सवाल पूछता है: क्या हम एक सुपर-स्मार्ट AI (एक लार्ज लैंग्वेज मॉडल या LLM) को हमारे स्वास्थ्य निरीक्षक के रूप में उपयोग कर सकते हैं?
यहाँ कहानी है कि कैसे उन्होंने इसे आज़माया, क्या गलत हुआ, और अंततः क्या काम आया।
समस्या: "चेकलिस्ट" बहुत कठिन है
पारंपरिक रूप से, सुरक्षा उपकरण विशिष्ट "बग्स" (जैसे दरवाजे पर टूटा हुआ ताला) की तलाश करते हैं। लेकिन क्या होगा यदि ताला ठीक है, लेकिन शेफ बस आलसी है और पीछे का दरवाजा खुला छोड़ देता है? यह एक सुरक्षित कोडिंग अभ्यास (Secure Coding Practice) का मुद्दा है।
इन अभ्यासों की जाँच करने के लिए आमतौर पर एक मानव विशेषज्ञ की आवश्यकता होती है जो कोड को पढ़े और कहे, "हाँ, इस शेफ ने नियम का पालन किया," या "नहीं, उन्होंने नहीं किया।" आधुनिक इंटरनेट के लिए यह बहुत धीमा है।
प्रयोग: AI निरीक्षक
शोधकर्ताओं ने पांच अलग-अलग AI "निरीक्षकों" (जैसे GPT-4, Gemini, आदि) का परीक्षण करने का निर्णय लिया कि क्या वे कोड को पढ़ सकते हैं और यह जांच सकते हैं कि क्या शेफ नियमों का पालन कर रहे हैं। उन्होंने एक विशिष्ट नियम पर ध्यान केंद्रित किया: इनपुट वैलिडेशन (Input Validation) (यह सुनिश्चित करना कि कोई रसोई में गंदी सामग्री न घुसा सके)।
उन्होंने AI से बात करने के चार अलग-अलग तरीके (जिन्हें प्रॉम्प्टिंग रणनीतियाँ कहा जाता है) आजमाए:
1. "बस पूछ लो" वाला दृष्टिकोण (बेसलाइन)
- उपमा: आप AI के पास जाते हैं और बिना किसी संदर्भ के पूछते हैं, "क्या यह कोड सुरक्षित है?"
- परिणाम: इसने सरल चीजों के लिए ठीक होने का अनुमान लगाया, लेकिन यह अक्सर भ्रमित हो जाता था। यह एक पर्यटक से यह पूछने जैसा था कि क्या कोई इमारत संरचनात्मक रूप से मजबूत है, बिना उन्हें ब्लूप्रिंट दिखाए। यह स्पष्ट चीजों के लिए काम करता था लेकिन पेचीदा विवरणों को मिस कर देता था।
2. "बुरे उदाहरण दिखाओ" वाला दृष्टिकोण (फ्यू-शॉट)
- उपमा: आप AI को एक ऐसे शेफ की तस्वीर दिखाते हैं जिसने हाथ नहीं धोए थे और कहते हैं, "ऐसा मत करो।"
- परिणाम: इससे सबसे स्मार्ट AI (GPT-4) और भी बेहतर हो गया। लेकिन छोटे, सस्ते AI के लिए, यह एक बच्चे को उन्नत रसायन विज्ञान की पाठ्यपुस्तक देने जैसा था—अतिरिक्त जानकारी से वे अभिभूत हो गए और उन्होंने अधिक गलतियाँ कीं।
3. "पूरी रसोई दिखाओ" वाला दृष्टिकोण (स्ट्रक्चरल कॉन्टेक्स्ट)
- उपमा: आप सोचते हैं, "हो सकता है कि शेफ सुरक्षित हो, लेकिन जिस सहायक से वह बात कर रहा है वह सुरक्षित न हो!" इसलिए, आप मुख्य शेफ का कोड साथ ही उस हर सहायक का कोड देते हैं जिससे वह बात करता है।
- परिणाम: तबाही। AI भ्रमित हो गया। यह एक जासूस को केवल अपराध स्थल दिखाने के बजाय किताबों का पुस्तकालय देने जैसा था। अतिरिक्त जानकारी "शोर" (noise) बन गई। AI सुई को घास के ढेर में नहीं ढूंढ पाया। इसने वास्तव में कम जानकारी देने की तुलना में बदतर प्रदर्शन किया।
4. "सख्त नियम पुस्तिका" वाला दृष्टिकोण (रूल-बेस्ड)
- उपमा: उदाहरण दिखाने या विशाल पुस्तकालयों के बजाय, आप AI को एक सरल, सख्त चेकलिस्ट देते हैं:
- नियम 1: यदि इनपुट उपयोगकर्ता से आता है, तो इसकी जाँच की जानी ही चाहिए।
- नियम 2: यदि इसकी जाँच नहीं की गई है, तो इसे FAIL मार्क करें।
- परिणाम: यह विजेता था। AI को स्पष्ट, चरण-दर-चरण निर्देश (एक रेसिपी की तरह) देने से, यहाँ तक कि छोटे, सस्ते AI भी आश्चर्यजनक रूप से अच्छे निरीक्षक बन गए। उन्होंने अनुमान लगाना बंद कर दिया और नियमों का पालन करना शुरू कर दिया।
अंतिम स्कोर: "ट्रस्ट स्कोर"
शोधकर्ता केवल यह नहीं चाहते थे कि AI "हाँ" या "नहीं" कहे। वे पूरे एप्लिकेशन के लिए एक ट्रस्ट स्कोर (0 से 100 तक) चाहते थे।
- प्रयास A: उन्होंने AI से पूछा, "मुझे 0 से 100 तक का स्कोर दें।"
- परिणाम: AI गणित में बहुत खराब था। उसने रैंडम नंबर दिए। वह विभिन्न गलतियों के महत्व को नहीं तौल सका।
- प्रयास B: उन्होंने चेकलिस्ट को चेक करने के लिए AI का उपयोग किया, और फिर स्कोर की गणना करने के लिए एक गणितीय सूत्र (जिसे क्वालिटी मॉडल कहा जाता है) का उपयोग किया।
- परिणाम: परफेक्ट। AI ने कोड पढ़ने का कठिन काम किया, और गणितीय सूत्र ने स्कोर की गणना करने का काम किया। इसने एक विश्वसनीय, स्केलेबल तरीका बनाया जिससे यह बताया जा सके कि एक वेब ऐप कितना भरोसेमंद है।
मुख्य निष्कर्ष
- अधिक जानकारी हमेशा बेहतर नहीं होती: AI को बहुत अधिक कोड देना ( "पूरी रसोई" वाला दृष्टिकोण) उसे भ्रमित कर देता है। कभी-कभी, कम ही ज्यादा होता है।
- उदाहरणों से बेहतर नियम होते हैं: सुरक्षा जांच के लिए, AI को बुरे कोड के उदाहरण दिखाने के बजाय एक सख्त नियम पुस्तिका देना बेहतर काम करता है।
- AI + गणित = विश्वास: आपको AI को गणितज्ञ बनने के लिए नहीं कहना चाहिए। AI को पाठक बनने दें, और सूत्र को स्कोरिंग करने दें। यह संयोजन एक ऐसा सिस्टम बनाता है जो हजारों ऐप्स को तेजी से और सटीकता से चेक कर सकता है।
यह क्यों महत्वपूर्ण है
भविष्य में, अपने ऐप की जांच करने के लिए मानव सुरक्षा टीम का महीनों तक इंतजार करने के बजाय, आप अपने कोड को इस सिस्टम में डाल सकते हैं। यह तुरंत आपको बताएगा, "आपका ऐप 85% भरोसेमंद है, लेकिन आपने लॉगिन सेक्शन में एक नियम मिस कर दिया है।" यह इंटरनेट को सुरक्षित, तेज़ और बनाने में सस्ता बनाता है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।