Evaluating LLMs Code Reasoning Under Real-World Context
यह शोध पत्र R2Eval प्रस्तुत करता है, जो दस वास्तविक दुनिया के पायथन प्रोजेक्ट्स से 135 कोड रीजनिंग समस्याओं वाला एक नया बेंचमार्क है, जो जटिल, कस्टम डेटा प्रकारों को सीरियलाइज़ करके मौजूदा मूल्यांकनों की सीमाओं को संबोधित करता है ताकि बड़े भाषा मॉडल (LLMs) की व्यावहारिक सामान्यीकरण क्षमता का बेहतर आकलन किया जा सके।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक रोबोट शेफ को खाना बनाना सिखा रहे हैं।
पुराना तरीका (मौजूदा बेंचमार्क):
अब तक, शोधकर्ता इन रोबोट शेफ का परीक्षण बहुत ही सरल "रेसिपी कार्ड" का उपयोग करके करते थे। वे कहते थे, "यहाँ सामग्रियों की एक सूची है: 2 अंडे, 1 कप मैदा। अब, मुझे बताओ कि अंतिम केक कैसा दिखता है।" या, "यहाँ एक केक है, मुझे बताओ कि इसमें कौन सी सामग्रियां डाली गई थीं।"
समस्या यह थी कि असली रसोई ऐसी नहीं होती। वास्तविक दुनिया में, सामग्रियां केवल "अंडे" या "मैदा" जैसी सरल चीजें नहीं होतीं। वे जटिल चीजें होती हैं जैसे "घर का बना जैम का एक जार जिसे हिलाने की जरूरत है," "एक कस्टम मसाला मिश्रण," या "एक आटा जिसे 50 बार गूंथा गया है।" पुराने परीक्षणों ने इन जटिलताओं को नजरअंदाज कर दिया। उन्होंने रोबोटों का परीक्षण केवल सरल, पहले से पैक की गई सामग्रियों पर किया। इसके परिणामस्वरूप, रोबोट इन परीक्षणों में जीनियस दिखाई देते थे, और 90% या उससे अधिक स्कोर करते थे।
नया तरीका (इस पेपर का "R2Eval"):
लेखक, चांगशू लियू (Changshu Liu) कहते हैं, "रुकिए एक मिनट। यदि हम जानना चाहते हैं कि क्या ये रोबट वास्तव में एक वास्तविक रेस्टोरेंट में खाना बना सकते हैं, तो हमें इनका परीक्षण वास्तविक, जटिल सामग्रियों के साथ करना होगा।"
इसलिए, उन्होंने एक नया परीक्षण बनाया जिसे R2Eval कहा जाता है। साधारण सूचियों के बजाय, उन्होंने दस प्रसिद्ध और जटिल पायथन सॉफ्टवेयर प्रोजेक्ट्स (जैसे वेबसाइट बनाने, डेटा विश्लेषण करने, या वैज्ञानिक चार्ट बनाने के लिए उपयोग किए जाने वाले टूल्स) से 135 वास्तविक दुनिया के "रेसिपी" लिए।
बड़ी बाधा: "ब्लैक बॉक्स" की समस्या
यहाँ पेचीदा हिस्सा है। वास्तविक दुनिया में, कुछ सामग्रियां "ब्लैक बॉक्स" होती हैं। आप केवल एक जटिल सॉफ्टवेयर ऑब्जेक्ट को देखकर यह नहीं कह सकते कि "यह एक नंबर है।" यह एक कस्टम ऑब्जेक्ट हो सकता है जिसका कोई लेबल नहीं है। यदि आप इसे प्रिंट करने की कोशिश करते हैं, तो आपको वास्तविक डेटा के बजाय केवल एक रैंडम कोड जैसे 0x4f3a2 (एक मेमोरी एड्रेस) प्राप्त होता है।
इसे हल करने के लिए, लेखक ने एक विशेष "अनुवादक" (Translator) (एक प्रोग्राम विश्लेषण टूल) का आविष्कार किया। यह अनुवादक इन भ्रमित करने वाले, जटिल "ब्लैक बॉक्स" ऑब्जेक्ट्स को लेता है और उन्हें एक सरल, पठनीय JSON फॉर्मेट (एक विस्तृत शॉपिंग लिस्ट की तरह) में तोड़ देता है जिसे AI वास्तव में समझ सके।
चौंका देने वाला परिणाम
जब उन्होंने परीक्षण किए:
- पुराने सरल परीक्षणों पर: AI शेफ सुपरस्टार थे, और लगभग 80% से 90% सही रहे।
- नए वास्तविक-दुनिया के परीक्षणों पर: उनका प्रदर्शन धड़ाम से गिर गया।
- आउटपुट (कोड क्या करता है) का अनुमान लगाने में 52% की गिरावट आई।
- इनपुट (किस डेटा की आवश्यकता थी) का अनुमान लगाने में भारी 64% की गिरावट आई।
निष्कर्ष (The Takeaway)
इसे इस तरह सोचिए: AI एक ऐसे छात्र की तरह था जिसने "कार क्या है?" पर आधारित मल्टीपल-चॉइस क्विज़ में तो टॉप किया, लेकिन जब उसे एक वास्तविक, जटिल वाहन थमाया गया जिसमें गियर शिफ्ट चिपचिपा था और इंजन से अजीब आवाज आ रही थी, तो वह ड्राइविंग टेस्ट में फेल हो गया।
पेपर यह निष्कर्ष निकालता है कि हालांकि AI मॉडल तर्क (logic) में बेहतर हो रहे हैं, लेकिन वे वास्तविक सॉफ्टवेयर इंजीनियरिंग की अव्यवस्थित, परस्पर जुड़ी और जटिल वास्तविकता का सामना करने पर अभी भी बहुत नाजुक हैं। यदि हम चाहते हैं कि वे वास्तव में उपयोगी बनें, तो हमें उन्हें "खिलौना समस्याओं" (toy problems) पर टेस्ट करना बंद करना होगा और वास्तविक चीजों के साथ उनका परीक्षण करना शुरू करना होगा।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।