تحتل نماذج اللغة الضخمة (Large Language Models - LLMs) مكانة بارزة في عالم البرمجة، حيث تُظهر أداءً قويًا في توليد الأكواد بشكل عام. ومع ذلك، تبقى قدرتها على التعامل مع لغات البرمجة الخاصة بالمشاريع (Domain-Specific Languages - DSLs) غير مستكشَفة بشكل كافٍ، خصوصًا في سياقات المشاريع التي تتطلب تطوير أكواد تمتد عبر عدة ملفات وهياكل مجلدات بناءً على تعليمات بلغة طبيعية واحدة.

في دراسة حالة مثيرة أجرتها شركة BMW، تم تحسين نماذج LLM الخاصة بالأكواد لتوليد وتعديل المواد الأساسية الخاصة بلغة DSL المعتمدة على Xtext، والتي تقود عملية توليد أكواد Java/TypeScript.

قمنا بتطوير نظام متكامل لبناء مجموعات البيانات، وتمثيل المهام عبر ملفات متعددة، وتكييف النماذج، وتقييم النتائج. تم ترميز هياكل مجلدات DSL ك JSON منظمة، مما يسمح بالتوليد بشكل فردي على نطاق المستودع وتعلم الاعتمادات عبر الملفات.

خضعنا لتقييم نموذجين من نماذج LLM المتخصصة في الأكواد، وهما Qwen2.5-Coder وDeepSeek-Coder (7B)، تحت ثلاث configurations مختلفة: التوجيه الأساسي، التعلم في السياق لشوط واحد، والتعديل الفعال للمعلمات (QLoRA).

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

تم التحقق من الجدوى العملية للنتائج من خلال استبيان لمطوري البرامج المحترفين وفحص يعتمد على التنفيذ باستخدام مولد الأكواد الحالي.