← नवीनतम पेपर
💻 computer science

Automating Database-Native Function Code Synthesis with LLMs

यह शोधपत्र DBCooker को प्रस्तुत करता है, जो एक LLM-आधारित प्रणाली है जो फंक्शन कैरेक्टराइजेशन (function characterization), हाइब्रिड कोडिंग ऑपरेशन्स (hybrid coding operations) और मल्टी-लेवल वैलिडेशन (multi-level validation) से जुड़ी एक विशिष्ट तीन-घटक वास्तुकला के माध्यम से जटिल डेटाबेस-नेटिव फंक्शन्स के संश्लेषण को स्वचालित करता है, जिससे प्रमुख डेटाबेस प्रणालियों में मौजूदा विधियों की तुलना में काफी अधिक सटीकता प्राप्त होती है।

मूल लेखक: Wei Zhou, Xuanhe Zhou, Qikang He, Guoliang Li, Bingsheng He, Quanqing Xu, Fan Wu

प्रकाशित 2026-04-09
📖 7 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Wei Zhou, Xuanhe Zhou, Qikang He, Guoliang Li, Bingsheng He, Quanqing Xu, Fan Wu

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

🍳 समस्या: वह "शेफ" जो रेसिपी बुक पढ़ नहीं सकता

कल्पना कीजिए कि व्यंजनों (recipes) की एक विशाल, प्राचीन लाइब्रेरी है (एक डेटाबेस) जैसे कि PostgreSQL या SQLite। इस लाइब्रेरी में पहले से ही हजारों व्यंजन (functions) तैयार हैं, जैसे कि date_trunc (तारीख को घंटे तक काटना) या sqrt (वर्गमूल)।

अब, कल्पना कीजिए कि कोई व्यवसाय इस मेनू में एक नया व्यंजन जोड़ना चाहता है, मान लीजिए एक "सुपर-कूल-डेट-फॉर्मेटर" (Super-Cool-Date-Formatter)।

अतीत में, एक मानव मास्टर शेफ (एक डेटाबेस डेवलपर) को यह करना पड़ता था:

  1. नियम पुस्तिका पढ़ना: यह समझना कि लाइब्रेरी नए व्यंजनों को रजिस्टर करने के लिए ठीक कैसे चाहती है।
  2. सही पेंट्री ढूँढना: उस विशिष्ट फ़ाइल का पता लगाना जहाँ यह व्यंजन होना चाहिए।
  3. मौजूदा सामग्रियों का उपयोग करना: हर सब्जी को शुरू से काटने के बजाय, उन्हें पहले से कटे हुए प्याज या मसालों (मौजूदा कोड ब्लॉक्स) को ढूँढना और उनमें मिलाना।
  4. सख्त सुरक्षा नियमों का पालन करना: यदि उन्होंने गलत चाकू का उपयोग किया या सुरक्षा का कोई चरण भूल गए, तो पूरी रसोई में आग लग सकती है (डेटाबेस क्रैश हो सकता है)।

समस्या: यह अविश्वसनीय रूप से कठिन है। इसमें घंटों लगते हैं, और एक छोटी सी गलती पूरे सिस्टम को खराब कर सकती है।

"AI शेफ" की समस्या: हाल ही में, हमें AI शेफ (Claude या GPT जैसे Large Language Models) मिले जो जेनेरिक कोड लिखने में माहिर हैं। लेकिन जब आप उन्हें इस विशिष्ट डेटाबेस रसोई में खाना पकाने के लिए कहते हैं, तो वे विफल हो जाते हैं।

  • वे भ्रमित (Hallucinate) होते हैं: वे ऐसी सामग्रियां बना देते हैं जो अस्तित्व में ही नहीं हैं।
  • वे खो जाते हैं: वे खाना बनाने के बजाय सारा समय पेंट्री ढूँढने में बिता देते हैं।
  • वे नियमों को अनदेखा करते हैं: वे भूल जाते हैं कि इस विशिष्ट रसोई में, खाना पकाने से पहले आपको उसे एक विशिष्ट बहीखाते (ledger) में दर्ज करना होगा।

