five

ComplexCodeEval

收藏
arXiv2024-09-16 更新2024-09-18 收录
下载链接:
https://doi.org/10.1145/3691620.3695552
下载链接
链接失效反馈
官方服务:
资源简介:
ComplexCodeEval是一个用于评估大型代码模型在复杂代码环境中性能的基准数据集。该数据集由中国电子科技大学深圳研究院创建,包含3897个Java样本和7184个Python样本,总计11081条数据。数据集的样本来自1055个高星级的Java GitHub仓库和2107个高星级的Python GitHub仓库。创建过程中,数据集筛选了69个流行的Java框架和55个流行的Python包,确保样本的多样性和真实性。每个样本包含多种注释,如函数签名、文档字符串和参考API,以适应多种下游任务。数据集的应用领域包括代码生成、代码补全、API推荐和测试用例生成,旨在解决实际开发中的编程挑战。

ComplexCodeEval is a benchmark dataset for evaluating the performance of large code models in complex code environments. It was developed by the Shenzhen Research Institute of University of Electronic Science and Technology of China. The dataset consists of 3,897 Java samples and 7,184 Python samples, with a total of 11,081 entries. The samples are sourced from 1,055 high-starred Java GitHub repositories and 2,107 high-starred Python GitHub repositories. During dataset construction, 69 popular Java frameworks and 55 popular Python packages were selected to guarantee the diversity and authenticity of the samples. Each sample contains multiple types of annotations, including function signatures, docstrings, and reference APIs, to accommodate a wide range of downstream tasks. Its application areas cover code generation, code completion, API recommendation, and test case generation, with the goal of addressing programming challenges in real-world development scenarios.
提供机构:
中国电子科技大学深圳研究院
创建时间:
2024-09-16
搜集汇总
数据集介绍
main_image_url
构建方式
ComplexCodeEval数据集通过从GitHub上筛选出1,055个高星Java仓库和2,107个高星Python仓库,从中提取了3,897个Java样本和7,184个Python样本。为确保数据集能够反映真实开发场景,研究团队首先根据Libraries.io的SourceRank筛选出69个流行的Java第三方框架和55个流行的Python第三方包,这些框架和包涵盖了Web开发、网络通信、数据处理和持久化、安全加密等多个领域。随后,研究团队从依赖这些库的高星仓库中提取函数样本,并确保每个函数样本调用至少一个选定的库API。此外,每个函数样本都包含多个时间戳,以避免数据泄露问题。
特点
ComplexCodeEval数据集的一个显著特点是其多样性和复杂性。该数据集不仅包含了多种编程语言的样本,还涵盖了代码生成、代码补全、API推荐和测试函数生成等多个下游任务。每个函数样本都附带了丰富的注释信息,如函数签名、文档字符串和参考API,这些信息有助于模型在不同任务中的表现。此外,数据集中的每个函数样本都来自依赖至少一个流行库的仓库,确保了样本的真实性和实用性。
使用方法
ComplexCodeEval数据集可用于评估大型代码模型在复杂开发场景中的性能。研究者可以通过该数据集进行多种任务的评估,包括代码生成、代码补全、API推荐和测试函数生成。数据集中的丰富注释信息和时间戳可以帮助研究者更全面地评估模型的性能,并探索不同上下文信息对模型表现的影响。此外,数据集的开源性质使得研究者和开发者能够更好地优化和改进大型代码模型。
背景与挑战
背景概述
近年来,随着学术界和工业界对大型语言模型(LLMs)在代码相关任务中的应用越来越关注,越来越多的代码模型(LCMs)被提出,并随之出现了相应的评估基准。尽管现有的评估基准有助于比较不同的LCMs,但它们可能无法反映LCMs在各种开发场景中的性能。具体来说,它们可能仅评估模型在一种场景(例如,代码生成或代码补全)中的性能,而实际开发环境是多样化的,可能涉及多种任务,如代码生成、代码补全、API推荐和测试函数生成。此外,这些问题可能并非源自实际开发实践,无法捕捉开发者在开发过程中面临的编程挑战。为了解决上述问题,我们提出了ComplexCodeEval,这是一个新的基准,用于评估LCMs在各种开发场景中的性能。ComplexCodeEval包括来自1,055个高星GitHub仓库的3,897个Java样本和来自2,107个高星仓库的7,184个Python样本。每个函数样本在ComplexCodeEval中包含多个注释(例如,函数签名、文档字符串和参考API),以适应各种下游任务。
当前挑战
ComplexCodeEval数据集在构建和应用过程中面临多个挑战。首先,实际编程环境的多样性要求数据集能够涵盖多种任务,而不仅仅是单一任务的评估。其次,数据集的样本必须源自实际开发实践,以确保能够准确反映开发者在编程过程中遇到的挑战。此外,数据泄露问题也是一个重要的挑战,因为使用泄露的数据进行评估可能会导致对模型性能的高估,从而产生不准确的评估结果。为了应对这些挑战,ComplexCodeEval通过包含多个时间戳来避免数据泄露问题,并确保每个函数样本源自依赖于至少一个选定库(基于流行度)的仓库,并且每个函数样本必须调用选定库中的至少一个API。
常用场景
经典使用场景
ComplexCodeEval 数据集在评估大型代码模型(LCMs)在复杂代码环境中的表现方面具有经典应用。该数据集通过包含来自高星 GitHub 仓库的 3,897 个 Java 样本和 7,184 个 Python 样本,以及每个函数样本中的多种注释(如函数签名、文档字符串和参考 API),支持多种下游任务,如代码生成、代码补全、API 推荐和测试函数生成。这使得研究人员能够在多样化的开发场景中全面评估 LCMs 的性能。
实际应用
在实际应用中,ComplexCodeEval 数据集可用于评估和优化代码生成工具、代码补全插件、API 推荐系统和自动化测试工具等。通过在复杂代码环境中评估这些工具的性能,开发者可以更好地选择和配置适合其开发需求的工具,从而提高开发效率和代码质量。此外,该数据集还可用于培训和验证新的代码智能模型,推动代码生成和理解技术的发展。
衍生相关工作
ComplexCodeEval 数据集的发布催生了一系列相关研究工作。例如,基于该数据集的研究揭示了 LCMs 在不同编码任务中的性能差异,以及丰富的上下文信息如何显著提升模型性能。此外,研究还探讨了数据泄露对模型评估结果的影响,提出了定期更新基准以确保与最新主流 LCMs 兼容的建议。这些研究不仅深化了对 LCMs 性能的理解,还为未来的代码智能研究提供了新的方向和方法。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作