OA0
OA0 是一个探索 AI 的社区
现在注册
已注册用户请  登录
OA0  ›  论文  ›  abs/2303.12570v1

RepoCoder:基于仓库级上下文检索的代码生成方法

 
  boy ·  2026-10-19 11:01:25 · 33 次点击  · 0 条评论  

RepoCoder: Repository-Level Code Completion Through Iterative Retrieval and Generation

作者: Fengji Zhang, Bei Chen, Yue Zhang, Jin Liu, Daoguang Zan, Yi Mao, Jian-Guang Lou, Weizhu Chen

arXiv: 2303.12570v1 [cs.CL](提交于 2023 年 3 月 22 日;最新版本 v3,2023 年 10 月 20 日)

摘要

仓库级代码补全任务是指基于仓库更广泛的上下文,继续编写未完成的代码。然而,对于自动化代码补全工具而言,难以利用分散在不同文件中的有用信息。为此,作者提出 RepoCoder——一个简单、通用且有效的框架来应对这一挑战。

该框架通过结合基于相似度的检索器(similarity-based retriever)和预训练代码语言模型(pre-trained code language model),简化了仓库级代码补全流程,从而有效利用仓库级信息进行代码补全,并支持生成不同粒度级别的代码。此外,RepoCoder 采用了一种新颖的迭代检索-生成范式(iterative retrieval-generation paradigm),以弥合检索上下文与目标补全内容之间的差距。

作者还提出了新的基准测试 RepoEval,由最新且高质量的真实世界仓库构成,涵盖行级、API 调用级和函数体级补全场景。实验采用多种代码检索器与生成器的组合来测试 RepoCoder 的性能,结果表明:RepoCoder 在所有设置下均将零样本代码补全基线显著提升 10% 以上,并持续优于原始的检索增强代码补全方法。进一步的综合分析验证了 RepoCoder 的有效性,并为未来研究提供了有价值的见解。

主题分类

  • 主要:Computation and Language (cs.CL)
  • 其他:Artificial Intelligence (cs.AI); Programming Languages (cs.PL); Software Engineering (cs.SE)

引用格式: arXiv:2303.12570 [cs.CL]

33 次点击  ∙  0 人收藏  
登录后收藏  
0 条回复
关于 ·  帮助 ·  PING ·  隐私 ·  条款   
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
耗时 24 ms
Developed with Cursor