FlexSQL: Flexible Exploration and Execution Make Better Text-to-SQL Agents
FlexSQL एक टेक्स्ट-टू-SQL एजेंट पेश करता है जो एक लचीले डिज़ाइन सिद्धांत का उपयोग करके Spider2-Snow बेंचमार्क पर अधिक शक्तिशाली मॉडलों से बेहतर प्रदर्शन करता है, जो तर्क प्रक्रिया के दौरान गतिशील स्कीमा अन्वेषण, डेटा निरीक्षण और विविध निष्पादन योजनाओं को सक्षम करने के लिए एक दो-स्तरीय मरम्मत तंत्र का उपयोग करता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक जासूस हैं जो एक रहस्य सुलझाने की कोशिश कर रहे हैं, लेकिन आपका "क्राइम सीन" कोई अपराध स्थल नहीं, बल्कि लाखों किताबों, फाइलों और डेटा पॉइंट्स से भरी एक विशाल, अराजक लाइब्रेरी है। आपके बॉस ने आपको एक अस्पष्ट सुराग दिया है: "2014 की शुरुआत में फाइल किए गए मैटेरियल्स साइंस (पदार्थ विज्ञान) के सभी पेटेंट खोजें और देखें कि वे कितने पुराने पेटेंटों का उल्लेख करते हैं।"
वर्तमान के अधिकांश कंप्यूटर प्रोग्राम जो इस तरह के काम को करने की कोशिश करते हैं, वे एक कठोर रोबोट की तरह होते हैं। उन्हें शुरुआत में ही लाइब्रेरी का एक नक्शा दे दिया जाता है। वे उस नक्शे के आधार पर कुछ अलमारियां चुनते हैं, निर्देशों की एक सूची (क्वेरी) लिखते हैं, और फिर उसे चलाने की कोशिश करते हैं। यदि वे फंस जाते हैं या उत्तर गलत होता है, तो वे अपने निर्देशों में केवल छोटी-मोटी गलतियों को ही सुधार सकते हैं। वे वापस जाकर यह नहीं कह सकते कि, "रुको, मैंने पूरी तरह से गलत अलमारियां चुनी थीं," या "मुझे पता नहीं था कि 'मैटेरियल्स साइंस' 'MS-01' जैसे एक कोड के नीचे छिपा हुआ था।" वे अपनी शुरुआती गलती के साथ फंसे रह जाते हैं।
FlexSQL एक नए प्रकार का डिटेक्टिव एजेंट है जो एक जिज्ञासु मानव खोजकर्ता की तरह व्यवहार करता है। कठोर होने के बजाय, यह लचीला है। यह कैसे काम करता है, इसे सरल उपमाओं (analogies) का उपयोग करके यहाँ समझाया गया है:
1. "लचीला खोजकर्ता" (Flexible Interaction)
लाइब्रेरी के नक्शे को एक बार देखने और एक रास्ते पर अडिग रहने के बजाय, FlexSQL को सोचते समय लाइब्रेरी में घूमना-फिरना की अनुमति है।
- पुराना तरीका: रोबोट नक्शा देखता है, अनुमान लगाता है कि "मैटेरियल्स साइंस" "साइंस" सेक्शन में है, और अपनी सूची लिखना शुरू कर देता है।
- FlexSQL का तरीका: एजेंट कहता है, "मुझे यकीन नहीं है कि 'मैटेरियल्स साइंस' कहाँ है। मुझे 'टेक्नोलॉजी' सेक्शन में जाकर, एक बॉक्स के अंदर झाँकने और उसके लेबल पढ़ने दें।"
- यह शेल्फ को ब्राउज़ करने (स्कीमा), बक्सों की वास्तविक सामग्री को पढ़ने (डेटा वैल्यूज), और छोटे परीक्षण सर्च चलाने के लिए विशेष उपकरणों का उपयोग करता है ताकि यह देख सके कि उसके अनुमान सही हैं या नहीं। यदि उसे एहसास होता है कि वह गलत गलियारे में है, तो वह तुरंत मुड़कर सही गलियारे में जा सकता है। वह किसी डेड एंड (बंद गली) में नहीं फंसता।
2. "विचार मंथन टीम" (Diverse Planning)
सुराग "पुराने पेटेंट जिनमें से प्रत्येक का उल्लेख किया गया है" पेचीदा है। क्या इसका मतलब केवल घरेलू पेटेंट है? विदेशी भी? पेंडिंग आवेदन भी?
- पुराना तरीका: रोबोट एक व्याख्या चुनता है (जैसे, "केवल घरेलू") और उसी पर टिका रहता है। यदि वह गलत है, तो पूरा उत्तर गलत होगा।
- FlexSQL का तरीका: यह एक विचार मंथन करने वाली जासूसों की टीम की तरह काम करता है। यह एक साथ कई अलग-अलग सिद्धांत (योजनाएं) बनाता है।
- योजना A: केवल घरेलू उद्धरणों (citations) को गिनें।
- योजना B: घरेलू और विदेशी दोनों को गिनें।
- योजना C: पेंडिंग ऐप्स सहित सब कुछ गिनें।
यह इन सभी सिद्धांतों को चलाता है और फिर "बहुमत के वोट" को यह तय करने देता है कि कौन सा उत्तर सबसे अधिक सही होने की संभावना है। इस तरह, भले ही एक सिद्धांत गलत हो, टीम सही उत्तर तक पहुँच सकती है।
3. "द्विभाषी अनुवादक" (Flexible Execution)
कभी-कभी, एक कार्य इतना जटिल होता है कि उसे एक सीधी रेखा वाले निर्देश (SQL) के रूप में नहीं लिखा जा सकता। इसके लिए एक लूप, एक "यदि-तो" निर्णय, या चरण-दर-चरण गणना की आवश्यकता हो सकती है जो डेटाबेस भाषा में लिखना बहुत कठिन होता है।
- पुराना तरीका: रोबोट सब कुछ एक कठोर SQL वाक्य में डालने की कोशिश करता है, जिससे यह अक्सर बहुत जटिल और टूटने के प्रति संवेदनशील हो जाता है।
- FlexSQL का तरीका: यह द्विभाषी है। यह निर्देशों को SQL (वह भाषा जिसे डेटाबेस समझते हैं) या Python (एक लचीली प्रोग्रामिंग भाषा) में लिख सकता है।
- यदि कार्य एक साधारण सूची है, तो यह SQL का उपयोग करता है।
- यदि कार्य के लिए जटिल लूप या चरण-दर-चरण गणना की आवश्यकता है, तो यह पहले पायथन स्क्रिप्ट लिखता है क्योंकि इस तरह सोचना आसान होता है।
- एक बार जब पायथन स्क्रिप्ट पूरी तरह से काम करने लगती है, तो यह अंतिम परिणाम को वापस SQL में अनुवादित करता है ताकि डेटाबेस इसे समझ सके। यह एक जटिल रेसिपी को पहले नोटबुक में लिखने जैसा है, फिर उसे आधिकारिक किचन ऑर्डर में अनुवादित करना।
4. "दोबारा करने का बटन" (Backtracking)
यदि FlexSQL एक योजना लिखता है और फिर उसे एहसास होता है कि, "ओह नहीं, मैंने सवाल को पूरी तरह से गलत समझा है," तो यह केवल कोड को ठीक करने की कोशिश नहीं करता। यह बैकट्रैक बटन दबाता है। यह बिल्कुल शुरुआत में वापस जाता है, लाइब्रेरी के शेल्फों की फिर से जांच करता है, अपनी पूरी रणनीति बदल देता है, और एक नई योजना के साथ शुरू करता है। यह एक टूटी हुई नींव को ठीक करने में समय बर्बाद करने से बचाता है।
परिणाम
इस शोध पत्र ने इस "लचीले जासूस" का परीक्षण Spider2 नामक एक बहुत कठिन बेंचमार्क पर किया, जो विशाल, वास्तविक दुनिया के कॉर्पोरेट डेटाबेस का अनुकरण करता है।
- स्कोर:
gpt-oss-120bमॉडल का उपयोग करते हुए, FlexSQL ने 65.4% स्कोर किया। - तुलना: यह स्कोर अन्य शीर्ष सिस्टम से अधिक था जिन्होंने बहुत बड़े और अधिक शक्तिशाली मॉडलों (जैसे
DeepSeek-R1याgpt-o3) का उपयोग किया था। - निष्कर्ष: लचीला होने के कारण—लाइब्रेरी में घूमने, कई सिद्धांतों पर विचार करने, दो भाषाएं बोलने और जरूरत पड़ने पर "अनडू" (undo) करने की क्षमता के कारण—FlexSQL ने छोटे दिमाग के बावजूद "कठोर रोबोटों" से बेहतर समस्याओं को हल किया।
संक्षेप में, FlexSQL साबित करता है कि बड़े डेटा की जटिल दुनिया में, लचीलापन कठोरता पर भारी पड़ता है। एक ऐसा एजेंट बनना बेहतर है जो खोज सके, अनुकूलित हो सके और अपना मन बदल सके, बजाय एक ऐसे एजेंट के जो जिद के साथ एक ही पूर्व-लिखित नक्शे का पालन करता रहे।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।