Benchmark · coding
HumanEval
يقيس HumanEval قدرة النموذج على كتابة كود Python صحيح انطلاقًا من وصف بلغة طبيعية، ويُقيَّم بمقياس pass@1، أي نسبة المسائل التي يحلها من المحاولة الأولى.
اقرأ المزيد
- مثال
- تعطي المسألة النموذجية توقيع دالة و docstring خاصًا بها — مثل «أعِد قائمة بجميع الأعداد الأولية الأصغر من n» — وعلى النموذج أن يكمل جسم الدالة.
- طريقة التقييم
- المقياس هو pass@1: يُشغَّل كل حل مُولَّد مقابل اختبارات unit مخفية، والدرجة هي النسبة المئوية من المسائل الـ164 التي يجتاز حلها كل اختباراتها.
- التحقق
- آلي بالكامل: لا يُحتسب الحل صحيحًا إلا إذا اجتاز كل اختبارات unit المخفية لتلك المسألة؛ دون حكم بشري ولا مطابقة نصية دقيقة.
- لماذا يهم
- كان من أوائل معايير توليد الكود واسعة الاستخدام وأصبح مرجعًا قياسيًا لمهارة البرمجة، غير أن أفضل النماذج تحقق فيه الآن درجات عالية جدًا حتى بات مشبعًا عمليًا ويكاد لا يميز بينها.
مثال محلول
المهمة
أكمل جسم دالة Python هذه بحيث تجتاز اختبارات الوحدة المخفية:
```python
from typing import List
def below_zero(operations: List[int]) -> bool:
"""You're given a list of deposit and withdrawal operations on a bank account starting at zero balance. Detect whether the balance ever drops below zero and return True at that point; otherwise return False.
>>> below_zero([1, 2, 3])
False
>>> below_zero([1, 2, -4, 5])
True
"""
```
الحل
from typing import List
def below_zero(operations: List[int]) -> bool:
balance = 0
for op in operations:
balance += op
if balance < 0:
return True
return False
الشرح
نحتفظ برصيد جارٍ، ونضيف كل عملية بالترتيب، ونعيد True في اللحظة التي يصبح فيها أقل من الصفر؛ وإذا انتهت الحلقة فهذا يعني أن الرصيد لم يصبح سالبًا قط، فنعيد False. يقيّم HumanEval الحل بإلحاق إكمال النموذج بالمُوجّه وتشغيله على اختبارات وحدة مخفية (pass@k) — ولا يُحتسب البند محلولًا إلا إذا نجحت جميع عبارات assert.
| التاريخ | النموذج | النتيجة | المصدر |
|---|---|---|---|
| 2026-07-16 | Granite 4.0 3B | 83.5% | تطلق آي بي إم مشروع الكود الألكيمي مفتوح المصدر، وهو مجموعة بيانات اصطناعية ضخمة من الكود عالي الجودة |
| 2024-07-15 | Qwen2-72B | 64.6% | تقرير Qwen2 التقني يقدم نماذج كثيفة ونماذج MoE تصل إلى 72 مليار معلمة |
| 2024-07-15 | Qwen2-72B | 64.6% | فريق Qwen يُصدر سلسلة Qwen2 بنماذج كثيفة و MoE بحجم 72 مليار |
| 2024-06-20 | Claude 3.5 Sonnet | 92.0% | أنثروبيك تطلق ملحقاً لـ Claude 3.5 Sonnet بمعايير محسّنة في البرمجة والرؤية |
| 2024-06-20 | Claude 3.5 Sonnet | 92.0% | Anthropic |
| 2024-05-13 | GPT-4o | 90.2% | OpenAI |
| 2024-03-28 | Grok-1.5 | 74.1% | xAI تطلق Grok-1.5 مع تحسين الاستدلال وسياق 128K |
| 2023-03-14 | GPT-4 | 67.0% | OpenAI |