Benchmark · coding

MBPP

saturated 3 نتائج 3 نماذج

MBPP (Mostly Basic Python Problems) هو معيار لتوليد الشيفرة يتكوّن من نحو 1000 مهمة برمجة بلغة Python من المستوى المبتدئ، موصوفة بإنجليزية بسيطة ومرفقة كلٌّ منها بحالات اختبار تلقائية. يقيس عدد المرات التي يكتب فيها النموذج دالة صحيحة من المحاولة الأولى، ويُبلَّغ عنه بمقياس pass@1.

اقرأ المزيد
مثال
يطلب البند النموذجي من النموذج كتابة دالة Python صغيرة انطلاقًا من وصف من سطر واحد — مثلًا «اكتب دالة تُعيد عدد Fibonacci رقم n» أو «تحقّق ممّا إذا كانت السلسلة النصية متناظرة (palindrome)» — ثم تُشغَّل مقابل بضعة اختبارات مرفقة قائمة على assert.
طريقة التقييم
المقياس هو pass@1: لكل مهمة يولّد النموذج حلًّا واحدًا، والدرجة هي نسبة المهام التي تجتاز شيفرتها المولَّدة جميع حالات اختبار تلك المهمة.
التحقق
يُقبل الحل تلقائيًا: تُشغَّل الدالة المولَّدة مقابل اختبارات الوحدة القائمة على assert الخاصة بالمهمة، ولا تُحتسب صحيحة إلا إذا نجحت كل الاختبارات (دون تحكيم بشري أو مطابقة نصية حرفية).
لماذا يهم
MBPP هو مرجع قديم وسهل التشغيل لتوليد شيفرة Python الأساسية؛ وبما أن النماذج القوية اليوم تحقق درجات قريبة من الحد الأقصى، فإنه يُعدّ مشبعًا (saturated) وصار مفيدًا في الغالب كفحص سلامة أكثر من كونه وسيلة للتمييز بين أفضل الأنظمة.
مثال محلول
المهمة
عنصر بأسلوب MBPP: «اكتب دالة python لعدّ عدد الحروف المتحركة (a, e, i, o, u) في سلسلة نصية معطاة بأحرف صغيرة.» يأتي مرفقًا بثلاثة اختبارات assert مخفية، مثل assert count_vowels('hello') == 2 وassert count_vowels('world') == 1 وassert count_vowels('rhythm') == 0؛ ويجب أن يكون اسم الدالة مطابقًا للاسم الذي تستدعيه الاختبارات.
الحل
def count_vowels(s):
    return sum(1 for ch in s if ch in 'aeiou')
الشرح
المرور على السلسلة النصية وعدّ الأحرف المنتمية إلى مجموعة الحروف المتحركة 'aeiou' يعطي 2 و1 و0 للمدخلات الثلاثة، لذا تنجح جميع اختبارات assert. يقيّم MBPP الحل بنجاح/فشل عبر تشغيل الدالة المولّدة على اختبارات assert الثلاثة المرفقة جميعها (الصحة الوظيفية، pass@k).
0 19.5 39 58.5 78 2024-12-17 2025-10-01 2026-07-16 Falcon3-10B-Base · 73.8 · 2024-12-17 Qwen3.5-4B · 13 · 2026-07-13 Granite 4.0 3B · 63.2 · 2026-07-16
Falcon3-10B-Base Qwen3.5-4B Granite 4.0 3B
الجدول الزمني
التاريخ النموذج النتيجة المصدر
2026-07-16 Granite 4.0 3B 63.2% تطلق آي بي إم مشروع الكود الألكيمي مفتوح المصدر، وهو مجموعة بيانات اصطناعية ضخمة من الكود عالي الجودة
2026-07-13 Qwen3.5-4B 13.0% تضغط Flint مسارات الاستدلال لتقليل استخدام الرموز مع الحفاظ على الدقة
2024-12-17 Falcon3-10B-Base 73.8% عائلة Falcon3 تطلق خمسة نماذج مفتوحة المصدر بقدرات محسّنة في العلوم والرياضيات والبرمجة