Benzi

为前沿AI模型打造的代码智能基础设施

AI编程开发 部分免费

项目简介

Benzi 是一个开源的 AI 编程 Agent 基础设施,与传统 Agent 直接将代码全文塞入上下文窗口不同,Benzi 在回答任何问题之前,先用真实的编译器(基于 tree-sitter)解析项目中的每一个文件,将所有符号、调用边、引用和类继承链解析成一张精确的、可查询的地图。之后,AI 模型通过工具调用查询这张地图来获取代码信息,而非直接读取源代码。

Benzi 由 Variant Technologies 开发,目前作为 VS Code 扩展发布,同时提供在线 demo 可直接对任意公开 GitHub 仓库进行实时索引和查询。项目处于活跃开发状态,完全免费使用。

核心功能

  • 编译时代码解析:基于 tree-sitter 构建真实编译器,一次解析即可获得符号定义、调用关系、类继承链、数据流追踪等完整信息
  • 确定性智能层:引入三级信任机制——RESOLVED(静态分析确定的明确证据)、CANDIDATE(候选项)、OBSERVED(运行时实际观测结果)
  • 多语言统一索引:支持 Python、JavaScript、TypeScript、Java、C#、C++、C、Go、Rust、Ruby 等十种语言
  • 工具生态:35+ 专用工具,包括 get_callers、call_tree、trace_path、forwardflow/backflow、get_definition、search_symbols 等
  • SWE-bench 实测验证:在 SWE-bench Verified 500 题上达到 78.2% 解决率,单次修复平均成本仅 0.095 美元
  • 自适型模型升级:Agent 在任务难度超出当前模型能力时,可自动切换至更高级模型

技术实现

Benzi 的核心创新在于将「人工智能」与「确定性智能」分离。传统 AI 编程 Agent 依赖将尽可能多的源代码塞入上下文,这种方式带来三个根本问题:Token 消耗剧增、上下文漂移、模型需要消耗大量思考 Token 来理解代码结构。

Benzi 的做法是:预先用 tree-sitter 编译器对代码进行全面解析,在模型开始工作之前就构建好精确的符号地图。模型需要了解某个函数时,通过工具直接「查」——调用 get_definition 返回定义卡片,调用 get_callers 返回所有调用方。

快速上手

  • 安装扩展:在 VS Code 扩展市场搜索「Benzi」安装
  • 打开仓库:在 VS Code 中打开任意项目目录,Benzi 自动开始索引
  • 开始查询:使用聊天面板,通过自然语言向 Benzi 提问
  • 体验在线 Demo:访问 https://benzi.fly.dev 可直接体验任意 GitHub 仓库的索引和查询

适用人群

有大量代码阅读和修改需求的专业开发者、对 AI 编程工具效率和精度有较高要求的工程师、关注 AI Agent 底层架构和技术路线的研究者

团队信息

由 AI 猎手自动发现

评论与建议

0 条评论