تجاوزت القدرة الفردية للنموذج 15B GPT3.5 ، وتم استخدام SQLCoder مفتوح المصدر

أضافت عائلة Coder عضوًا جديدًا ، وتم فتحها!

ما هي أدوات النموذج الكبيرة التي تعرفها عن تحرير الكود؟

قام مستخدم Twitterlvwerra بعمل الصورة أدناه لفرز معظم أعضاء عائلة الشفرة.

بعد أسبوعين فقط من إطلاقه هذه الصورة ، انضم ثلاثة أعضاء جدد إلى العائلة ، وهم DeciCoder و OctoCoder وأحدث عضو SQLCoder.

من بينها، أحدث عضو SQLCoder لا يتمتع بأداء ممتاز فحسب، بل إنه مفتوح المصدر أيضًا!

SQLCoder

كنموذج لغة SOTA واسع النطاق ، يحول SQLCoder أسئلة اللغة الطبيعية إلى استعلامات SQL. في SQL، وهو إطار التقييم مفتوح المصدر للمطور، يتفوق SQLCoder بشكل كبير على جميع النماذج الرئيسية مفتوحة المصدر ويتفوق على OpenAI's GPT-3.5.

SQLCoder عبارة عن LLM معلمة 15B، وهي أيضًا تطبيق دقيق لـ StarCoder. تم ضبط SQLCoder بشكل دقيق على استعلامات SQL المصممة يدويًا والتي تتسم بصعوبة متزايدة. عند ضبطه لمخطط قاعدة بيانات واحد، يكون أدائه مشابهًا أو حتى أفضل من GPT-4.

* عنوان المشروع:

  • العنوان التجريبي:
  • وزن الموديل:

في الأشهر الثلاثة الماضية، تم نشر SQLCoder في المؤسسات الطبية والمالية وغيرها. غالبًا ما تمتلك هذه الشركات بيانات حساسة لا تريدها من خوادمها الخاصة، لذا فإن استخدام نموذج مستضاف ذاتيًا هو الطريقة الوحيدة التي يمكنهم من خلالها استخدام LLM.

طريقة

إنشاء مجموعة بيانات

أنشأ المؤلفون مجموعة بيانات زوجية تم تحريرها يدويًا وإكمالها ، مع التركيز على مهام النص إلى SQL. تم إنشاء مجموعة البيانات من 10 أنماط مختلفة ، مع أسئلة متفاوتة الصعوبة. بالإضافة إلى ذلك ، قاموا بإنشاء مجموعة بيانات تقييم من 175 سؤالًا من 7 أنماط جديدة.

لقد تأكدوا من اختيار المخططات المعقدة التي تحتوي على 4-20 جدولًا في كل من مجموعات بيانات التدريب والتقييم، نظرًا لأن المخططات التي تحتوي على جدول واحد أو جدولين فقط تميل إلى السماح باستعلامات بسيطة ومباشرة بسبب العلاقات المحدودة.

** فئة السؤال **

بعد إنشاء مجموعة البيانات ، صنف المؤلف كل سؤال في مجموعة البيانات إلى أربع فئات: سهل ومتوسط وصعب وصعب للغاية. يتم هذا التصنيف عن طريق تكييف المعايير المستخدمة بواسطة مجموعة بيانات Spider لقياس صعوبة SQL. وأخيرًا، قاموا بتقسيم مجموعة البيانات إلى قسمين فرعيين متميزين، سهل ومعتدل، وصعب وفائق الصلابة.

الكون المثالى

قام المؤلفون بضبط النموذج في المرحلتين التاليتين.

أولاً، تم تحسين نموذج StarCoder الأساسي فقط للتعامل مع المشكلات السهلة والمتوسطة الصعوبة.

ثانيًا ، يتم ضبط النموذج الذي تم الحصول عليه (المشفر على أنه سهل إزالة الضباب) بدقة على المشكلات الصعبة والفائقة الصعوبة للحصول على SQLcoder.

يقيم

قام المؤلفون بتقييم النموذج على مجموعة بيانات مخصصة قاموا بإنشائها بأنفسهم. يعد تقييم صحة استعلامات SQL أمرًا صعبًا للغاية ، حيث اعتبروا استخدام GPT-4 كمعيار للتقييم ، لكنهم واجهوا العديد من المشكلات. على طول الطريق ، أدركوا أيضًا أن استعلامين مختلفين من SQL قد يكونان صحيحين.

بالنسبة للسؤال "من هم آخر 10 مستخدمين من تورونتو"، فإن كلا نموذجي الاستعلام التاليين صحيحان.

في ضوء ذلك ، قام المؤلفون ببناء إطار عمل مخصص لتقييم صحة الاستعلام. لم يقتصر الأمر على فتح مصادر أوزان النموذج ، ولكن أيضًا من مصادر مفتوحة لإطار التقييم ومجموعة بيانات التقييم.

الغرض من إصدار مجموعة البيانات هو إثراء المعايير المتاحة ومساعدة الباحثين والمهندسين على فهم أداء النماذج التوليدية من نص إلى SQL بشكل أفضل ، لا سيما استجابة النموذج للتغييرات غير الضارة في النتائج التي يتم إرجاعها مثل إعادة تسمية الأعمدة وإلحاق الأعمدة وإعادة الترتيب) المتانة.

يمكن العثور على مزيد من التفاصيل حول التقييم في محتوى المدونة:

أداء

في إطار التقييم ، يتفوق Defog SQLCoder على جميع النماذج الرئيسية باستثناء GPT-4. على وجه الخصوص ، يتفوق أداء gpt-3.5-turbo و text-davinci-003 ، اللذين يزيد حجمهما عن 10 أضعاف حجم النموذجين.

هذه النتائج مخصصة لقاعدة بيانات SQL عامة ولا تعكس أداء SQLCoder في مخطط قاعدة بيانات واحد. عند ضبط مخطط قاعدة بيانات واحدة، يكون أداء SQLCoder مساويًا أو أفضل من GPT-4 الخاص بـ OpenAI مع زمن استجابة أقل (على A100 80 جيجابايت).

* يقسم كل سؤال تم إنشاؤه إلى 5 فئات ويظهر النسبة المئوية للأسئلة التي أجاب عليها كل نموذج بشكل صحيح حسب الفئة. *

** متطلبات أجهزة SQLCoder **

تم اختبار SQLCoder على وحدة معالجة رسومات A100 بسعة 40 جيجابايت مع أوزان. يمكنك أيضًا تحميل إصدارات 8 بت و4 بت من النموذج على وحدات معالجة الرسومات المخصصة للمستهلكين بذاكرة تبلغ 20 جيجابايت أو أكثر، مثل RTX 4090، وRTX 3090، وشرائح M2 Pro، أو M2 Max، أو M2 Ultra من Apple مع 20 جيجا بايت أو أكثر من الذاكرة.

المهمة التالية

في الأسابيع المقبلة، سيقوم المؤلف بإجراء التحديثات التالية على SQLCoder:

  • تدريب النموذج باستخدام المزيد من البيانات التي تم جمعها بواسطة الإنسان ومجموعة واسعة من الأسئلة؛
  • مزيد من الضبط الدقيق للنموذج باستخدام نمذجة المكافأة وRLHF؛
  • تدريب مسبق لنموذج (SQL + Python) متخصص في تحليل البيانات من البداية.
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • تعليق
  • مشاركة
تعليق
0/400
لا توجد تعليقات
  • تثبيت