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/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك محقق تحاول حل لغز، ولكن بدلاً من مسرح جريمة، فإن "مسرح جريمتك" هو مكتبة ضخمة وفوضوية تحتوي على ملايين الكتب والملفات ونقاط البيانات. أعطاك رئيسك تلميحاً غامضاً: "ابحث عن جميع براءات الاختراع المتعلقة بعلوم المواد التي تم تسجيلها في أوائل عام 2014، واحسب عدد براءات الاختراع الأقدم التي تشير إليها."
تعمل معظم البرامج الحاسوبية الحالية التي تحاول حل هذه المشكلة مثل روبوت جامد. يتم إعطاؤها خريطة للمكتبة في البداية. تختار بضعة أرفف بناءً على تلك الخريطة، وتكتب قائمة من التعليمات (استعلام)، ثم تحاول تنفيذها. إذا تعثرت أو كانت الإجابة خاطئة، فلا يمكنها سوى تصحيح أخطاء مطبعية صغيرة في تعليماتها. لا يمكنها العودة والقول: "مهلاً، لقد اخترت الأرفف الخاطئة تماماً،" أو "لم أدرك أن 'علوم المواد' مخبأة تحت رمز مثل 'MS-01'." إنها تظل عالقة في خطئها الأولي.
FlexSQL هو نوع جديد من الوكلاء المحققين الذين يعملون مثل مستكشف بشري فضولي. بدلاً من كونه جامداً، فهو مرن. إليك كيف يعمل، باستخدام تشبيهات بسيطة:
1. "المستكشف المرن" (التفاعل المرن)
بدلاً من النظر إلى خريطة المكتبة مرة واحدة والالتزام بمسار معين، يُسمح لـ FlexSQL بالتجول حول المكتبة أثناء تفكيره.
- الطريقة القديمة: ينظر الروبوت إلى الخريطة، ويخمن أن "علوم المواد" موجودة في قسم "العلوم"، ويبدأ في كتابة قائمته.
- طريقة FlexSQL: يقول الوكيل: "لست متأكداً أين توجد 'علوم المواد'. دعني أمشي إلى قسم 'التكنولوجيا'، وألقي نظرة داخل أحد الصناديق، وأقرأ الملصقات."
- إنه يستخدم أدوات خاصة لتصفح الأرفف (المخطط/Schema)، وقراءة المحتويات الفعلية للصناديق (قيم البيانات)، وإجراء عمليات بحث تجريبية صغيرة ليرى ما إذا كانت تخميناته منطقية. إذا أدرك أنه في الممر الخطأ، يمكنه فوراً الالتفاف والذهاب إلى الممر الصحيح. إنه لا يعلق في طريق مسدود.
2. "فريق العصف الذهني" (التخطيط المتنوع)
التلميح "كل براءة اختراع تشير إليها سابقاً" هو أمر مربك. هل يعني هذا البراءات المحلية فقط؟ أم الأجنبية أيضاً؟ أم الطلبات قيد الانتظار؟
- الطريقة القديمة: يختار الروبوت تفسيراً واحداً (مثلاً: "محلي فقط") ويتشبث به. إذا كان خاطئاً، فستكون الإجابة بأكملها خاطئة.
- طريقة FlexSQL: يعمل كفريق من المحققين الذين يقومون بالعصف الذهني. إنه يولد عدة نظريات مختلفة (خطط) في وقت واحد.
- الخطة (أ): حساب الاقتباسات المحلية فقط.
- الخطة (ب): حساب المحلية والأجنبية معاً.
- الخطة (ج): حساب كل شيء، بما في ذلك الطلبات قيد الانتظار.
إنه يشغل كل هذه النظريات ثم يترك "تصويت الأغلبية" يقرر أي إجابة هي الأكثر احتمالاً لتكون صحيحة. بهذه الطريقة، حتى لو كانت إحدى النظريات خاطئة، فقد يصل الفريق إلى الإجابة الصحيحة.
3. "المترجم ثنائي اللغة" (التنفيذ المرن)
أحياناً، تكون المهمة معقدة للغاية بحيث لا يمكن كتابتها كتعليمات واحدة مستقيمة (SQL). قد تتطلب حلقة تكرارية، أو قراراً من نوع "إذا-إلا"، أو عملية حسابية خطوة بخوة تكون معقدة الكتابة في لغة قواعد بيانات.
- الطريقة القديمة: يحاول الروبوت فرض كل شيء في جملة SQL واحدة جامدة، مما يجعلها غالباً شديدة التعقيد وعرضة للكسر.
- طريقة FlexSQL: هو ثنائي اللغة. يمكنه كتابة التعليمات بلغة SQL (اللغة التي تتحدث بها قواعد البيانات) أو بلغة Python (لغة برمجة مرنة).
- إذا كانت المهمة عبارة عن قائمة بسيطة، فإنه يستخدم SQL.
- إذا كانت المهمة تتطلب حلقة معقدة أو حساباً خطوة بخطوة، فإنه يكتب نصاً برمجياً بلغة Python أولاً لأن التفكير بهذه الطريقة أسهل.
- بمجرد أن يعمل النص البرمجي لـ Python بشكل مثالي، يقوم بترجمة النتيجة النهائية مرة أخرى إلى SQL لكي تفهمها قاعدة البيانات. الأمر يشبه كتابة وصفة معقدة في دفتر ملاحظات أولاً، ثم ترجمتها إلى أمر المطبخ الرسمي.
4. "زر إعادة المحاولة" (التراجع/Backtracking)
إذا كتب FlexSQL خطة ثم أدرك: "أوه لا، لقد فهمت السؤال بشكل خاطئ تماماً،" فإنه لا يحاول فقط إصلاح الكود. بل يضغط على زر التراجع. يعود إلى البداية، ويعيد فحص أرفف المكتبة، ويغير استراتيجيته بالكامل، ويبدأ خطة جديدة. هذا يمنعه من إضاعة الوقت في محاولة إصلاح أساس مهتز.
النتائج
اختبرت الورقة البحثية هذا "المحقق المرن" على اختبار معيار صعب للغاية يسمى Spider2، والذي يحاكي قواعد بيانات الشركات الضخمة والواقعية.
- النتيجة: باستخدام نموذج يسمى
gpt-oss-120bسجل FlexSQL نسبة 65.4%. - المقارنة: كانت هذه النتيجة أعلى من الأنظمة الرائدة الأخرى التي استخدمت نماذج أكبر وأقوى بكثير (مثل
DeepSeek-R1أوgpt-o3). - الخلاصة: من خلال كونه مرناً — بالتجول في المكتبة، والعصف الذهني لنظريات متعددة، والتحدث بلغتين، والضغط على زر "التراجع" عند الحاجة — نجح FlexSQL في حل المشكلات بشكل أفضل من "الروبوتات الجامدة"، رغم امتلاكه "دماغاً" أصغر.
باختة، يثبت FlexSQL أن في العالم المعقد للبيانات الضخمة، المرونة تهزم الجمود. من الأفضل أن تكون وكيلاً يمكنه الاستكشاف، والتكيف، وتغيير رأيه، بدلاً من أن تكون كياناً يتبع خريطة واحدة مكتوبة مسبقاً بعناد.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.