CoderUJB: An Executable and Unified Java Benchmark for Practical Programming Scenarios

2024年03月28日
  • 简介
    在为软件工程量身定制的大型语言模型(LLMs)不断演变的背景下,准确反映实际开发场景的基准测试显得至关重要。目前的基准测试要么过于简单,要么无法捕捉软件开发的多任务特性。为了解决这个问题,我们介绍了CoderUJB,这是一个新的基准测试,旨在评估LLMs在多样化的Java编程任务上的表现,这些任务是可执行的,并且反映了实际开发场景,承认Java在现实世界的软件生产中的普遍性。CoderUJB由2239个编程问题组成,这些问题源自17个真实的开源Java项目,并涵盖了五个实际的编程任务。我们在这个基准测试上进行了实证研究,调查了各种开源和闭源LLMs的编码能力,研究了在特定编程语言代码的持续预训练和指令微调对其性能的影响。研究结果表明,尽管LLMs展现出了强大的潜力,但仍然存在挑战,特别是在非功能性代码生成方面(例如测试生成和缺陷检测)。重要的是,我们的结果建议在特定编程语言的持续预训练和指令微调方面要谨慎,因为这些技术可能会妨碍模型在某些任务上的性能,这表明需要更为细致的策略。因此,CoderUJB标志着朝着更加现实的LLMs编程能力评估迈出了重要的一步,而我们的研究为未来软件工程中这些模型的发展提供了有价值的见解。
  • 作者讲解
  • 图表
  • 解决问题
    论文旨在解决软件工程中大型语言模型(LLMs)的评估问题,现有的基准测试要么过于简单,要么无法捕捉软件开发的多任务本质。
  • 关键思路
    CoderUJB是一个新的基准测试,旨在评估LLMs在多样化的Java编程任务中的表现。该基准测试包含了来自17个开源Java项目的2,239个编程问题,涵盖了五个实际的编程任务。
  • 其它亮点
    论文对多个开源和闭源LLMs的编码能力进行了实证研究,并研究了在特定编程语言代码的持续预训练和指令微调对它们性能的影响。研究结果表明,尽管LLMs表现出了强大的潜力,但仍存在挑战,特别是在非功能性代码生成方面。此外,论文还提出了更加细致的策略,以应对特定编程语言持续预训练和指令微调可能会对模型性能产生的负面影响。
  • 相关研究
    与该论文相关的研究包括:《DeepAPI》、《CodeBERT》、《GraphCodeBERT》等。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问