LLM 生成代码的效率如何?一个严谨高标准的基准测试
软件工程
2025-02-20 v4 人工智能
机器学习
摘要
大型语言模型(LLM)的出现显著推动了程序综合的前沿。LLM 基于程序综合的发展需要对LLM生成的代码进行彻底的评估。大多数评估框架关注生成代码的(functional)正确性;在现有评估中,作为代码质量重要衡量标准的效率被忽视了。本 work 发展了ENAMEL(EfficeNcy AutoMatic EvaLuator),一个用于评估LLMs在生成高效代码方面能力的严谨高标准基准测试。首先,我们提出了新的效率指标eff@k,将正确性的pass@k指标从正确性推广到效率,并妥善处理右删失执行时间。此外,我们通过Rao--Blackwell化获得eff@k的无偏且方差减小的估计器;我们还提供该新估计器的 numerically 稳定实现。其次,为了为效率评估设定高标准,我们请专家设计最佳算法和实现作为我们的 reference solutions of efficiency,许多这些实现在HumanEval和HumanEval+中显著比现有的规范解决方案更高效。此外,为确保评估的严谨性,我们请专家精选强大的 test case generators,以过滤错误代码并区分次优算法。对30个流行LLMs进行广泛研究显示,LLMs在生成专家水平的高效代码方面仍有不足。使用我们问题集的两个子集,我们演示了这种不足是由于当前LLMs在设计先进算法方面困难,且几乎不了解实现优化。我们的基准测试已公开于https://github.com/q-rz/enamel。
引用
@article{arxiv.2406.06647,
title = {How Efficient is LLM-Generated Code? A Rigorous & High-Standard Benchmark},
author = {Ruizhong Qiu and Weiliang Will Zeng and James Ezick and Christopher Lott and Hanghang Tong},
journal= {arXiv preprint arXiv:2406.06647},
year = {2025}
}
备注
ICLR 2025