DOMAINEVAL: An Auto-Constructed Benchmark for Multi-Domain Code Generation
<|reference_start|>DOMAINEVAL: An Auto-Constructed Benchmark for Multi-Domain Code Generation: Code benchmarks such as HumanEval are widely adopted to evaluate the capabilities of Large Language Models (LLMs), providing insights into their strengths and weaknesses. However, current benchmarks primarily exercise LLMs' capability on common coding tasks (e.g., bubble sort, greatest common divisor), leaving domain-specific coding tasks (e.g., computation, system, cryptography) unexplored. To fill this gap, we propose a multi-domain code benchmark, DOMAINEVAL, designed to evaluate LLMs' coding capabilities thoroughly. Our pipeline works in a fully automated manner, enabling a push-bottom construction from code repositories into formatted subjects under study. Interesting findings are observed by evaluating 12 representative LLMs against DOMAINEVAL. We notice that LLMs are generally good at computation tasks while falling short on cryptography and system coding tasks. The performance gap can be as much as 68.94% (80.94% - 12.0%) in some LLMs. We also observe that generating more samples can increase the overall performance of LLMs, while the domain bias may even increase. The contributions of this study include a code generation benchmark dataset DOMAINEVAL, encompassing six popular domains, a fully automated pipeline for constructing code benchmarks, and an identification of the limitations of LLMs in code generation tasks based on their performance on DOMAINEVAL, providing directions for future research improvements. The leaderboard is available at https://domaineval.github.io/.<|reference_end|>
@article{zhu2024domaineval:,
    title={DOMAINEVAL: An Auto-Constructed Benchmark for Multi-Domain Code
  Generation},
    author={Qiming Zhu, Jialun Cao, Yaojie Lu, Hongyu Lin, Xianpei Han, Le Sun,
  Shing-Chi Cheung},
    journal={arXiv preprint arXiv:2408.13204},
    year={2024},
    archivePrefix={arXiv},
    eprint={2408.13204},
    primaryClass={cs.AI cs.SE}
}