تقديم التوجيه في الوقت المناسب والشخصي لمهام البرمجة للطلاب يوفر قيمة عملية كبيرة لمساعدة الطلاب في إكمال المهام وتعزيز تعلمهم. في السنوات الأخيرة، أثبتت تقنيات تحديد موضع الأخطاء الآلية (FL) نتائج واعدة في تحديد الأخطاء في البرامج. ومع ذلك، تواجه تقنيات FL الحالية تحديات عند تطبيقها على السياقات التعليمية. تعمل معظم الأساليب على مستوى الطريقة دون تغذية راجعة توضيحية، مما ينتج عنه دقة كبيرة جدًا للطلاب الذين يحتاجون إلى رؤى قابلة للتنفيذ لتحديد وإصلاح أخطائهم. بينما تحاول بعض الأساليب تحديد موضع الأخطاء على مستوى السطر، غالبًا ما تعتمد على توقع أرقام الأسطر مباشرة في شكل عددي، مما لا يناسب نماذج اللغة الكبيرة. لمعالجة هذه التحديات، نقترح FLAME، وهي طريقة لتحديد موضع الأخطاء دقيقة وقابلة للتفسير مصممة لمهام البرمجة من خلال التعليق الموجه باستخدام نماذج اللغة الكبيرة وتجميع النماذج. تستغل FLAME معلومات سياقية غنية محددة لمهام البرمجة لتوجيه نماذج اللغة الكبيرة في تحديد أسطر الكود الخاطئة. بدلاً من توقع أرقام الأسطر مباشرة، نشجع نموذج اللغة الكبيرة على تعليق أسطر الكود الخاطئة مع تفسيرات مفصلة، مما يعزز دقة التحديد وقيمة التعليم. لتحسين الموثوقية بشكل أكبر، نقدم استراتيجية تصويت متعددة النماذج ذات أوزان تجمع النتائج من عدة نماذج لغوية كبيرة لتحديد مدى الشك في كل سطر كود. تظهر نتائج التجارب الواسعة أن FLAME تتفوق على خطوط قاعدة تحديد موضع الأخطاء الرائدة في مهام البرمجة، حيث تحدد 207 أخطاء إضافية في التصنيف الأول مقارنة بأفضل خط أساس. بالإضافة إلى السياقات التعليمية، يتمتع FLAME أيضًا بقدرة عامة للتطبيق على مجموعات أكواد البرمجيات العامة، متفوقًا على جميع الخطوط الأساسية في معايير Defects4J.
درس ليو وزملاؤه (الثلاثاء) هذا السؤال.