[Submitted on 28 Jul 2026]
Abstract:基于 LLM 的软件工程代理受限于有限的上下文窗口:大约 10 万个 token 必须存储结构相关的代码子集以修复缺陷。标准检索模型将代码视为纯文本,迫使代理通过缓慢的试错方式解决多跳依赖,包括子类链、传递调用者和接口实现。我们通过无损知识压缩解决这一限制,将源代码编码为 OWL2 本体,使用最少的相关代码片段回答结构化查询。
我们提出 OwlPath,一个位于 CodeGraph 之上的 OWL2 推理层。CodeGraph 是一个拥有 50 万+ GitHub stars 的广泛使用的代码智能平台,提供了统一的结构化代码检索 CLI。借助 tree-sitter 解析,OwlPath 支持多语言代码仓库(Python、JavaScript、TypeScript、Go 等),并将特定语言的语义编码为统一的 OWL2 本体。它采用两个互补模块。首先,传递闭包引擎通过单一 SPARQL 属性路径查询获取所有结构链接的符号,捕获字符串匹配遗漏的多跳关系。其次,OWL 软件知识图谱(OWL-SKM)预计算一个包含模块树、核心 API 和问题相关符号的紧凑 3KB 摘要,在第一次查询时引导代理定位目标模块。
在 18 个 SWE-bench Pro 实例上的评估显示,OwlPath 获得了 68.4% 的严格应用率,优于 CodeGraph 基线的 66.7%,同时将 token 使用量减少 28.8%,运行时间减少 39.5%。在 67 个实例的离线检索测试中,OwlPath 将召回率提升 2.06 倍(0.464 vs 0.226),命中率达到 88.1%,而 CodeGraph 为 59.7%。在 37 个问题的结构化检索基准上,召回率从 4.4% 提升至 28.8%,在传递调用者和接口任务上准确率达到 69-80%。
Submission history
From: Bo Zhang [view email]
[v1]
Tue, 28 Jul 2026 08:42:57 UTC (141 KB)
0 Comments
Log in to join the conversation.No comments yet. Be the first to share your thoughts.