中文

Top Pass: 通过 Pass@k 最大化代码排名提升代码生成

人工智能 2024-08-13 v1 软件工程

摘要

代码生成已因大型语言模型(LLM)的深刻进展而得到极大增强。然而,此类基于 LLM 的代码生成方法在面对复杂问题时仍难以在少量尝试中生成无误代码。为此,现行策略是采样大量候选程序,希望其中任何一个都能工作。然而,代码生成系统的用户通常期望只需审查或测试少量代码候选就能找到正确的程序。否则,该系统将毫无用处。在本论文中,我们提出了 Top Pass,一种代码排名方法,可从大量候选方案中识别潜在的正确解。Top Pass 直接优化 pass@k 损失函数,提升候选列表顶部的质量。这使用户能够以尽可能少的尝试次数找到正确解。四个基准上的实验结果表明,我们的 Top Pass 方法通过产生更好的排名结果提升了代码生成模型的可用性,特别是在 CodeContests 上相比最先进的排名方法实现了 32.9% 的 pass@1 相对提升。

关键词

引用

@article{arxiv.2408.05715,
  title  = {Top Pass: Improve Code Generation by Pass@k-Maximized Code Ranking},
  author = {Zhi-Cun Lyu and Xin-Ye Li and Zheng Xie and Ming Li},
  journal= {arXiv preprint arXiv:2408.05715},
  year   = {2024}
}

备注

Accepted by Frontier of Computer Science