استغلال النماذج اللغوية المُدرَّبة مسبقًا لإنشاء الكود

تشير المساعدة في كتابة الكود إلى استخدام مجموعة متنوعة من الأدوات والتقنيات والنموذج لمساعدة المطورين أثناء عملية تطوير البرمجيات. ومع تعقيد مهام البرمجة بشكل متزايد، يلعب مساعد الكود دورًا محوريًا في تعزيز إنتاجية المطورين، وتقليل الأخطاء، وتسهيل سير عملية كتابة الكود بشكل أكثر كفاءة. ويمكن أن تظهر هذه المساعدة بأشكال متعددة، بما في ذلك اكتمال الكود تلقائيًا، وكشف الأخطاء وتصحيحها، وإنشاء الكود، ودعم التوثيق، والتوصيات المعتمدة على السياق. وقد برزت النماذج اللغوية كعناصر أساسية في المساعدة في كتابة الكود، حيث توفر للمطورين القدرة على استقبال اقتراحات ذكية، وإنشاء قطع كود، وتحسين الكفاءة العامة في كتابة الكود. في هذا البحث، نقترح نماذج هجينة جديدة لإنشاء الكود من خلال الاستفادة من النماذج اللغوية المُدرّبة مسبقًا BERT وRoBERTa وELECTRA وLUKE بالتزامن مع نموذج Marian Causal Language Model. وقد تم اختيار هذه النماذج استنادًا إلى أدائها القوي في مهام معالجة اللغة الطبيعية المختلفة. ونقيّم أداء هذه النماذج على مجموعتي بيانات CoNaLa وDJANGO، ونقارنها بالنماذج الحالية ذات المستوى الرائد. ونهدف إلى استكشاف الإمكانات الكامنة في النماذج اللغوية المُدرّبة مسبقًا باستخدام معمارية الترانسفورمر لثورة في إنشاء الكود، مما يوفر دقة وفعالية محسّنة في التعامل مع السيناريوهات البرمجية المعقدة. بالإضافة إلى ذلك، نُجري تحليلًا للأخطاء ونُحسّن الكود المُولَّد. وتُظهر النتائج أن هذه النماذج، عند دمجها مع مُفكّك Marian، تُحسّن بشكل كبير دقة وكفاءة إنشاء الكود. وتمكّنت نموذج RoBERTaMarian من تحقيق أعلى درجة BLEU تبلغ 35.74 ودقة مطابقة دقيقة تبلغ 13.8٪ على مجموعة بيانات CoNaLa، بينما حقق نموذج LUKE-Marian درجة BLEU تبلغ 89.34 ودقة مطابقة دقيقة تبلغ 78.50٪ على مجموعة بيانات DJANGO. يمكن الاطلاع على تنفيذ هذا العمل عبر الرابط التالي: https://github.com/AhmedSSoliman/Leveraging-Pretrained-Language-Models-for-Code-Generation.