Benchmarking Text-to-Python against Text-to-SQL: The Impact of Explicit Logic and Ambiguity
यह शोध पत्र BIRD-Python बेंचमार्क और लॉजिक कंप्लीशन फ्रेमवर्क (Logic Completion Framework) को प्रस्तुत करता है ताकि यह प्रदर्शित किया जा सके कि एक बार जब सिस्टम कोड जनरेशन प्रक्रिया में लेटेंट डोमेन नॉलेज (latent domain knowledge) को शामिल करके अस्पष्टता को प्रभावी ढंग से हल कर लेते हैं, तो टेक्स्ट-टू-पायथन (Text-to-Python), टेक्स्ट-टू-एसक्यूएल (Text-to-SQL) के प्रदर्शन के बराबर प्रदर्शन प्राप्त कर सकता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप फाइलों के एक बिखरे हुए ढेर से जानकारी प्राप्त करने के लिए दो अलग-अलग प्रकार के सहायकों को निर्देश देने की कोशिश कर रहे हैं।
पुराना तरीका: "जादुई डिब्बा" (Text-to-SQL)
लंबे समय से, हम Text-to-SQL नामक एक प्रणाली का उपयोग कर रहे हैं। इसे एक बहुत ही सख्त, जादुई लाइब्रेरियन की तरह समझें जो केवल एक विशिष्ट, व्यवस्थित फाइलिंग कैबिनेट (डेटाबेस) के साथ काम करता है।
- यह कैसे काम करता है: आप कहते हैं, "मुझे 2020 की सभी लाल किताबें ढूँढ कर दें।"
- जादू: लाइब्रेरियन को कैबिनेट के नियम पता हैं। यदि आप यह नहीं बताते कि "लापता" किताबों के साथ क्या करना है, तो लाइब्रेरियन उन्हें स्वचालित रूप से छिपा देता है। यदि आप यह नहीं बताते कि उन्हें कैसे क्रमबद्ध करना है, तो लाइब्रेरियन उन्हें डिफ़ॉल्ट रूप से वर्णानुक्रम (alphabetically) में व्यवस्थित कर देता है। आपको यह समझाने की ज़रूरत नहीं है कि किताबें कैसे ढूँढनी हैं; आपको बस यह बताना है कि आप क्या चाहते हैं।
- समस्या: यह केवल तभी काम करता है जब आपका डेटा पहले से ही उस विशिष्ट फाइलिंग कैबिनेट के अंदर हो। यदि आपका डेटा बिखरे हुए कागजों, एक्सेल शीटों या पीडीएफ (PDFs) में है, तो लाइब्रेरियन आपकी मदद नहीं कर सकता।
नया तरीका: "रोबोट इंटर्न" (Text-to-Python)
चूंकि वास्तविक दुनिया का डेटा अक्सर अव्यवस्थित और बिखरा हुआ होता है, इसलिए शोधकर्ताओं ने Text-to-Python का उपयोग करने का विचार किया। यह एक स्मार्ट रोबोट इंटर्न को काम पर रखने जैसा है जो किसी भी फ़ाइल प्रारूप को पढ़ सकता है और शक्तिशाली उपकरणों (जैसे कैलकुलेटर या स्प्रेडशीट प्रोग्राम) का उपयोग करके काम कर सकता है।
- यह कैसे काम करता है: आप कहते हैं, "मुझे 2020 की सभी लाल किताबें ढूँढ कर दें।"
- वास्तविकता: रोबोट के पास कोई जादुई फाइलिंग कैबिनेट नहीं है। उसे बिल्कुल सटीक बताया जाना चाहिए कि क्या करना है। "फाइल खोलें। वर्ष वाले कॉलम को देखें। जाँच करें कि क्या वह 2020 है। जाँच करें कि क्या रंग लाल है। ओह, और अगर किसी पंक्ति में वर्ष नहीं है तो क्या होगा? क्या आप उसे छोड़ देंगे? क्या आप उसे गिनेंगे? अंतिम सूची को कैसे क्रमबद्ध किया जाए?"
- मुद्दा: क्योंकि रोबोट को हर एक कदम विस्तार से बताना पड़ता है, इसलिए यदि आप कुछ भी अनकहा छोड़ देते हैं, तो वह आसानी से भ्रमित हो जाता है। यदि आप यह निर्दिष्ट नहीं करते हैं कि लापता डेटा को कैसे संभालना है, तो रोबोट क्रैश हो सकता है या गलत उत्तर दे सकता है।
बड़ा प्रयोग
इस शोध पत्र के लेखकों ने यह देखना चाहा: क्या यह रोबोट इंटर्न उसी काम को अधिक लचीलेपन के साथ कर सकता है जो लाइब्रेरियन करता है?
इसका परीक्षण करने के लिए, उन्होंने लाइब्रेरियन के लिए डिज़ाइन किए गए एक प्रसिद्ध परीक्षण (जिसे BIRD कहा जाता है) को लिया और उसे रोबोट के लिए फिर से लिखा।
- परीक्षण की सफाई: उन्होंने पाया कि मूल परीक्षण प्रश्नों में कुछ "शोर" (उत्तरों में गलतियाँ) था। उन्होंने इसे ठीक किया ताकि परीक्षण निष्पक्ष हो सके।
- नियमों का अनुवाद: उन्होंने उन "जादुई" नियमों को लिया जिनका लाइब्रेरियन स्वचालित रूप से पालन करता था और उन्हें रोबोट के लिए स्पष्ट निर्देशों के रूप में लिख दिया।
उन्होंने क्या पाया
- अंतर: शुरुआत में, रोबोट (Python) लाइब्रेरियन (SQL) से कमतर लग रहा था। छोटे, कम बुद्धिमान मॉडल संघर्ष कर रहे थे क्योंकि वे सभी छिपे हुए चरणों को समझने में असमर्थ थे।
- असली अपराधी: हालाँकि, जब उन्होंने करीब से देखा, तो उन्हें एहसास हुआ कि रोबोट "मूर्ख" नहीं था। समस्या यह थी कि प्रश्न अस्पष्ट थे। प्रश्नों ने यह मान लिया था कि रोबोट उन चीजों को जानता है जो वह नहीं जानता (जैसे "लापता संख्याओं के साथ क्या करना है")।
- समाधान (द "लॉजिक कंप्लीशन फ्रेमवर्क"): लेखकों ने एक सहायक प्रणाली बनाई। रोबोट द्वारा कोड लिखने का प्रयास करने से पहले, यह सहायक पूछता है: "रुको, आपके 'लापता संख्याओं' से क्या तात्पर्य है? क्या हमें उन्हें अनदेखा करना चाहिए या उन्हें शून्य के रूप में गिनना चाहिए?" एक बार जब रोबोट को यह स्पष्ट उत्तर मिल जाता है, तो वह लाइब्रेरियन के समान ही प्रदर्शन करता है।
निष्कर्ष
लेख का निष्कर्ष यह है कि Text-to-Python उतना ही अच्छा है जितना कि Text-to-SQL, बशर्ते आप AI को मन पढ़ने वाला (mind-reader) समझना बंद कर दें।
- SQL एक जादुई डिब्बे की तरह है जो आपके लिए खाली जगहों को भर देता है।
- Python एक प्रतिभाशाली लेकिन अत्यंत शाब्दिक (literal-minded) सहायक की तरह है। यह कुछ भी कर सकता है, लेकिन आपको बहुत विशिष्ट होना होगा।
यदि आप सहायक को स्पष्ट, पूर्ण निर्देश (लॉजिक गैप्स को भरना) देते हैं, तो वह पारंपरिक डेटाबेस प्रणालियों की तरह ही जटिल, अव्यवस्थित डेटा को संभाल सकता है। यह शोध सिद्ध करता है कि सीमा AI की कोड लिखने की क्षमता में नहीं, बल्कि हमारे स्पष्ट प्रश्न पूछने की क्षमता में है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।