HumanEval Benchmark (TL)
HumanEval — ito ay isang etalon na hanay ng datos (benchmark), na inilaan para sa layunin ng pagtatasa ng kalidad ng code na nililikha ng mga modelo ng artipisyal na katalinuhan batay sa tekstong paglalarawan ng gawain[1]. Ito ay ipinakita noong Hulyo 2021 ng mga mananaliksik ng OpenAI sa ilalim ng pamumuno ni Mark Chen at naging isa sa mga pangunahing pamantayan para sa pagsukat ng functional na kawastuhan ng mga nabuong programa.
Ang pagbuo ng HumanEval ay naging kailangan dahil sa pangangailangan ng maaasahang paraan ng pagtatasa ng code generation. Noon, ang kalidad ng code na nililikha ng mga language model ay madalas na tinatasa sa pamamagitan ng mga hindi direktang sukatan (halimbawa, BLEU) o mano-mano, na hindi ginagarantiyahan ang pagtutugma sa aktwal na pagiging gumagana ng mga programa. Nilulutas ng HumanEval ang problemang ito sa pamamagitan ng pagtuon sa functional na kawastuhan: ang nabuong code ay tinatasa hindi batay sa sintaktikong pagkakatulad nito sa etalon, kundi batay sa kakayahan nitong matagumpay na makapasa sa isang hanay ng mga awtomatikong unit test[1].
Estruktura ng hanay ng mga gawain
Ang benchmark ay binubuo ng 164 na gawain sa programming, na isinulat nang mano-mano nang espesyal para sa hanay ng datos na ito upang matiyak ang kawalan ng mga ito sa mga training set ng mga modelo. Lahat ng gawain ay nakasulat sa wikang Python at ipinakita sa anyo ng mga fragment ng code na may paglalarawan[2].
Bawat gawain ay kinabibilangan ng:
- Pamagat ng function: Ang signature ng function na may pangalan at mga parameter nito.
- Tekstong paglalarawan: Docstring sa wikang Ingles, na naglalarawan ng kinakailangang functionality.
- Katawan ng function: Isang blangkong lugar na dapat punan ng modelo gamit ang nabuong code.
Para sa bawat gawain, mayroon ding mga elementong nakatago mula sa modelo:
- Kanonikong solusyon: Ang tamang (etalon) na implementasyon ng function.
- Hanay ng modular na test (unit test): Ginagamit para sa awtomatikong pagsusuri ng kawastuhan ng nabuong code. Sinasaklaw ng mga test ang parehong mga pangunahing at mga hangganan (edge) na kaso.
Sinasaklaw ng mga gawain ang malawak na hanay ng mga paksa: mula sa mga pangunahing konstruksiyon ng wika at mga algorithm hanggang sa simpleng matematika, na ginagawang magkakaiba at mahirap ang hanay para sa mga modelo.
Metodolohiya ng pagtatasa ng mga modelo
Ang pangunahing sukatan ng tagumpay sa HumanEval ay ang pass@k, na sumusukat sa proporsyon ng mga gawaing nalutas ng modelo nang may functional na kawastuhan[1]. Ang isang solusyon ay itinuturing na matagumpay kung ang nabuong code ay pumapasa sa lahat ng awtomatikong test para sa gawaing iyon.
- pass@1: Ang pangunahing at pinakakaraniwang ginagamit na tagapagpahiwatig. Ito ay nangangahulugang ang porsyento ng mga gawaing nalutas ng modelo sa unang pagtatangka (iyon ay, kapag bumubuo ng isang variant ng solusyon para sa bawat gawain).
- pass@k: Sa pangkalahatang kaso, ipinapakita ng sukatang ito ang proporsyon ng mga gawain kung saan hindi bababa sa isa sa k na mga variant ng solusyon na nabuo ng modelo ay pumapasa sa lahat ng test. Halimbawa, ipinapakita ng pass@10 kung anong proporsyon ng mga gawain ang kayang lutasin ng modelo kung bibigyan ito ng hanggang 10 pagtatangka para sa bawat isa.
Dahil ang direktang pagkalkula ng pass@k ay nangangailangan ng malaking bilang ng mga sample, nagmungkahi ang mga may-akda ng isang istatistikal na wastong paraan ng pagkalkula ng sukatang ito, na nagbibigay-daan sa pagkuha ng hindi nililihis na pagtatantya[1].
Ang praktikal na pagsubok ay nagaganap sa isang espesyal na "sandbox": ang nabuong code ay kino-compile at pinapatakbo sa isang hanay ng mga verification test. Ang pamamaraang ito ay nagbibigay-daan upang masukat ang kakayahan ng modelo na bumuo ng executable at tamang code, at hindi lamang sintaktikong katulad ng etalon.
Mga resulta at impluwensya sa industriya
Ipinakita ng mga paunang eksperimento sa HumanEval ang malaking pagkakaiba sa pagitan ng mga modelo na pangkalahatan at mga modelong espesyal na sinanay sa code.
- Noong 2021, ang modelo ng OpenAI Codex (12 bilyong parameter, sinanay sa code mula sa GitHub) ay nagawa sa unang pagtatangka na malutas ang ~28.8% ng mga gawain (pass@1).
- Sa parehong panahon, ang mas malaking language model na GPT-3 (175 bilyong parameter), na hindi sinanay sa code, ay hindi nakagawa ng ni isang tamang solusyon[1].
Binigyang-diin ng mga resultang ito ang pangangailangan ng espesyal na pagsasanay sa datos ng programming para sa matagumpay na code generation. Pagkatapos lumabas ang HumanEval, mabilis na naging pamantayang pagsubok ang benchmark para sa paghahambing ng pag-unlad ng mga bagong modelo.
- Ang mga modelo ng linya ng GPT-3.5 (simula ng 2023) ay umabot sa ~72% pass@1.
- Ipinakita ng modelo ng GPT-4 (2023) ang mas mataas pa na mga resulta, na umabot sa ~67% sa batayang bersyon at lumampas sa 85% pagkatapos ng karagdagang mga pagsasaayos[3].
- Ang mga bukas na modelo, tulad ng Code Llama (Meta, 2023) at WizardCoder (2023), ay nagpakita rin ng mataas na mga resulta (~53% at ~57% pass@1 ayon sa pagkakasunod), na nalampasan ang mga maagang proprietary na modelo[4].
Mga pagpapalawak at variant ng benchmark
Ang tagumpay ng HumanEval ay nagbigay-inspirasyon sa paglikha ng ilang mga derivative na bersyon, na nilalayon ang pagsusuri ng mga modelo sa mas malawak na mga kondisyon.
- CL-HumanEval (Cross-Lingual HumanEval): Isang cross-lingual na variant (2024), kung saan ang mga gawain ng orihinal na HumanEval ay inangkop upang suriin ang kakayahan ng mga modelo na maunawaan ang mga paglalarawan sa iba't ibang wika (bukod sa Ingles), habang bumubuo ng code sa Python[5].
- Multilingual HumanEval: Isang pagpapalawak (2023), na naglalayon sa pagsusuri ng code generation sa 12 iba't ibang wika ng programming (kabilang ang Java, C#, JavaScript at iba pa) batay sa paglalarawang nasa wikang Ingles[6].
- HumanEval-XL: Isang malawak na benchmark (2024), na pinagsasama ang parehong mga pamamaraan. Naglalaman ito ng mga gawain sa 12 wika ng programming at mga pagsasalin ng mga tekstong paglalarawan sa 23 wika ng mundo, kabilang ang Ruso, Tsino, Arabe at iba pa. Sa kabuuan, ang HumanEval-XL ay naglalaman ng mahigit 22,000 pares na "paglalarawan-code"[7].
Mga link
- HumanEval sa Hugging Face
- Pahina ng HumanEval sa Papers with Code
Panitikan
- 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.
Mga tala
- ↑ 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]