five

BigCodeBench

收藏
arXiv2024-06-22 更新2024-06-26 收录
下载链接:
https://bigcode-bench.github.io/
下载链接
链接失效反馈
官方服务:
资源简介:
BigCodeBench是由蒙纳士大学等机构创建的一个编程任务基准数据集,包含1140个细粒度的编程任务,涉及139个库和7个领域。该数据集通过LLM和人类专家的合作构建,旨在评估大型语言模型在解决复杂和实际编程任务中的能力。数据集内容丰富,覆盖多种编程场景,如代码完成和指令到代码的转换。创建过程中,数据集通过严格的测试案例和环境设置来验证程序行为,确保数据质量。BigCodeBench主要用于评估和推动自动化软件工程领域的发展,特别是在代码生成和复杂指令理解方面。

BigCodeBench is a programming task benchmark dataset developed by Monash University and other institutions. It comprises 1140 fine-grained programming tasks covering 139 libraries and spanning 7 domains. Constructed through collaboration between large language models (LLMs) and human experts, this dataset is designed to evaluate the capabilities of LLMs in solving complex and practical programming tasks. Boasting rich content, it covers diverse programming scenarios such as code completion and instruction-to-code translation. During its development, rigorous test cases and environment configurations are employed to validate program behavior and guarantee data quality. BigCodeBench is primarily utilized to assess and promote the advancement of automated software engineering, especially in the fields of code generation and complex instruction understanding.
提供机构:
蒙纳士大学
创建时间:
2024-06-22
搜集汇总
数据集介绍
main_image_url
构建方式
BigCodeBench数据集的构建方式融合了人类专家与大型语言模型(LLMs)的合作。首先,LLMs根据提供的代码片段和简短的人类指令来合成编程任务,然后由人类专家进行审查和修改,以确保任务的质量和实用性。其次,LLMs协助进行程序重构和测试用例生成,以验证程序的正确性。最后,人类专家对合成数据进行严格的审查,包括手动检查、预评估和交叉检查,以确保数据的质量和一致性。
特点
BigCodeBench数据集的特点在于其挑战性和实用性。数据集包含1,140个编程任务,涵盖了从139个流行库和7个领域中的723个函数调用。每个编程任务都伴随着5.6个测试用例,平均分支覆盖率为99%,以确保程序的健壮性和准确性。此外,数据集还包含一个面向自然语言的变体BigCodeBench-Instruct,它将原始的docstrings自动转换为简短且仅包含关键信息的指令,以评估LLMs在没有冗余信息的情况下理解人类需求的能力。
使用方法
使用BigCodeBench数据集进行评估时,首先需要下载数据集,并使用提供的bigcodebench工具进行模型推理和执行评估。用户可以通过bigcodebench.generate命令生成代码,并通过bigcodebench.sanitize命令对生成的代码进行清洗。最后,使用bigcodebench.evaluate命令对代码进行执行评估,以验证其正确性。评估结果可以通过bigcodebench.inspect命令进行查看和分析。
背景与挑战
背景概述
在自动化软件工程领域,大型语言模型(LLM)的应用日益广泛,尤其是在编程方面。现有的编程基准测试,如HumanEval和MBPP,主要关注简短、自包含的算法任务,而BigCodeBench数据集的引入旨在填补这一评价空白,评估LLM在解决更具挑战性和实践性的编程任务方面的能力。该数据集由来自多个机构的研究人员共同构建,包括Monash University、CSIRO’s Data61、Singapore Management University等。BigCodeBench通过挑战LLM从139个库和7个领域中调用多个函数来解决1140个细粒度的编程任务,以评估LLM在工具使用和复杂指令遵循方面的能力。
当前挑战
BigCodeBench数据集面临的挑战包括:1) 自然地获取具有复杂指令的自包含编程任务,这比HumanEval中的简短代码练习更具挑战性;2) 现实世界编程场景的多样性,现有的基准测试通常只关注数据科学等流行场景;3) 现有编程基准测试中存在大量模糊或定义不明确的规范,导致评估结果不准确。此外,LLM在调用多个跨域库的函数和遵循复杂指令以解决编程任务方面仍然存在困难。
常用场景
经典使用场景
BigCodeBench 数据集主要被用于评估大型语言模型(LLMs)在编程领域的实际应用能力。该数据集包含了从 139 个库和 7 个领域中的 1,140 个细粒度的编程任务,这些任务要求 LLMs 使用多样的函数调用作为工具来解决复杂的编程问题。数据集中的每个编程任务都包含 5.6 个测试用例,平均分支覆盖率高达 99%,这使得 BigCodeBench 成为评估 LLMs 解决实际编程任务能力的重要基准。
实际应用
BigCodeBench 数据集的实际应用场景非常广泛,它不仅可以帮助开发者评估 LLMs 在编程领域的实际应用能力,还可以用于训练和改进 LLMs 的编程能力。例如,开发者可以使用 BigCodeBench 来测试 LLMs 在解决数据分析和网络开发等实际问题方面的表现。此外,BigCodeBench 还可以用于评估 LLMs 在遵循复杂指令和利用跨域库函数方面的能力,从而帮助开发者更好地理解和利用 LLMs。
衍生相关工作
BigCodeBench 数据集的衍生工作主要集中在评估 LLMs 在解决实际问题方面的能力。例如,研究人员可以使用 BigCodeBench 来评估 LLMs 在解决数据分析和网络开发等实际问题方面的表现。此外,BigCodeBench 还可以用于评估 LLMs 在遵循复杂指令和利用跨域库函数方面的能力,从而帮助研究人员更好地理解和利用 LLMs。BigCodeBench 的衍生工作还包括开发新的评估基准和改进 LLMs 的编程能力。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

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

二维码
科研交流群

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

数据驱动未来

携手共赢发展

商业合作