中文

利用内部表示评估大语言模型生成代码的正确性

软件工程 2025-08-05 v2 机器学习

摘要

确保大语言模型(LLM)生成代码的正确性是 AI 驱动的软件开发中的一项重大挑战。现有方法主要依赖黑盒(闭盒)方法在生成后评估正确性,未能利用 LLM 在代码生成期间其内部状态中蕴含的丰富信息。在本文中,我们引入了 OPENIA,这是一个新颖的白盒(开盒)框架,利用这些内部表示来评估 LLM 生成代码的正确性。OPENIA 系统地分析了专为代码定制的代表性开源 LLM(包括 DeepSeek-Coder、CodeLlama 和 MagicCoder)在多样化代码生成基准上的中间状态。我们的实证分析表明,这些内部表示编码了与生成代码正确性强相关的潜在信息。基于这些见解,OPENIA 使用白盒/开盒方法对代码正确性做出有根据的预测,在适应性和鲁棒性上相比传统的基于分类的方法和零样本方法具有显著优势。实验结果表明,OPENIA 始终优于基线模型,实现了更高的准确率、精确率、召回率和 F1 分数,在独立代码生成中提升高达 2 倍,在特定仓库场景中提升 46%。通过释放过程内信号的潜力,OPENIA 为 LLM 辅助代码生成中更主动、更高效的质量保证机制铺平了道路。

关键词

引用

@article{arxiv.2501.12934,
  title  = {Correctness Assessment of Code Generated by Large Language Models Using Internal Representations},
  author = {Tuan-Dung Bui and Thanh Trong Vu and Thu-Trang Nguyen and Son Nguyen and Hieu Dinh Vo},
  journal= {arXiv preprint arXiv:2501.12934},
  year   = {2025}
}