HumanEval Benchmark (UR)
HumanEval — یہ ایک معیاری ڈیٹاسیٹ (benchmark) ہے جو مصنوعی ذہانت کے ماڈلز کے ذریعے متنی تفصیل کی بنیاد پر تیار کردہ کوڈ کے معیار کی معروضی جانچ کے لیے بنایا گیا ہے[1]۔ اسے جولائی 2021 میں OpenAI کے محققین نے مارک چن (Mark Chen) کی سربراہی میں پیش کیا اور یہ تیار کردہ پروگراموں کی فعلی درستگی ناپنے کے اہم معیارات میں سے ایک بن گیا۔
HumanEval کی تیاری کوڈ جنریشن کی جانچ کے ایک قابلِ اعتماد طریقے کی ضرورت سے پیدا ہوئی۔ اس سے پہلے زبان کے ماڈلز کے ذریعے تیار کردہ کوڈ کا معیار اکثر بالواسطہ میٹرکس (مثلاً BLEU) یا دستی طریقے سے جانچا جاتا تھا، جو پروگراموں کی حقیقی کارکردگی سے مطابقت کی ضمانت نہیں دیتا تھا۔ HumanEval اس مسئلے کو فعلی درستگی پر توجہ مرکوز کر کے حل کرتا ہے: تیار کردہ کوڈ کو اس کی نحوی مماثلت کی بجائے خودکار یونٹ ٹیسٹس کے ایک سیٹ کو کامیابی سے پاس کرنے کی صلاحیت کی بنیاد پر جانچا جاتا ہے[1]۔
مسائل کے سیٹ کی ساخت
اس benchmark میں 164 پروگرامنگ مسائل شامل ہیں جو خاص طور پر اس ڈیٹاسیٹ کے لیے دستی طور پر لکھے گئے ہیں تاکہ یہ یقینی بنایا جا سکے کہ یہ ماڈلز کے تربیتی سیٹوں میں موجود نہ ہوں۔ تمام مسائل Python زبان میں بیان کیے گئے ہیں اور تفصیل کے ساتھ کوڈ کے ٹکڑوں کی شکل میں پیش کیے گئے ہیں[2]۔
ہر کام میں شامل ہے:
- فنکشن کا عنوان: فنکشن کا نام اور پیرامیٹرز کے ساتھ signature۔
- متنی تفصیل: انگریزی زبان میں Docstring جو مطلوبہ فعالیت بیان کرتا ہے۔
- فنکشن کا جسم: خالی جگہ جسے ماڈل کو تیار کردہ کوڈ سے بھرنا ہے۔
ہر کام کے لیے ماڈل سے پوشیدہ عناصر بھی موجود ہیں:
- معیاری حل: فنکشن کا درست (حوالہ جاتی) نفاذ۔
- ماڈیولر ٹیسٹس کا سیٹ (یونٹ ٹیسٹس): تیار کردہ کوڈ کی درستگی کی خودکار جانچ کے لیے استعمال ہوتا ہے۔ ٹیسٹس بنیادی اور انتہائی صورتوں دونوں کا احاطہ کرتے ہیں۔
مسائل موضوعات کی وسیع رینج پر محیط ہیں: بنیادی زبان کی ساختیں اور الگورتھم سے لے کر سادہ ریاضی تک، جو اس سیٹ کو ماڈلز کے لیے متنوع اور چیلنجنگ بناتا ہے۔
ماڈلز کی جانچ کا طریقہ کار
HumanEval پر کامیابی کا اہم میٹرک pass@k ہے، جو ماڈل کے ذریعے فعلی طور پر درست حل کیے گئے مسائل کا تناسب ناپتا ہے[1]۔ حل اسی وقت کامیاب سمجھا جاتا ہے جب تیار کردہ کوڈ دیے گئے مسئلے کے تمام خودکار ٹیسٹس پاس کر لے۔
- pass@1: بنیادی اور سب سے زیادہ استعمال ہونے والا اشارہ۔ اس سے مراد وہ فیصد مسائل ہیں جنہیں ماڈل پہلی کوشش میں حل کر لے (یعنی ہر مسئلے کے لیے ایک حل کی نسل میں)۔
- pass@k: عمومی صورت میں، یہ میٹرک ان مسائل کا تناسب ظاہر کرتا ہے جن کے لیے ماڈل کے ذریعے تیار کردہ k میں سے کم از کم ایک حل تمام ٹیسٹس پاس کر لے۔ مثلاً pass@10 یہ ظاہر کرتا ہے کہ ماڈل کتنے فیصد مسائل حل کر سکتا ہے اگر اسے ہر مسئلے پر 10 کوششوں تک دی جائیں۔
چونکہ pass@k کا براہِ راست حساب بڑی تعداد میں نمونوں کا تقاضا کرتا ہے، اس لیے مصنفین نے اس میٹرک کے حساب کا ایک اعداد و شمار کے لحاظ سے درست طریقہ تجویز کیا جو غیر جانبدارانہ تخمینہ حاصل کرنے کی اجازت دیتا ہے[1]۔
عملی جانچ ایک خاص «سینڈباکس» میں ہوتی ہے: تیار کردہ کوڈ کو کمپائل کر کے جانچ کے ٹیسٹس کے سیٹ پر چلایا جاتا ہے۔ یہ طریقہ ماڈل کی قابلِ عمل اور درست کوڈ تیار کرنے کی صلاحیت ناپتا ہے، نہ کہ محض نحوی طور پر معیار سے ملتا جلتا۔
نتائج اور صنعت پر اثرات
HumanEval پر ابتدائی تجربات نے عمومی مقصد کے ماڈلز اور خاص طور پر کوڈ پر تربیت یافتہ ماڈلز کے درمیان نمایاں فرق ظاہر کیا۔
- 2021 میں OpenAI Codex ماڈل (12 ارب پیرامیٹرز، GitHub کے کوڈ پر تربیت یافتہ) نے پہلی کوشش میں ~28.8% مسائل حل کیے (pass@1)۔
- اسی وقت بڑا لینگویج ماڈل GPT-3 (175 ارب)، جو کوڈ پر تربیت یافتہ نہیں تھا، ایک بھی مسئلہ درست طور پر حل نہ کر سکا[1]۔
ان نتائج نے کامیاب کوڈ جنریشن کے لیے پروگرامنگ ڈیٹا پر خصوصی تربیت کی ضرورت کو اجاگر کیا۔ HumanEval کے ظہور کے بعد یہ benchmark نئے ماڈلز کی پیشرفت کا موازنہ کرنے کے لیے ایک معیاری ٹیسٹ بن گیا۔
- GPT-3.5 سیریز کے ماڈلز (2023 کے آغاز میں) نے pass@1 میں ~72% حاصل کیا۔
- GPT-4 ماڈل (2023) نے اور بھی اعلیٰ نتائج ظاہر کیے، بنیادی ورژن میں ~67% حاصل کیا اور اضافی fine-tuning کے بعد 85% سے تجاوز کیا[3]۔
- اوپن سورس ماڈلز جیسے Code Llama (Meta, 2023) اور WizardCoder (2023) نے بھی اعلیٰ نتائج دکھائے (بالترتیب pass@1 میں ~53% اور ~57%)، ابتدائی ملکیتی ماڈلز سے آگے نکل کر[4]۔
benchmark کی توسیعات اور متغیرات
HumanEval کی کامیابی نے کئی مشتق ورژنز کی تخلیق کو تحریک دی جو ماڈلز کو وسیع تر حالات میں جانچنے کے لیے بنائے گئے ہیں۔
- CL-HumanEval (Cross-Lingual HumanEval): کراس لسانی ورژن (2024)، جہاں اصل HumanEval کے مسائل کو ماڈلز کی مختلف زبانوں میں (انگریزی کے علاوہ) تفصیلات سمجھنے کی صلاحیت جانچنے کے لیے ڈھالا گیا ہے، جبکہ Python میں کوڈ تیار کیا جاتا ہے[5]۔
- Multilingual HumanEval: توسیع (2023) جو انگریزی تفصیل کی بنیاد پر 12 مختلف پروگرامنگ زبانوں (Java، C#، JavaScript اور دیگر سمیت) میں کوڈ جنریشن کی جانچ پر مرکوز ہے[6]۔
- HumanEval-XL: ایک بڑے پیمانے کا benchmark (2024) جو دونوں طریقوں کو یکجا کرتا ہے۔ اس میں 12 پروگرامنگ زبانوں میں مسائل اور 23 عالمی زبانوں میں متنی تفصیلات کے ترجمے شامل ہیں، جن میں روسی، چینی، عربی اور دیگر شامل ہیں۔ مجموعی طور پر HumanEval-XL میں 22,000 سے زائد «تفصیل-کوڈ» جوڑے ہیں[7]۔
روابط
- HumanEval بر Hugging Face
- HumanEval کا صفحہ بر Papers with Code
کتابیات
- Liang, P. et al. (2022). Holistic Evaluation of Language Models (HELM). arXiv:2211.09110.
- Chang, Y. et al. (2023). A Survey on Evaluation of Large Language Models. arXiv:2307.03109.
- Ni, S. et al. (2025). A Survey on Large Language Model Benchmarks. arXiv:2508.15361.
- Biderman, S. et al. (2024). The Language Model Evaluation Harness (lm-eval): Guidance and Lessons Learned. arXiv:2405.14782.
- Kiela, D. et al. (2021). Dynabench: Rethinking Benchmarking in NLP. arXiv:2104.14337.
- Ma, Z. et al. (2021). Dynaboard: An Evaluation‑As‑A‑Service Platform for Holistic Next‑Generation Benchmarking. arXiv:2106.06052.
- Goel, K. et al. (2021). Robustness Gym: Unifying the NLP Evaluation Landscape. arXiv:2101.04840.
- Xu, C. et al. (2024). Benchmark Data Contamination of Large Language Models: A Survey. arXiv:2406.04244.
- Liu, S. et al. (2025). A Comprehensive Survey on Safety Evaluation of LLMs. arXiv:2506.11094.
- Chiang, W.-L. et al. (2024). Chatbot Arena: An Open Platform for Evaluating LLMs by Human Preference. arXiv:2403.04132.
- Boubdir, M. et al. (2023). Elo Uncovered: Robustness and Best Practices in Language Model Evaluation. arXiv:2311.17295.
- Huang, L. et al. (2023). A Survey on Hallucination in Large Language Models. arXiv:2311.05232.
حواشی
- ↑ 1.0 1.1 1.2 1.3 1.4 Chen, M. et al. «Evaluating Large Language Models Trained on Code». arXiv:2107.03374, 2021. [1]
- ↑ «openai/openai_humaneval». Hugging Face Datasets. [2]
- ↑ Niu, C. et al. «On Evaluating the Efficiency of Source Code Generated by LLMs». Proceedings of the 2nd International Conference on AI-generated Content, 2024. [3]
- ↑ Lutfullaev, J. «HumanEval on LLMs Revisited in Late 2023». arXiv:2402.14852, 2023. [4]
- ↑ Sato, M. et al. «CL-HumanEval: A Benchmark for Evaluating Cross-Lingual Transfer through Code Generation». Proceedings of the 38th Pacific Asia Conference on Language, Information and Computation, 2024. [5]
- ↑ Athiwaratkun, B. et al. «Multilingual HumanEval: A Multilingual Code Generation Benchmark». arXiv:2307.11892, 2023. [6]
- ↑ Liu, J. et al. «HumanEval-XL: A Multilingual Code Generation Benchmark for Cross-lingual Natural Language Generalization». LREC-COLING 2024. [7]