论文
超越“检索什么”:检索增强代码生成的不确定性
Beyond "What to Retrieve": Uncertainty in Retrieval-Augmented Code Generation
摘要
存储库级代码生成依赖于异构证据,其相关性、兼容性和完整性本质上是不确定的。类似的代码示例、存储库上下文和特定于项目的 API 可能会提供补充信息,但也可能会引入噪声、冗余或冲突信号。现有的检索增强方法主要优化检索相关性,而没有明确建模检索证据的不确定性如何影响下游生成。我们引入了 OpenCoder,这是一个不确定性感知框架,可估计源特定的不确定性,用它来过滤和排序异构证据,并指导生成、验证和修复。对 API 知识、存储库上下文和类似代码证据的因子分析表明,不存在通用的附加源排名;相反,重要的跨源交互取决于随附的证据和 LLM 后端。在扩展的 32 任务 RepoExec 内联评估中,OpenCoder 将 GPT 选择输出的正确性相对于 Baseline RAG 从 56.25% 提高到 78.13%。然而,它匹配验证和修复控制,并且相应的 Gemini 改进没有得到统计支持,这表明依赖于后端的好处。目标感知 API 细化还大大改进了 API 集检索。这些发现支持将不确定性视为存储库级检索、验证和修复的可操作控制信号。