Hallucination Inspector: A Fact-Checking Judge for API Migration
यह शोध पत्र 'हैलुसिनेशन इंस्पेक्टर' (Hallucination Inspector) को प्रस्तुत करता है, जो एक स्टैटिक एनालिसिस टूल है जो API डॉक्यूमेंटेशन के विरुद्ध निकाले गए प्रतीकों (symbols) को सत्यापित करके LLM-जनरेटेड API माइग्रेशन कोड में "स्कैफोल्डिंग हेलुसिनेशन्स" (scaffolding hallucinations) का पता लगाता है, जिससे मानक मेट्रिक्स और संभाव्य जजों (probabilistic judges) की सीमाओं को दूर किया जा सके।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक बहुत ही प्रतिभाशाली, लेकिन थोड़े अति-आत्मविश्वासी प्रशिक्षु शेफ (apprentice chef) को एक आधुनिक रसोई के लिए पुरानी पारिवारिक रेसिपी को फिर से लिखने के लिए काम पर रख रहे हैं। पुरानी रेसिपी में एक विशिष्ट, दुर्लभ मसाले का उपयोग किया गया है जो अब बिकता नहीं है। शेफ जानता है कि उसे नए मसाले का अवधारणा (concept) पता है, लेकिन जब वास्तव में खाना पकाने की बारी आती है, तो वह मनगढ़ंत बातें बनाने लगता है।
वह कह सकता है, "मैं नए मसाले का उपयोग करूँगा, लेकिन मुझे इसे एक 'मैजिक व्हिस्क' (जादुई फेंटनी) के साथ मिलाना होगा जो अस्तित्व में ही नहीं है," या "मैं इसे 'भाग्य की चांदी की चम्मच' से मिलाऊंगा जो कभी बनाई ही नहीं गई थी।" कागज़ पर व्यंजन स्वादिष्ट दिखता है, और सामग्री की सूची 90% सही है, लेकिन जैसे ही आप खाना बनाना शुरू करते हैं, वे काल्पनिक उपकरण होने के कारण रसोई में विस्फोट हो जाता है।
यह पेपर एक नए टूल के बारे में है जिसे Hallucination Inspector कहा जाता है, जो एक सख्त, तथ्य-जांच करने वाले हेड शेफ की तरह काम करता है ताकि खाना शुरू होने से पहले ही इन गलतियों को पकड़ा जा सके।
यहाँ समस्या और समाधान का विवरण दिया गया है, सरल उपमाओं (analogies) का उपयोग करके:
1. समस्या: "स्कैफोल्डिंग हेलुसिनेशन" (Scaffolding Hallucination)
जब कंप्यूटर (विशेष रूप से लार्ज लैंग्वेज मॉडल्स या LLMs) पुराने सॉफ़्टवेयर कोड को नए सिस्टम के साथ काम करने के लिए अपडेट करने की कोशिश करते हैं (API माइग्रेशन), तो वे बड़े चित्र (big picture) को समझने में अच्छे होते हैं। वे जानते हैं, "ठीक है, हम अब MediaPlayer का उपयोग नहीं कर रहे हैं; हमें AudioAttributes का उपयोग करना चाहिए।"
हालाँकि, वे ग्लू कोड (glue code)—उन छोटे, उबाऊ विवरणों में बहुत खराब हैं जो संरचना को एक साथ जोड़ते हैं।
- गलती: कंप्यूटर "फैंटम सिम्बल्स" (Phantom Symbols - काल्पनिक प्रतीक) का आविष्कार करता है। ये काल्पनिक इम्पोर्ट्स, नकली कॉन्स्टेंट्स या मेथड्स हैं जो वास्तविक दिखते हैं लेकिन आधिकारिक डॉक्यूमेंटेशन में मौजूद नहीं होते हैं।
- उपमा: यह एक शेफ द्वारा लिखने जैसा है, "एक चुटकी यूनिकॉर्न डस्ट डालें।" रेसिपी एकदम सही दिखती है, लेकिन आप यूनिकॉर्न डस्ट खरीद नहीं सकते। यदि आप निर्देशों का पालन करने का प्रयास करते हैं, तो रेसिपी विफल हो जाती है।
2. पुराने टूल्स क्यों विफल रहे
शोधकर्ताओं ने यह जांचने के लिए मानक तरीकों का उपयोग करने की कोशिश की कि क्या कोड अच्छा था, लेकिन वे बुरी तरह विफल रहे:
- "सिमिलैरिटी स्कोर" (CodeBLEU): यह एक शिक्षक द्वारा निबंध को ग्रेड देने जैसा है जो "परफेक्ट" निबंध के साथ कितने शब्द मेल खाते हैं, इसकी गिनती करता है। यदि शेफ एक ऐसी रेसिपी लिखता है जो वास्तविक रेसिपी के 95% समान है, लेकिन इसमें एक नकली सामग्री ("यूनिकॉर्न डस्ट") शामिल है, तो सिमिलैरिटी स्कोर अभी भी 95% ही रहेगा। टूल कहता है, "बहुत बढ़िया काम!" जबकि व्यंजन वास्तव में खाने योग्य नहीं होता है।
- "AI जज" (LLM-as-a-Judge): यह दूसरे AI शेफ से पहले शेफ के काम की जांच करने के लिए पूछने जैसा है। लेकिन चूंकि दोनों शेफ दिवास्वप्न देखने के आदी हैं, दूसरा शेफ अक्सर पहले वाले से सहमत हो जाता है, कहता है, "हाँ, यूनिकॉर्न डस्ट सही लग रहा है!" या भ्रमित होकर एक बेहतरीन रेसिपी को भी खारिज कर देता है। वे बहुत अधिक आशावादी या पक्षपाती होते हैं।
3. समाधान: Hallucination Inspector
लेखकों ने एक नया टूल बनाया जिसे Hallucination Inspector कहा जाता है। अनुमान लगाने या शब्दों को गिनने के बजाय, यह टूल एक सख्त नियम पुस्तिका के साथ एक तथ्य-जांच करने वाले लाइब्रेरियन की तरह काम करता है।
यह इस प्रकार काम करता है:
- नियम पुस्तिका (The Oracle): इस टूल के पास आधिकारिक API डॉक्यूमेंटेशन की एक डिजिटल प्रति है। यह "सत्य" है। यह जानता है कि कौन से उपकरण, सामग्रियां और मेथड्स मौजूद हैं। इसके अलावा कुछ भी मान्य नहीं है।
- स्कैन (Static Analysis): यह AI द्वारा जेनरेट किए गए कोड को लेता है और उसे उसके सबसे छोटे हिस्सों में तोड़ देता है (जैसे एक वाक्य का विश्लेषण)।
- दो-चरणीय जांच:
- चरण 1: एटॉमिक चेक (Atomic Check): क्या यह विशिष्ट शब्द (जैसे कोई कॉन्स्टेंट या क्लास का नाम) नियम पुस्तिका में मौजूद है? यदि कोड कहता है "यूनिकॉर्न डस्ट," तो लाइब्रेरियन किताब की जांच करता है, कुछ भी नहीं पाता, और तुरंत इसे फ्लैग कर देता है।
- चरण 2: कॉन्टेक्स्ट चेक (Context Check): क्या यह टूल इस विशिष्ट स्थिति में समझ में आता है? उदाहरण के लिए, हो सकता है कि "व्हिस्क" (Whisk) मौजूद हो, लेकिन आप इसका उपयोग केवल केक पर कर सकते हैं, सूप पर नहीं। यदि कोड "सूप" पर "व्हिस्क" का उपयोग करने का प्रयास करता है, तो टूल इस बेमेल (mismatch) को पकड़ लेता है।
4. परिणाम
जब उन्होंने एंड्रॉइड ऐप अपडेट पर इसका परीक्षण किया:
- पुराने मेट्रिक्स: लगभग सभी नकली सामग्रियों को मिस कर गए क्योंकि रेसिपी असली वाली जैसी ही दिख रही थी।
- AI जज: भ्रमित हो गए और अपने खुद के नियम बनाने लगे, जिससे अक्सर खराब कोड को मंजूरी मिल गई या अच्छे कोड को खारिज कर दिया गया।
- Hallucination Inspector: इसने बिना किसी गलत अलार्म के 100% नकली सामग्रियों (फैंटम सिम्बल्स) को पकड़ लिया। यह एकमात्र टूल था जिसने कहा, "रुको! यह टूल आधिकारिक मैनुअल में मौजूद नहीं है।"
मुख्य निष्कर्ष (The Big Takeaway)
सॉफ्टवेयर की दुनिया में, AI कोड की "कहानी" लिखने में बहुत अच्छा है, लेकिन यह अक्सर "तथ्यों" का आविष्कार कर देता है। आप केवल AI को अपना काम खुद चेक करने के लिए नहीं कह सकते, और आप केवल यह नहीं देख सकते कि कोड मूल के कितना समान है।
आपको एक डिटरमिनिस्टिक फैक्ट-चेकर (deterministic fact-checker) की आवश्यकता है—एक ऐसा टूल जो अनुमान नहीं लगाता, बल्कि हर एक शब्द की आधिकारिक मैनुअल के साथ तुलना करता है। Hallucination Inspector वही टूल है, जो यह सुनिश्चित करता है कि जब AI सॉफ़्टवेयर माइग्रेट करने में मदद करता है, तो वह हमें काल्पनिक सामग्रियों वाली रेसिपी न दे दे।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।