中文

我知道你在搜什么:基于 Stack Overflow 帖子的代码片段推荐

软件工程 2022-10-31 v1

摘要

软件开发者大量使用 Stack Overflow 来寻求编程相关的信息。越来越多的开发者使用社区问答论坛(如 Stack Overflow)来搜索如何完成某项编码任务的代码示例。这通常被认为比查阅源文档、教程或完整示例更高效。然而,由于这些在线问答论坛的复杂性以及其包含的信息量巨大,开发者可能被海量的可用信息所淹没。这使得他们难以找到甚至难以意识到最符合需求的相关代码示例。为缓解此问题,本文提出一个名为 Que2Code 的查询驱动代码推荐工具,可从 Stack Overflow 帖子中为用户查询识别最佳代码片段。我们的方法包含两个主要阶段:(i) 语义等价问题检索与 (ii) 最佳代码片段推荐。为评估所提模型的性能,我们进行了大规模实验,分别在 Stack Overflow 的 Python 和 Java 数据集上评估语义等价问题检索任务和最佳代码片段推荐任务的有效性。我们还开展了人类研究,以衡量真实开发者对我们模型生成结果的感知。自动与人类评估结果均展示了模型良好的性能,且我们已发布代码与数据以协助其他研究者。

关键词

引用

@article{arxiv.2210.15845,
  title  = {I Know What You Are Searching For: Code Snippet Recommendation from Stack Overflow Posts},
  author = {Zhipeng Gao and Xin Xia and David Lo and John Grundy and Xindong Zhang and Zhenchang Xing},
  journal= {arXiv preprint arXiv:2210.15845},
  year   = {2022}
}