COFFE
收藏arXiv2025-02-05 更新2025-02-11 收录
下载链接:
https://doi.org/10.1145/3715727
下载链接
链接失效反馈官方服务:
资源简介:
COFFE是一个用于评估大型语言模型生成的代码解决方案时间效率的代码生成基准。该数据集基于现有的正确性基准HumanEval、MBPP、CodeContests和APPS构建,包含函数级别和文件级别的代码生成问题,通过引入压力测试用例生成方法STGen来提高测试用例的区分度。数据集共包含756个问题,旨在解决代码生成中时间效率评估的挑战,应用领域为软件工程,特别是大型语言模型在代码生成方面的研究。
COFFE is a code generation benchmark for evaluating the time efficiency of code solutions generated by large language models. This dataset is constructed based on existing correctness benchmarks including HumanEval, MBPP, CodeContests and APPS, and covers both function-level and file-level code generation problems. It adopts the stress test case generation method STGen to improve the discriminative power of test cases. The dataset consists of 756 problems in total, aiming to address the challenge of time efficiency evaluation in code generation. Its application domain is software engineering, particularly research on large language models for code generation.
提供机构:
香港中文大学, 中国
创建时间:
2025-02-05
搜集汇总
数据集介绍

构建方式
COFFE数据集旨在评估大型语言模型生成的代码的时间效率。该数据集构建于现有的正确性基准之上,包括HumanEval、MBPP、CodeContests和APPS,通过添加由STGen生成的压力测试用例来提高区分度。STGen通过三个阶段来生成压力测试用例:合同生成、压力测试用例生成和测试用例-合同对检查。合同是断言语句的集合,用于记录输入之间的依赖关系,并在测试用例生成过程中提供指导。压力测试用例有两种新格式:表达式测试用例和生成器测试用例,它们通过代码生成输入而不是直接提供测试输入,从而缩短了测试用例的长度。
使用方法
使用COFFE数据集评估代码生成的时间效率,可以按照以下步骤进行:1) 选择要评估的代码生成问题;2) 使用STGen生成压力测试用例;3) 使用efficient@k指标评估代码解决方案的正确性和时间效率。用户可以将生成的代码解决方案与基准解决方案进行比较,以确定其性能。
背景与挑战
背景概述
在大型语言模型(LLMs)的时代,代码生成技术极大地提高了开发效率。现有的LLMs能够根据自然语言的详细描述生成代码解决方案,并在代码生成的正确性方面取得了显著进展。然而,尽管对正确性的关注日益增加,但LLMs生成的代码解决方案的时间效率却尚未得到充分探索。当前的正确性基准测试用例无法很好地区分不同代码解决方案的时间效率,且现有的执行时间测量方法不够稳定和全面。为了解决代码生成时间效率评估中的挑战,研究人员提出了COFFE(Code Efficiency Benchmark for Code Generation)数据集。该数据集包含398个函数级别代码生成问题和358个文件级别代码生成问题,旨在评估LLMs生成的代码解决方案的时间效率。COFFE通过引入压力测试用例生成方法和基于CPU指令计数的efficienct@k指标,为评估LLMs生成的代码解决方案的正确性和时间效率提供了稳定和全面的基准。
当前挑战
COFFE数据集面临的主要挑战包括:1) 现有的正确性测试用例无法很好地区分不同代码解决方案的时间效率。现有的测试用例通常具有较小的输入,旨在覆盖大多数边界情况以检测代码解决方案中的潜在逻辑错误。然而,当代码具有不同的时间复杂度时,在小输入下可能需要相似的时间,因此难以区分具有不同时间效率的代码解决方案。2) 执行时间指标对于时间效率评估来说不够稳定和全面。与正确性评估不同,执行时间测量高度依赖于实验进行的机器。此外,现有的执行时间测量方法通常被认为是独立于正确性评估的,但时间效率评估是在正确生成代码解决方案的基础上进行的。目前,还没有单一的指标可以同时评估LLMs生成的代码解决方案的正确性和时间效率。
常用场景
经典使用场景
COFFE 数据集被广泛用于评估大型语言模型(LLM)生成代码的时间效率。它通过引入压力测试用例来区分不同代码解决方案的时间效率,并使用基于 CPU 指令计数的 efficienct@k 指标来稳定地比较不同解决方案。COFFE 包含 398 个函数级代码生成问题和 358 个文件级代码生成问题,使得研究人员能够全面评估 LLM 生成的代码解决方案的时间效率。
解决学术问题
COFFE 数据集解决了现有正确性基准在时间效率评估方面的不足。现有的正确性测试用例难以区分不同代码解决方案的时间效率,且执行时间测量不稳定、不全面。COFFE 通过引入压力测试用例和基于 CPU 指令计数的 efficienct@k 指标,有效地解决了这些问题,为评估 LLM 生成的代码解决方案的时间效率提供了新的思路和方法。
实际应用
COFFE 数据集在实际应用中具有重要意义。它可以帮助研究人员和软件从业者选择合适的 LLM 模型,以便在保证代码正确性的同时,提高代码的时间效率。此外,COFFE 还可以帮助 LLM 研究人员改进 LLM 模型,使其能够生成更高效的代码解决方案。
数据集最近研究
最新研究方向
在大型语言模型(LLMs)时代,代码生成已经极大地提高了开发效率。当前LLMs能够根据自然语言的详细描述生成代码解决方案。许多研究工作致力于提高LLM生成的代码的正确性,并提出了许多基准来全面评估正确性。尽管关注正确性,但LLM生成的代码解决方案的时间效率尚未得到充分探索。现有的正确性基准不适合时间效率评估,因为它们的测试用例不能很好地区分不同代码解决方案的时间效率。此外,当前的执行时间测量不稳定且不全面,威胁到时间效率评估的有效性。为了解决代码生成时间效率评估中的挑战,我们提出了COFFE,一个用于评估LLM生成的代码解决方案的时间效率的代码生成基准。COFFE包含398个函数级代码生成问题和358个文件级代码生成问题。为了提高区分度,我们设计了一种新的压力测试用例生成方法,并提出了两种新的测试用例格式,以提高生成的准确性。对于时间评估指标,我们基于CPU指令计数提出了efficienct@k,以确保不同解决方案之间的稳定和可靠的比较。我们在COFFE上评估了14种流行的LLMs,并发现了四个发现。基于这些发现,我们对LLM研究人员和软件实践者提出了建议,以促进LLMs在代码生成中的未来研究和应用。
相关研究论文
- 1COFFE: A Code Efficiency Benchmark for Code Generation香港中文大学, 中国 · 2025年
以上内容由遇见数据集搜集并总结生成



