【免费下载链接】gortex
High-performance code-intelligence engine for AI agents and IDE, supports 257 languages, multi repositories, based on graph, with access via CLI, MCP Server, and API. AI coding agents teammate - expose only needed information, cutting token usage up to 50x. 100% local. Discord: https://discord.gg/39MFHu3J5d
gortex 是一款面向 AI 编程智能体(Agent)和 IDE 的高性能代码智能引擎:它用 tree-sitter 解析 257 种语言,把代码索引成持久化知识图谱,通过 CLI、MCP Server 和 API 暴露查询能力,并宣称单次响应最多可削减 50 倍 token 开销。为了让这些数字经得起检验,gortex 在 BENCHMARK.md 中公开了5 套可复现的基准测试(benchmark)——每套都附带头条数字、公开数据表、复现命令和源码位置。本文带你逐一跑通这 5 套 gortex 基准测试,并教你正确解读结果。
5 套基准测试一览 📊
| # | 基准测试 | 回答的问题 | 核心指标 | 测试源码 |
|---|---|---|---|---|
| 1 | 参考仓库性能 | 索引和查询快不快 | 冷索引、搜索/影响分析 p95 | bench/perf/ |
| 2 | Token 效率 | 省多少 token | 与 ripgrep 的 token 对比 + recall@k | bench/token-efficiency/ |
| 3 | GCX1 线格式 | 传输格式省多少体积 | 中位数 token 节省 27.4% | bench/wire-format/ |
| 4 | Daemon MCP 工具延迟 | 生产路径多快 | p50 / p95 / p99 | bench/daemon-latency/ |
| 5 | search_symbols 召回率 | 找得准不准 | R@1/5/20、MRR | bench/fixtures/retrieval.yaml |
基准一:参考仓库性能——冷索引与查询延迟
这套基准在gin/nestjs/react(可选 linux 内核)三个真实仓库上,完整走一遍冷索引 → 搜索 → 影响分析 → 增量重索引的闭环,每个仓库索引到全新的 SQLite 存储,测得:
- 冷索引耗时:写入全新存储的真实耗时
- search p95:50 条代表性查询的 95 分位延迟
- impact p95 / p99:随机抽取 10 个函数做"改了它会坏什么"的影响分析——亚毫秒级影响分析这一核心卖点就在这里被验证
- 磁盘 DB 大小与常驻内存(RSS)
如何跑(详见 bench/perf/README.md):
gortex bench perf --out-dir bench/results # 完整 3 仓库运行 gortex bench perf --strict # CI 门禁:任一预算超标即失败如何读:官方参考值来自 Apple M3 Max,例如内嵌 nestjs 样例上 impact p95 为0.76ms,低于 1.0ms 的预算线 ✅。文档明确提醒:换台机器绝对耗时可能差 2–5 倍,相对形状(哪个工具快、是否过预算线)才是可复现的部分。
基准二:Token 效率——"省 50 倍 token"的出处
这是 gortex 最核心的卖点验证。基准把同一组查询丢给 3 条管线,统计各自"喂给 LLM 的 token 数":
- ripgrep + 整文件读取——朴素基线
- ripgrep + 上下 50 行上下文——稍聪明一点的 Agent
- gortex:
search_symbols→get_symbol_source只取需要的符号源码
同时在 2k / 10k token 预算下计算 recall,对照人工标注的正确答案集(groundtruth.json)。
如何跑(详见 bench/token-efficiency/README.md):
gortex bench tokens-efficiency # 默认对 gortex 仓库自身 gortex bench tokens-efficiency --strict --budget-ratio 0.5 # CI 门禁如何读:头条结论是——在标识符查询集上,gortex 的recall@2k 中位数 1.00,ripgrep 两条管线均为 0.00,且 token 数低 3–50 倍。原因在于:整文件读取时,Agent 真正想要的那个文件塞不进 2k 预算,而 gortex 只返回精确符号。注意自然语言查询那几行(如 "MCP server start")中 ripgrep 因需要字面命中而无结果,会抬高 gortex 的相对成本——逐行数据才是诚实的图景。
基准三:GCX1 线格式——传输再省 27%
gortex 自研的 GCX1 紧凑线格式与标准 JSON 做 20 个 MCP 工具响应的往返对比,同时用两种分词器计分(cl100k_base覆盖 Claude 3 / GPT-4o 系;Opus 4.7 用 ×1.35 标量估算,--use-api可取精确值):
- 中位数 token 节省:−27.4%
- 中位数字节节省:−26.8%
- 往返完整性:20/20(编码→解码→再序列化与原 JSON 完全一致,证明无损)
如何跑(详见 bench/wire-format/README.md):
go run ./bench/wire-format如何读:完整逐条得分表在 bench/wire-format/scorecard.md。规律很实用:行数多的表格类载荷(find_usages、analyze_hotspots)可省 30–38%;小而标量多的记录(graph_stats、find_cycles)可能反而变长——格式头部开销超过收益;源码主体为主的get_symbol_source大致持平。不是所有场景都赢,这就是基准的价值。
基准四:Daemon 模式 MCP 工具延迟
这套基准在生产分发路径上实测 8 个核心 MCP 工具的 p50/p95/p99(JSON 参数解析 → 工具分发 → 处理逻辑 → 响应编码),语料为 gortex 仓库自身(71,300 个节点)。
如何跑(详见 bench/daemon-latency/README.md):
gortex bench daemon-latency # 快速冒烟 gortex bench daemon-latency --iter 500 # 更多迭代,更紧的分位数如何读:各工具 p95 的中位数为 5.5ms,p99 中位数 5.9ms;get_callers/find_usages等图查询低至 0.01ms;重量级的get_repo_outline(遍历全图)在数百毫秒量级。README 明确列出了不测什么——stdio 管道、daemon socket、网络 RTT 各自只加约 0.1–1ms,不掩盖 handler 本身的耗时。
基准五:search_symbols 检索召回率
前五套比"快和省",这套比"准"。它用 156 条人工标注查询(gortex-seed-v2,分 exact / concept / multi_hop 三档)评估检索排序器:
| 排序器 | R@1 | R@5 | R@20 | MRR | p95 延迟 |
|---|---|---|---|---|---|
| bm25(内置词法路径) | 42.3% | 55.1% | 63.5% | 0.479 | 21.3ms |
| winnow | 37.8% | 50.0% | 64.1% | 0.439 | 22.9ms |
| ripgrep | 0.0% | 17.3% | 29.5% | 0.061 | 162.2ms |
如何跑:
gortex eval recall --fixture bench/fixtures/retrieval.yaml --format markdown gortex eval recall --embeddings # 追加语义 + RRF 排序器如何读:gortex 内置词法路径在精确符号名查询上 R@5 高达 96.8%,整体 R@5 是 ripgrep 的 3.2 倍。两个诚实提示:召回按"严格命中金标准 ID"计分,换个说法的正确答案也算 miss,所以数字是下限;开启 Porter 词干(GORTEX_FTS_STEMMING=1)会牺牲一点精确档精度换广度(R@20 +5.7pp),因此默认关闭。
通用方法论:如何让结果可信 🔍
跑完 5 套基准后,用 BENCHMARK.md 末尾的方法论注释来解读:
- 硬件敏感性:绝对耗时跨机型差 2–5 倍;预算门禁(impact 亚毫秒、token 比 <50%)是专门调校到在开发者笔记本到 CI 机器上都成立的
- 网络敏感性:参考仓库首次运行需克隆(之后缓存),linux 默认关闭
- 外部依赖:Token 效率基准需要 PATH 中有
rg(可--skip-ripgrep跳过);线格式--use-api需要ANTHROPIC_API_KEY - 真值范围:查询没有标注项时按 recall=0 计——刻意让"漏标"暴露出来而非静默通过
每套子命令都支持--strict,预算超标即退出非零,可直接作为 CI 回归门禁。
进阶:仓库还有两个更底层的守门人值得了解——bench/index-perf/ 是冷索引墙钟回归测试(基线超标 15% 即失败),bench/baselines/ 则用统一接口对比 ripgrep、probe 等 6 个外部检索基线的 NDCG@10 与延迟,方便你把 gortex 放进更宽的竞技场。
总结
gortex 的做法给所有"宣称高性能"的开源项目打了个样:每个头条数字都有公开命令、公开数据和可自动判定的预算线。你不必相信 50 倍 token 节省——克隆仓库、装好 gortex,跑一遍gortex bench perf --strict和gortex bench tokens-efficiency --strict,用你自己的硬件重新裁决这些数字。
【免费下载链接】gortex
High-performance code-intelligence engine for AI agents and IDE, supports 257 languages, multi repositories, based on graph, with access via CLI, MCP Server, and API. AI coding agents teammate - expose only needed information, cutting token usage up to 50x. 100% local. Discord: https://discord.gg/39MFHu3J5d
相关推荐
Hyperscan性能基准测试:如何准确评估匹配引擎的效率
Hyperscan性能基准测试:如何准确评估匹配引擎的效率 作为Intel开发的高性能正则表达式匹配库,Hyperscan在网络安全、内容过滤和日志分析等领域有
网络安全KillWxapkg:深度解析微信小程序逆向工程的核心技术与安全评估实践
KillWxapkg:深度解析微信小程序逆向工程的核心技术与安全评估实践 在移动应用安全研究领域,微信小程序的反编译技术一直是一个充满挑战的课题。随着小程序生态
逆向工程小程序应用安全OpenVINO性能测试指南:如何获取准确基准数据
OpenVINO性能测试指南:如何获取准确基准数据 前言 在深度学习模型部署过程中,性能评估是至关重要的一环。本文将详细介绍如何为OpenVINO工具包获取可靠
人工智能推理引擎深度学习本地部署模型优化模型量化
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考