← أحدث الأبحاث
💬 NLP

SWE-rebench V2: Language-Agnostic SWE Task Collection at Scale

تقدم الورقة البحثية SWE-rebench V2، وهو مسار آلي محايد لغوياً يولد مجموعة بيانات ضخمة ومتنوعة تضم أكثر من 32,000 مهمة هندسة برمجيات موثقة وأكثر من 120,000 مهمة اصطناعية عبر 20 لغة لمعالجة ندرة بيانات التدريب لوكلاء الهندسة البرمجية القائمة على التعلم التعزيزي.

المؤلفون الأصليون: Ibragim Badertdinov, Maksim Nekrashevich, Anton Shevtsov, Alexander Golubev

نُشر 2026-03-02
📖 4 دقيقة قراءة☕ قراءة في استراحة قهوة

المؤلفون الأصليون: Ibragim Badertdinov, Maksim Nekrashevich, Anton Shevtsov, Alexander Golubev

البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل

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

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

SWE-rebench V2 هو بمثابة مصنع مؤتمت وجديد كلياً يبني مكتبة ضخمة ومتنوعة من هذه المسائل البرمجية. وإليك كيف يعمل، مشروحاً عبر بعض التشبيهات البسيطة:

1. المشكلة: "حاجز اللغة" و"كابوس الإعداد"

في السابق، إذا أردت اختبار ذكاء اصطوي للبرمجة على مشروع بلغة جافا (Java)، كان عليك إعداد المطبخ يدوياً، وشراء الأواني المحددة، ومعرفة إعدادات الموقد. وإذا أردت اختباره على مشروع بلغة راست (Rust)، كان عليك القيام بكل ذلك مجدداً باستخدام أدوات مختلفة تماماً. كان هذا بطيئاً، مكلفاً، ومحدوداً في عدد اللغات التي يمكنك تعليم الذكاء الاصطناعي إياها.

علاوة على ذلك، كانت العديد من "مسائل التدريب" الموجودة تشبه الألغاز ذات القرائن المفقودة. كانت التعليمات تقول: "أصلح الخطأ"، لكنها لم تذكر أي خطأ أو كيف تعرف أنك أصلحته.

2. الحل: مصنع "المترجم العالمي"

بنى المؤلفون SWE-rebench V2، وهو عبارة عن خط إنتاج مؤتمت. فكر فيه كـ مترجم عالمي وباني مطابخ يمكنه العمل مع أي لغة.

  • غير مرتبط بلغة محددة (Language Agnostic): لا يهمه ما إذا كان الكود بلغة بايثون، أو جو (Go)، أو جافا، أو حتى لغات غير شائعة. إنه يستخدم نهج "القوالب"؛ فهو يعرف القواعد الأساسية للطبخ (تثبيت الأدوات، تشغيل الاختبارات) ويقوم فقط باستبدال المكونات المحددة (لغة البرمجة) حسب الحاجة.
  • "وكيل الإعداد التفاعلي": هذا هو العامل الأكثر ذكاءً في المصنع. عندما يصل مشروع جديد، لا يقوم هذا العامل بالتخمين لكيفية إعداده، بل يحاول بناء البيئة، فيصطدم بعائق (خطأ)، فيقرأ الخطأ، ويجرب أداة مختلفة، ويستمر في المحاولة حتى يعمل المشروع بشكل مثالي. إنه يشبه روبوتاً يستمر في محاولة تجميع أثاث "إيكيا" حتى يفهم أخيراً أين يوضع كل برغي، دون الحاجة لمساعدة بشرية.

3. الحصاد: مكتبة ضخمة

باستخدام هذا المصنع، لم يكتفوا بإيجاد بعض المشكلات فحسب؛ بل حصدوا أكثر من 32,000 مهمة عالية الجودة من أكثر من 3,600 مشروع مختلف من الواقع عبر 20 لغة برمجة.

  • "مجموعة الذهب" (32 ألف مهمة): هذه هي المسائل "المثالية". تم التحقق من أنها تعمل، ولديها تعليمات واضحة، ولديها اختبار "نجاح/فشل" يثبت ما إذا كان الذكاء الاصطناعي قد حل المسألة أم لا. وهي جاهزة لتدريب الذكاء الاصطناعي عليها فوراً.
  • "مجموعة المسودة الأولية" (أكثر من 120 ألف مهمة): أصدروا أيضاً مجموعة أكبر بكثير تضم 120,000 مهمة. هذه تشبه "المسودات الأولية"؛ قد لا تمتلك مجموعة اختبارات مثالية بعد، لكنها تحتوي على التعليمات وتغييرات الكود. وهي رائعة لتعليم الذكاء الاصطل عملية البرمجة، حتى لو كان التقييم النهائي غير دقيق تماماً.

4. مراقبة الجودة: "المحرر" و"المحقق"

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

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

  • "علامات المربكات" (Confounder Tags): أحياناً يفشل الذكاء الاصطناعي ليس لأنه غبي، بل لأن الاختبار كان غير عادل (على سبيل المثال، الاختبار يتحقق من اسم متغير معين لم يُذكر في التعليمات). يقوم النظام بوضع علامات على هذه المشكلات. هذا يسمح للباحثين بالقول: "لنقم بتدريب الذكاء الاصطناعي على المسائل 'النظيفة' أولاً، ثم نُدخل المسائل 'غير العادلة' لاحقاً لجعل الأمر أكثر صعوبة".

5. لماذا هذا مهم؟

فكر في هذا كـ "الكتاب المدرسي مفتوح المصدر" للجيل القادم من مهندسي الذكاء الاصطناعي.

  • قبل: كان الذكاء الاصطناعي يتعلم البرمجة عن طريق قراءة بعض الكتب بلغة واحدة، وغالباً ما كانت تحتوي على أخطاء مطبعية.
  • الآن: لدى الذكاء الاصطناعي إمكانية الوصول إلى مكتبة ضخمة ومتعددة اللغات من المسائل الواقعية، كاملة مع مطابخ عاملة (بيئات) ومعايير تقييم واضحة (اختبارات).

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

غارق في أبحاث مجالك؟

تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.

جرّب Digest →