PICASO:利用相关 Stack Overflow 帖子增强 API 推荐
软件工程
2023-03-23 v1
摘要
尽管有选择可能是自由的,但过多选择可能导致次优解被选中。这在软件工程领域也不例外。如今,API 已成为简化软件开发人员工作的关键。API 帮助开发人员更快、更高效地实现功能。然而,鉴于大量开源库可供选择,选择正确的 API 并非易事。先前关于 API 推荐的研究利用自然语言(查询)来识别适合给定任务的 API。然而,这些研究仅独立考虑单一输入来源,即 GitHub 或 Stack Overflow。目前尚无利用 Stack Overflow 来帮助从 GitHub 获取的查询生成更好 API 序列推荐的现有方法。因此,在本研究中,我们旨在提供一种通过利用 Stack Overflow 信息来改进 API 序列推荐结果的框架。在工作中,我们提出 PICASO,其利用双编码器进行对比学习,并利用交叉编码器构建分类模型,以在给定注解(即代码注释)时找到语义相似的 Stack Overflow 帖子。随后,PICASO 使用该 Stack Overflow 的标题作为查询扩展。PICASO 接着使用扩展查询微调 CodeBERT,得到 API 序列生成模型。根据实验,我们发现将 Stack Overflow 信息融入 CodeBERT 可使 API 序列生成的 BLEU-4 分数提升 10.8%。
引用
@article{arxiv.2303.12299,
title = {PICASO: Enhancing API Recommendations with Relevant Stack Overflow Posts},
author = {Ivana Clairine Irsan and Ting Zhang and Ferdian Thung and Kisub Kim and David Lo},
journal= {arXiv preprint arXiv:2303.12299},
year = {2023}
}
备注
Accepted at MSR 2023