الأخبار التكنولوجية والاستعراضات والنصائح!

تعرف على StarCoder: أكبر نماذج اللغات الكبيرة مفتوحة المصدر للكود

ستساعدك المقالة التالية: تعرف على StarCoder: أكبر نماذج اللغات الكبيرة مفتوحة المصدر للكود

BigCode هو عبارة عن تعاون علمي مفتوح بقيادة ServiceNow و ServiceNow يركز على إنشاء نماذج لغة برمجة ضخمة بشكل أخلاقي. نماذج اللغات الكبيرة للرموز (Code LLMs) تم تطوير StarCoder و StarCoderBase بمساعدة البيانات المرخصة بشكل مفتوح من GitHub ، والتي تتضمن أكثر من 80 لغة برمجة ، والتزامات Git ، ومشكلات GitHub ، ودفاتر Jupyter. لتحقيق نتائج مماثلة لـ LLaMA ، قمنا أيضًا بتدريب نموذج مع معلمات 15B باستخدام الرموز 1B. StarCoder هو نسخة محسنة من نموذج StarCoderBase تم تدريبه على 35 مليار من رموز Python. ثبت أن StarCoderBase أكثر فعالية من غيره من أنظمة البرمجة اللغوية المفتوحة الأخرى في العديد من معايير البرمجة الشائعة وأن يكون على قدم المساواة مع النماذج المغلقة أو حتى أفضل منها مثل OpenAI’s code-Cushman-001 (نموذج Codex الأصلي الذي يعمل على تشغيل الإصدارات المبكرة من GitHub Copilot). يمكن لنماذج StarCoder ، التي يبلغ طول سياقها أكثر من 8000 رمزًا ، معالجة مدخلات أكثر من أي LLM مفتوح آخر ، مما يفتح الباب أمام مجموعة متنوعة من الاستخدامات الجديدة المثيرة.

تم اختبار StarCoder والأجهزة المماثلة على نطاق واسع على نطاق واسع من المعايير. HumanEval هو معيار يستخدم على نطاق واسع في Python يتحقق مما إذا كان النموذج يمكنه إنهاء وظيفة بشكل صحيح أم لا في ضوء توقيعها وسلسلة docstring فقط. ثبت أن StarCoder و StarCoderBase أكثر فعالية من الطرز الأكبر مثل PaLM و LaMDA و LLaMA.

نموذج

لم يتم تضمين النماذج المدربة على أكثر من 80 لغة من The Stack (الإصدار 1.2) في المعلمات الإجمالية 15.5B لنماذج StarCoder. تم تقديم النموذج على 1 تريليون رمز مع هدف Fill-in-the-Middle باستخدام Multi Query Attention مع نافذة سياق مكونة من 8192 رمزًا مميزًا.

يشارك الباحثون أيضًا العروض والمواد التالية جنبًا إلى جنب مع النموذج:

  • OpenRAIL يرخص ثقل النموذج ، والذي يتضمن نقاط تفتيش وسيطة.
  • جميع رموز التدريب والمعالجة المسبقة مرخصة بموجب Apache 2.0.
  • إطار عمل شامل لاختبار برامج الكمبيوتر
  • مجموعة بيانات جديدة للتدريب وتقييم خوارزميات إزالة معلومات تحديد الهوية الشخصية
  • تمت معالجة مجموعة البيانات المستخدمة للتدريب مسبقًا بالكامل.
  • أداة لتحديد مكان إنشاء الشفرة في مجموعة البيانات.

الاستخدامات

  • تم استخدام كود من GitHub لتدريب النموذج. لهذا السبب ، فهو ليس نموذجًا جيدًا للتعليمات ، ولن تنجح كثيرًا في إصدار توجيهات مثل “اكتب دالة تحسب الجذر التربيعي”. ومع ذلك ، فإن اتباع المطالبات التي تظهر على الشاشة يمكن أن يحولها إلى مساعد تقني مفيد.
  • يستخدم Fill-in-the-middle الرموز المميزة لتحديد أجزاء الإدخال والإخراج هي البادئة والوسط واللاحقة.
  • تم اختيار مجموعة بيانات ما قبل التدريب للنموذج لتضمين فقط المحتوى ذي التراخيص المسموح بها. ومع ذلك ، يمكن للنموذج استخدام مجموعة البيانات لإنشاء شفرة المصدر كلمة لكلمة. من المهم الالتزام بأي إسناد ومعايير أخرى منصوص عليها في ترخيص الكود.
  • يعد المكون الإضافي VSCode الجديد مكملاً مفيدًا للتحدث مع StarCoder أثناء تطوير البرنامج. لمعرفة ما إذا تم تضمين الكود الحالي في مجموعة بيانات ما قبل التدريب ، اضغط على CTRL + ESC.

دلائل الميزات

  • إنه رمز رئيسي مفتوح المصدر – LLM.
  • باستخدام بيانات GitHub المرخصة بحرية أكبر من المعيار ، تم تدريب 15B LLM.
  • في جميع معايير البرمجة مفتوحة المصدر الرئيسية ، تحقق أفضل النتائج.
  • هو مساعد تقني ، يقوم بإنشاء كود واقعي ، ويدعم 80 لغة برمجة.
  • تم تدريبه على 1 تريليون رمز وكان به نافذة سياق من 8192 رمز.
  • المعلومات المصرح بها قانونًا فقط.

محددات

  • من الأسهل القضاء على مثل هذه النسخ إذا اختار مالك حقوق الطبع والنشر ذلك عندما يتم ترخيص الرمز بشكل مسموح به أو بموجب ترخيص يسار النسخ ثم يتم نسخه إلى مستودع آخر. يجب بذل المزيد من الجهد في تطوير عمليات مراقبة فعالة للبيانات والموافقة على الكميات الهائلة من البيانات المستخدمة في تدريب LLM.
  • مثل LLMs الأخرى ، فإن StarCoder لها قيود ، بما في ذلك إمكانية إنتاج معلومات خاطئة أو وقحة أو خادعة أو متحيزة للشيخوخة أو متحيزة جنسيًا أو معززة بشكل نمطي.
  • النموذج متاح بموجب ترخيص OpenRAIL-M ، والذي يفرض قيودًا ملزمة قانونًا على كيفية استخدام النموذج وكيفية تعديله.
  • تم تحليل قدرات StarCoder في الترميز وفهم اللغة الطبيعية من قبل الباحثين من خلال مقارنتها بمعايير اللغة الإنجليزية فقط. يعد البحث في فعالية وقيود LLMs البرمجية على لغات طبيعية مختلفة ضروريًا لتوسيع نطاق تطبيق هذه النماذج.

يأمل الباحثون في تحسين الوصول والتكرار والشفافية لـ Code LLMs في مجتمع البحث والمطورين من خلال إطلاق نماذج StarCoder بموجب ترخيص Open Responsible AI Model ومن خلال فتح مصادر جميع مستودعات الأكواد لإنشاء النموذج على GitHub. للتأكد من أن أي أعمال مشتقة من النموذج أو التطبيقات التي تستخدم النموذج تلتزم بمبادئ BigCode للذكاء الاصطناعي المسؤول ، يتضمن ترخيص النموذج قيود الاستخدام. أتاح الباحثون أيضًا مجموعة جديدة من أدوات الإسناد للمستخدمين النهائيين لـ Code LLMs للاستفادة منها في البحث عن أجيال النماذج التي يُحتمل أن تكون مسروقة. يأمل الباحثون أن تساعد هذه الاحتياطات في إصدار آمن للنموذج ، مما يضمن استمرار استخدام نماذج StarCoder عالية الأداء للأبد.