中文

PPM:面向代码生成模型基准测试的多样化编程问题自动生成

软件工程 2024-01-30 v1 人工智能 计算与语言 编程语言

摘要

近年来,提出了大量大型代码生成模型(Large Code Generation Models, LCGMs),展现出协助开发者完成复杂编程任务的巨大潜力。对 LCGMs 进行基准测试需要创建一组多样化的编程问题,每个问题包含提示(包括任务描述)、规范解和测试输入。现有的此类问题集构建方法可分为两类:人工方法和基于扰动的方法。然而,人工方法耗时费力且缺乏可扩展性,同时由于 LCGMs 可能存在数据污染,还面临数据完整性风险;而基于扰动的方法主要生成具有相同规范解的语义同质化问题,并引入易被集成开发环境(IDE)自动纠正的拼写错误,导致其效果不佳且不切实际。在本工作中,我们提出了编程问题合并(Programming Problem Merging, PPM)的理念,并提供了该理念的两种实现。我们将工具应用于两个广泛使用的数据集,并使用八种代码生成模型将其与九种基线方法进行了比较。结果表明,与基线方法相比,我们的工具在生成更具挑战性、更多样化且更自然的编程问题方面具有显著效果。

关键词

引用

@article{arxiv.2401.15545,
  title  = {PPM: Automated Generation of Diverse Programming Problems for Benchmarking Code Generation Models},
  author = {Simin Chen and Xiaoning Feng and Xiaohong Han and Cong Liu and Wei Yang},
  journal= {arXiv preprint arXiv:2401.15545},
  year   = {2024}
}

备注

This paper has been accepted to The ACM International Conference on the Foundations of Software Engineering FSE 2024