باختصار
SWE-bench إطار تقييم بيدّي النموذج اللغوي مستودع كود حقيقي ووصف مشكلة، ويطلب منه يعدّل الكود عشان يحلّها.
بالتفصيل
حسب ورقة الاختبار (أكتوبر 2023):
- فيه 2,294 مشكلة هندسة برمجيات، مأخوذة من Issues حقيقية على GitHub وPull Requests اللي حلّتها.
- المشاكل من 12 مستودع Python مشهور.
- النموذج بياخد قاعدة الكود ووصف المشكلة، ومطلوب منه يعدّل الكود.
ليه أصعب من توليد الكود العادي؟ لأن حلّ المشاكل دي غالبًا محتاج فهم وتنسيق تغييرات في كذا دالّة وكلاس وملف في نفس الوقت. فالنموذج محتاج يتعامل مع بيئات تنفيذ، ويعالج سياق طويل جدًا، ويعمل استدلال معقّد.
والباحثين شايفين إن هندسة البرمجيات الحقيقية بيئة اختبار غنية ومستدامة وصعبة للأجيال الجاية من النماذج.
مثال عملي
وقت الإطلاق، النماذج كلها، المغلقة ونموذج SWE-Llama اللي ضبطوه بأنفسهم، حلّت أبسط المشاكل بس. أفضل نموذج، Claude 2، حلّ 1.96% بس من المشاكل.
لما تقرا النهارده في إعلان نموذج أو AI Coding Agent نتيجة على SWE-bench أو نسخة منه، افتكر نقطة البداية دي. واسأل كمان: النتيجة على الاختبار الكامل ولا على مجموعة فرعية؟ وبأي أدوات وبيئة؟
مصطلحات مرتبطة
- AI Coding Agent — وكيل البرمجة.
- HumanEval — اختبار HumanEval.
- Agent Harness — هارنس الوكيل.
- Benchmark — المعيار القياسي.
المصادر: arXiv — SWE-bench (Jimenez et al.) — 2023-10-10


