论文
RepoNav:代码代理从片段检索到以文件为中心的存储库导航
RepoNav: From Snippet Retrieval to File-Centered Repository Navigation for Code Agents
摘要
解决存储库级代码任务需要基于 LLM 的代理使用代码搜索工具来导航大型代码库并识别一小组相关文件和函数。然而,当前的检索工具通常返回孤立代码片段的平面列表:此类列表可以显示相关文件,但为代理提供的结构不足以区分目标函数和同一文件中语义相似的替代函数。我们引入了 RepoNav,一个轻量级的检索后界面,它将检索到的片段重新组织成以文件为中心的导航支架。通过提供紧凑的结构线索和候选目标,该支架可以指导按需文件结构浏览,帮助代理在选择目标函数之前比较同级符号。在 LocBench 上的各种模型中,RepoNav 改进了功能级本地化并缩小了文件与功能之间的差距。受控消融表明,这些收益来自结构化证据组织,而不是简单地暴露额外的文件结构,并且该方法还提高了存储库级问答基准的性能。