🤖 समाधान: DBCooker का परिचय

लेखकों ने DBCooker नामक एक नया सिस्टम बनाया है। DBCooker को केवल एक AI न समझें, बल्कि इसे एक सुपर-इंटेलिजेंट किचन मैनेजर के रूप में देखें जो AI शेफ को हर बार सही ढंग से खाना पकाने में मदद करता है।

DBCouncer के पास तीन मुख्य "सुपरपावर्स" (मॉड्यूल) हैं जो ऊपर दी गई समस्याओं को हल करते हैं:

1. "मेनू और इन्वेंटरी" स्काउट (Function Characterization)

AI खाना शुरू करने से पहले, DBCooker एक स्काउट की तरह काम करता है।

  • यह क्या करता है: यह केवल AI से यह नहीं पूछता कि "डेट फंक्शन क्या है?" बल्कि यह लाइब्रेरी के अभिलेखागार (archives) में जाता है, आधिकारिक नियम पुस्तिकाएं पढ़ता है और कोड को स्कैन करता है।
  • उपमा: कल्पना कीजिए कि AI एक पर्यटक है जो पूछ रहा है, "मैं सैंडविच कैसे बनाऊं?" DBCucker एक स्थानीय गाइड है जो कहता है, "वास्तव में, इस रसोई में, आप सिर्फ सैंडविच नहीं बनाते। आपको इसे बहीखाते में 'सैंडविच-यूनिट A' के रूप में दर्ज करना होगा, पीछे की शेल्फ से 'ब्रेड-ब्लॉक 3' का उपयोग करना होगा, और इसे 'मेयो-मैक्रो 5' के साथ मिलाना होगा।"
  • परिणाम: AI को पता होता है कि उसे क्या बनाना है और उसे बने-बनाए हिस्सों को कहाँ ढूँढना है।

2. "खाली स्थान भरने वाला" सहायक (Progressive Synthesis)

AI को शुरुआत से 50 पन्नों का उपन्यास लिखने के लिए कहने के बजाय, DBCooker उसे एक टेम्पलेट देता है।

  • यह क्या करता है: यह कोड का एक "कंकाल" (skeleton) बनाता है। यह कहता है, "यहाँ संरचना है। आपको बस 'मंगलवार' के केस के लिए लॉजिक भरना है। ओह, और यहाँ 'मेयो-मैक्रो 5' का सटीक कोड स्निपेट है जिसे आपको कॉपी-पेस्ट करना है।"
  • उपमा: यह एक छात्र को खाली निबंध लिखने के बजाय 'रिक्त स्थान भरें' (fill-in-the-blank) वाली वर्कशीट देने जैसा है। छात्र (AI) को केवल कठिन हिस्सों पर ध्यान केंद्रित करना होता है, जबकि उबाऊ, दोहराव वाले हिस्से पहले से ही संभाले जा चुके होते हैं।
  • सुरक्षा जाल (Safety Net): यदि AI फंस जाता है या किसी नकली सामग्री का उपयोग करने की कोशिश करता है, तो DBCooker के पास एक "प्रोबेबिलिस्टिक स्विच" होता है। यह कहता है, "ठीक है, यह काम नहीं किया। चलिए खाली स्थान भरने की कोशिश करना बंद करते हैं और बस कोड को शुरू से लिखते हैं," जिससे यह सुनिश्चित होता है कि वह विफलता के लूप में न फँसे।

3. "हेल्थ इंस्पेक्टर" (Three-Stage Validation)

