يُعد HumanEval معيارًا لتقييم قدرات إنشاء التعليمات البرمجية لنماذج اللغة الكبيرة (LLM). وتم تطويره بواسطة OpenAI لتقييم الإصدارات المبكرة من نماذج الذكاء الاصطناعي التي تشغل Codex، وكيل هندسة البرمجيات الخاص بالشركة.
تم تصميم معيار HumanEval خصيصًا للتعليمة البرمجية المنشأة بواسطة Python. وإنه يتجاوز الصياغة، ويتحقق من أن التعليمة البرمجية التي تم إنشاؤها دقيقة وتعمل على النحو المنشود.
يمكن الوصول إلى إطار عمل المعيار من مستودع OpenAI HumanEval GitHub. لدى HumanEval أيضًا لوحة متصدرين تصنف أداء نماذج إنتاج الشيفرة المختلفة، بما في ذلك مجموعة Claude، وKimi K2، وGoogle Gemma وGemini، وGPT-5 والإصدارات الأقدم GPT-4o وGPT-4 وعائلة IBM Granite وغيرها.
احصل على رؤى منسقة حول أهم أخبار الذكاء الاصطناعي وأكثرها إثارةً للاهتمام. اشترِك في خدمة رسائل Think الإخبارية الأسبوعية. راجع بيان الخصوصية لشركة IBM.
تتألف مجموعة بيانات HumanEval من 164 مشكلة برمجية مكتوبة يدويًا مع اختبارات الوحدات المقابلة لها.1 وتقيس هذه المشكلات قدرة النموذج على فهم اللغة ومعالجة السلاسل النصية والبحث والفرز. كما يقومون بتقييم مهارات حل المشكلات من حيث الرياضيات البسيطة والخوارزميات المعقدة. وتشبه هذه المهام البرمجية الأسئلة الخوارزمية، أو تمارين البرمجة، أو تحديات تصميم الأنظمة التي يتعامل معها مطورو البرمجيات خلال المقابلات التقنية.
تحتوي كل مهمة من مهام إنشاء التعليمات البرمجية على المكونات التالية:
التعريف يحدد اسم الدالة ومعلماتها. على سبيل المثال، إليك تعريف دالة تحسب حاصل ضرب عددين صحيحين:
السلسلة الوثيقة هي مطالبة لغة طبيعية أو وصف للسلوك المتوقع للدالة وأهدافها وإدخالاتها ومخرجاتها. وتوضح هذه التعليقات ما تفعله الدالة، وتوجه النموذج عند إنشاء تعليمة Python برمجية.
على سبيل المثال، ستكون سلسلة التوثيق الخاصة بدالة الضرب هي:
هذا مقطع مخصص للتعليمة البرمجية التي ينتجها النموذج. ويحمل الحل المنفَّذ للمشكلة بالنظر إلى محتوى الوظيفة وسلسلة التوثيق.
تتحقق حالات الاختبار هذه من صحة التنفيذ الوظيفي للتعليمة البرمجية التي تم إنشاؤها عبر سيناريوهات مختلفة. ويُغذي كل اختبار إدخالات محددة للوظيفة ثم يتحقق من أن المخرجات تتوافق مع النتائج المقصودة.
فيما يلي بعض اختبارات الوحدة النموذجية لدالة الضرب:
العديد من معايير نماذج اللغة الكبيرة للكود تطبق منهجيات تستخدم لتوليد النصوص، مثل المقاييس القائمة على التطابق التي تقارن عينات التعليمات البرمجية المنشأة مع حل مرجعي. ولكن المقاييس القائمة على التطابق لا تأخذ عادةً في الاعتبار الطرق المختلفة التي يمكن من خلالها حل مشكلة ما، والتي يمكن أن يكون أي منها مكافئًا وظيفيًا للحل المرجعي.
لهذا السبب، اعتمد معيار HumanEval على صحة التنفيذ الوظيفي، التي تعتبر عينة التعليمات البرمجية المُنشأة صحيحة إذا اجتازت مجموعة من اختبارات الوحدة. ويعكس هذا النهج كيفية تقييم المطورين لنجاح التعليمة البرمجية الخاصة بهم من خلال تشغيلها عبر سلسلة من اختبارات الوحدة والتأكد من اجتيازها لكل منها.
يقيس HumanEval الصحة الوظيفية باستخدام مقاييس pass@k. ولكل مشكلة، يقوم النموذج بإنشاء عينات التعليمات البرمجية k. وإذا اجتازت أية عينة من هذه العينات اختبارات الوحدة، فسيتم اعتبار المشكلة قد تم حلها بشكل صحيح. وتقوم المقاييس pass@k بتقدير احتمال أن تكون واحدة على الأقل من العينات k صحيحة وظيفيًا.
يُعد HumanEval مجرد واحد من العديد من المعايير لتقييم النماذج اللغوية الكبيرة ذات التعليمات البرمجية. ولا يزال يجب على فرق تطوير البرمجيات تقييم التعليمات البرمجية التي تنشأها نماذج اللغة الكبيرةباستخدام اختباراتها الداخلية الخاصة ودمج مقاييس متعددة للحصول على رؤية أكثر شمولاً لأداء النموذج. ويظل نهج التفاعل البشري ضروريًا أيضا للمساعدة في ضمان دقة التعليمات البرمجية التي ينشأها الذكاء الاصطناعي وضبط وتحسين نماذج التعلم الآلي مع مرور الوقت.
فيما يلي بعض قيود معيار HumanEval:
قد تكون مشاكل البرمجة المتضمنة في مجموعة البيانات قد تمت مواجهتها أثناء تدريب النموذج نظرًا لتوافرها على نطاق واسع. كما أن عدد المشكلات قليل بما يكفي لدرجة أن نماذج إنشاء التعليمات البرمجية ربما تتمكن من حفظها جميعًا.
تندرج مهام إنشاء التعليمات البرمجية داخل HumanEval عادةً ضمن النطاق السهل إلى المتوسط. ومع ذلك، تميل مهام البرمجة الواقعية إلى أن تكون أكثر تعقيدًا، وتشمل عمليات تكامل واجهة برمجة التطبيقات مع أنظمة متعددة، وقواعد تعليمات برمجية ضخمة، ومجموعات بيانات ضخمة.
كما أن المعيار يفشل في عكس الحالة المعقدة غالبًا لبيئات وسير العمل في تطوير البرمجيات الواقعية: حالات الاستخدام المتطورة، أو حالات الاختبار غير المكتملة، أو المتطلبات غير المتسقة، أو التعليمات البرمجية القديمة أو المواصفات الغامضة، على سبيل المثال لا الحصر.
البرمجة لا تقتصر فقط على صحة التنفيذ الوظيفي، بل هناك ما هو أكثر من ذلك. على سبيل المثال، لا يأخذ HumanEval الكفاءة في الاعتبار. وهذا يعني أن التعليمة البرمجية، التي يتم إنشاؤها بواسطة النموذج اللغوي الكبير دقيقة وتعمل كما هو متوقع، وقد لا تكون الحل الأكثر كفاءة وتحسينًا من حيث الأداء.
كما أن المعيار لا يأخذ في الاعتبار أفضل ممارسات البرمجة، مثل اصطلاحات البرمجة، ومعايير الأسلوب، والتعامل مع الأخطاء، والتحقق من صحة الإدخال، والبرمجة الآمنة.
تم تخصيص HumanEval خصيصًا للغة البرمجة Python مفتوحة المصدر. ويجب تقييم مصدر الرمز الذي تم إنشاؤه بلغات أخرى باستخدام معايير أخرى.
يحتوي المعيار على عدد قليل من الإصدارات المختلفة التي تعالج بعض قيوده:
HumanEval+
HumanEval-V
HumanEval-X
HumanEvalNext
تحتوي كل مشكلة برمجة في HumanEval على ما يقارب 7 إلى 8 اختبارات وحدة في المتوسط.1 HumanEval+ يعمل على زيادة تغطية الاختبارات بشكل ملحوظ لتصل إلى 764 اختبارًا في المتوسط لكل مشكلة، مما يتيح تقييمًا أكثر دقة.2
يبني HumanEval-V على سابقه لإنشاء معيار لنماذج الذكاء الاصطناعي متعددة الوسائط، وتحديدًا نماذج اللغة المرئية (VLM). ويقيس قدرة نماذج VLM على الفهم والاستدلال على المخططات والرسوم البيانية في سياقات البرمجة، وتنشئ التعليمات البرمجية بناءً على مخططات تدفق الخوارزميات أو تحويلات المصفوفة، على سبيل المثال.
يمدد HumanEval-X المعيار الأصلي ليشمل لغات البرمجة C++ وGo وJava وJavaScript. ويمكن استخدام مهامه البالغ عددها 820 مهمة لتقييم مهارات إنشاء التعليمات البرمجية وترجمة التعليمات البرمجية.
يُعدّ HumanEvalNext تحسينًا لـ HumanEval. ويضيف المزيد من السياق من خلال شروح النوع (صياغة البرمجة للإشارة إلى أنواع بيانات معلمات الدالة وقيم الإرجاع)، ويتضمن المزيد من حالات الحافة ويقدم المزيد من اختبارات الوحدة ويزيد من صعوبة المشاكل.3
تسريع عملية تسليم البرامج مع Bob، شريكك المدعوم بالذكاء الاصطناعي للتطوير الآمن والمدرك للأهداف.
عزّز كفاءة تطوير البرمجيات باستخدام أدوات موثوقة مدعومة بالذكاء الاصطناعي تساعد في تقليل الوقت المستغرق في كتابة التعليمات البرمجية، وتصحيح الأخطاء، وإعادة هيكلة التعليمات البرمجية، وإكمالها تلقائيًا—مما يمنح المطورين مساحة أكبر للابتكار.
أعدّ ابتكار عمليات ومهام سير العمل الحساسة بإضافة الذكاء الاصطناعي لتعزيز التجارب وصنع القرارات في الوقت الفعلي والقيمة التجارية.
1. تقييم نماذج اللغة الكبيرة المدربة على التعليمة البرمجية، arXiv، 14 يوليو 2021
2. هل التعليمة البرمجية التي ينشئها ChatGPT صحيحة حقًا؟ تقييم دقيق لنماذج اللغة الكبيرة لإنشاء التعليمة البرمجية، arXiv، 30 أكتوبر 2023
3. تقييم نماذج الذكاء الاصطناعي في هندسة البرمجيات: مراجعة، أداة بحث، ونهج موحد لتحسين جودة المعايير، arXiv، 12 ديسمبر 2025