中文

大型代码模型在 API 建议中的系统性评估:何时、何者与如何

软件工程 2024-09-23 v1

摘要

API 建议是现代软件开发中的一项关键任务,通过基于当前上下文预测并推荐第三方 API 来辅助程序员。大型代码模型(LCM)的最新进展在 API 建议任务中展现出潜力。然而,它们主要关注建议使用哪些 API,忽略了程序员在实际使用 API 时可能需要更多辅助,包括何时使用建议的 API 以及如何使用这些 API。为弥补这一差距,本文对 LCM 在 API 建议任务中的表现进行了系统性评估。为了便于研究,我们首先构建了一个基准,包含多样化的代码片段集合,涵盖了 853 个流行 Java 项目中使用的 176 个 API。随后考虑了 API 建议任务中的三个不同场景进行评估,包括:(1) “何时使用”,旨在确定 API 使用的期望位置与时机;(2) “使用何者”,旨在从给定库中识别合适的 API;(3) “如何使用”,旨在预测给定 API 的参数。对这三个场景的考量使得能够全面评估 LCM 为开发者建议 API 的能力。在评估过程中,我们针对这三个场景选择了九个具有不同模型规模的流行 LCM。我们还深入分析了上下文选择对模型性能的影响...

关键词

引用

@article{arxiv.2409.13178,
  title  = {A Systematic Evaluation of Large Code Models in API Suggestion: When, Which, and How},
  author = {Chaozheng Wang and Shuzheng Gao and Cuiyun Gao and Wenxuan Wang and Chun Yong Chong and Shan Gao and Michael R. Lyu},
  journal= {arXiv preprint arXiv:2409.13178},
  year   = {2024}
}

备注

This paper is accepted in ASE 2024