ग्राहक तक जाने से पहले व्यंजन को निरीक्षण के तीन स्तरों से गुजरना पड़ता है।

  • स्तर 1 (व्याकरण जांच): "क्या आपने 'नमक' की स्पेलिंग सही लिखी है?" (सिंटैक्स चेक)।
  • स्तर 2 (रसोई के नियम): "क्या आपने इस व्यंजन को बहीखाते में दर्ज किया है? क्या आपने सही पैन का उपयोग किया है?" (अनुपालन/Compliance चेक)।
  • स्तर 3 (स्वाद परीक्षण): "क्या इसका स्वाद वास्तव में सैंडविच जैसा है? क्या यह गर्म और ठंडी ब्रेड दोनों के लिए काम करता है?" (सिमेंटिक टेस्ट)।
  • उपमा: यदि AI कोई गलती करता है, तो हेल्थ इंस्पेक्टर उसे तुरंत पकड़ लेता है और रसोई में एक नोट के साथ व्यंजन वापस भेज देता है: "इसे ठीक करें, फिर दोबारा प्रयास करें।" यह स्वचालित रूप से, बार-बार होता रहता है, जब तक कि व्यंजन एकदम सही न हो जाए।

🚀 "स्मार्ट मैनेजर" (Adaptive Orchestration)

कभी-कभी व्यंजन सरल होता है (जैसे पानी उबालना), और कभी-कभी यह जटिल होता है (जैसे 10-कोर्स का भोज)।

  • पुराना AI: पानी उबालने के लिए भी उसी 10-चरणीय प्रक्रिया का उपयोग करने की कोशिश करता है। इससे समय बर्बाद होता है।
  • DBCooker: यह पिछली सफलताओं को याद रखता है। यदि यह एक "मैथ" (Math) फंक्शन देखता है, तो इसे याद आता है, "ओह, हमने पिछली बार इसके लिए एक मानक लाइब्रेरी फंक्शन को रैप किया था। चलिए इसे फिर से जल्दी से करते हैं।" यदि यह एक "जटिल डेट" (Complex Date) फंक्शन देखता है, तो इसे याद आता है, "हमें तीन अलग-अलग फ़ाइलों की जाँच करनी होगी और पाँच इकाइयों को रजिस्टर करना होगा।"
  • उपमा: यह एक GPS की तरह है जो आपकी ड्राइविंग आदतों को सीखता है। यदि आप किराने की दुकान जा रहे हैं, तो यह तेज़ रास्ता लेता है। यदि आप निर्माण स्थल जा रहे हैं, तो इसे पता है कि धीमा और सावधान रास्ता लेना है।

🏆 परिणाम: यह क्यों मायने रखता है

शोधकर्ताओं ने तीन प्रमुख डेटाबेस "रसोइयों" (SQLite, PostgreSQL, DuckDB) पर DBCooker का परीक्षण किया।

  • स्कोर: DBCucker मौजूदा सर्वोत्तम AI टूल्स (जैसे Claude Code) की तुलना में 34% अधिक सटीक था।
  • जादू: इसने सफलतापूर्वक ऐसे नए फंक्शन बनाए जो SQLite के नवीनतम संस्करण में मौजूद नहीं थे, प्रभावी रूप से डेटाबेस को स्वचालित रूप से नए करतब सिखाना।
  • दक्षता: इसने सब कुछ शुरू से लिखने की तुलना में मौजूदा हिस्सों को पुन: उपयोग करके कोड को लगभग 95% तक कम कर दिया (जैसे पहले से कटे हुए प्याज का उपयोग करना)।

💡 मुख्य निष्कर्ष

DBCooker यह साबित करता है कि जटिल, विशिष्ट कार्यों (जैसे डेटाबेस इंजीनियरिंग) के लिए AI को उपयोगी बनाने के लिए, आप केवल एक जेनेरिक AI को समस्या के सामने नहीं छोड़ सकते। आपको एक सिस्टम की आवश्यकता है जो:

  1. वातावरण के विशिष्ट नियमों को समझता हो
  2. कार्य को प्रबंधनीय, 'रिक्त स्थान भरने' वाले चरणों में तोड़ता हो
  3. इसे खुले में छोड़ने से पहले काम की कठोरता से जाँच करता हो

यह AI को एक "भ्रमित पर्यटक" से बदलकर एक "मास्टर शेफ" में बदल देता है जो रसोई को अंदर और बाहर से जानता है।

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →