CodeNav:超越工具使用,利用 LLM 智能体处理真实代码仓库
人工智能
2024-06-19 v1 计算与语言
软件工程
摘要
我们提出 CodeNav,这是一个能够导航并利用previously未知代码仓库来解决用户查询的 LLM 智能体。与需要通过手动描述在 LLM 上下文中注册所有相关工具的工具使用型 LLM 智能体不同,CodeNav 自动索引和搜索目标代码库中的代码块,找到相关代码片段,导入它们,并以执行反馈为依据迭代生成解决方案。为突出 CodeNav 的核心能力,我们首先展示了三个案例研究,演示如何使用 CodeNav 通过三个多样化的代码仓库解决复杂用户查询。随后,在三个基准上,我们定量比较了仅访问目标代码库的“代码使用”与拥有工具名称和描述特权访问的“工具使用”的有效性。最后,我们研究了不同类型的工具和库描述对代码使用性能的影响,以及智能体看到源代码而非代码的自然描述的优势。所有代码将在宽松许可证下开源。
引用
@article{arxiv.2406.12276,
title = {CodeNav: Beyond tool-use to using real-world codebases with LLM agents},
author = {Tanmay Gupta and Luca Weihs and Aniruddha Kembhavi},
journal= {arXiv preprint arXiv:2406.12276},
year = {2024}
}