一句话:提出 CodeMatcher,一个基于查询语义匹配的大规模代码搜索工具,旨在克服 IR 准确率低和 DL 慢且不稳定的问题。
大规模代码库(如 GitHub、Gitee)中,搜索并复用已有代码能显著提升开发效率。已有代码搜索工具大致分为两类:早期基于信息检索(IR)的方法适合频繁变化的大规模代码库且效率高,但因查询与代码之间的语义不匹配而准确率低;近期基于深度学习(DL)的方法试图缓解语义不匹配,却存在速度慢、准确率不稳定的问题。为此,作者提出 CodeMatcher,一个基于查询语义匹配的大规模代码搜索工具,旨在从查询语义层面匹配代码,以改善现有 IR 与 DL 方案在准确率、效率和稳定性上的不足。摘要未给出具体实现与实验数据;从标题与摘要看,其核心贡献是面向大规模代码搜索的查询语义匹配工具。
Due to the emergence of large-scale codebases, such as GitHub and Gitee, searching and reusing existing code can help developers substantially improve software development productivity. Over the years, many code search tools have been developed. Early tools leveraged the information retrieval (IR) technique to perform an efficient code search for a frequently changed large-scale codebase. However, the search accuracy was low due to the semantic mismatch between query and code. In the recent years, many tools leveraged Deep Learning (DL) technique to address this issue. But the DL-based tools are slow and the search accuracy is unstable.
DOI 原文 ·
@inproceedings{paperbot7107,
title = {CodeMatcher: a tool for large-scale code search based on query semantics matching},
author = {Chao Liu and Xuanlin Bao and Xin Xia and Meng Yan and David Lo and Ting Zhang},
booktitle = {FSE},
year = {2022},
doi = {10.1145/3540250.3558935}
}