中文

ChatGPT 代码生成中非确定性的实证研究

软件工程 2024-10-18 v2

摘要

近来,关于大语言模型(LLM)用于软件工程任务尤其是代码生成的研究呈爆发式增长。然而,LLM 的结果可能高度不稳定;对于同一提示,非确定性地返回差异很大的代码。非确定性是对科学结论有效性的潜在威胁。当非确定性较高时,除非研究者在实证分析中改变其行为加以控制,否则科学结论根本不可靠。本文开展一项实证研究,证明非确定性确实很高,从而凸显这种行为的必要性。我们选择研究 ChatGPT,因为它在代码生成研究文献中已高度普及。我们报告了对来自三个代码生成基准(即 CodeContests、APPS 和 HumanEval)的 829 个代码生成问题的研究结果。我们的结果揭示了高度的非确定性:在不同请求间测试输出完全一致为零的编码任务比例,在 CodeContests、APPS 和 HumanEval 上分别为 75.76%、51.00% 和 47.56%。此外,我们发现将温度设为 0 并不能保证代码生成的确定性,尽管它确实比默认配置(温度=1)带来更少的 non-determinism。这些结果确认,目前存在对科学结论有效性的显著威胁。为使基于 LLM 的研究建立在更坚实的科学基础之上,研究者在得出结论时需要将非确定性纳入考虑。

关键词

引用

@article{arxiv.2308.02828,
  title  = {An Empirical Study of the Non-determinism of ChatGPT in Code Generation},
  author = {Shuyin Ouyang and Jie M. Zhang and Mark Harman and Meng Wang},
  journal= {arXiv preprint arXiv:2308.02828},
  year   = {2024}
}