> 自媒体 > (AI)人工智能 > 主流AI IDE的token成本爆炸?试试登上GitHub日榜的Claude Context
主流AI IDE的token成本爆炸?试试登上GitHub日榜的Claude Context
来源:Zilliz
2026-04-29 13:34:29
91
管理

总结来说,纯grep方案主要有三大问题:

信息过载:现代代码库动辄数万文件,grep 搜索结果中 99% 为无关噪音,AI 易被洪流淹没;语义盲目:仅匹配字符组合,无法理解代码功能 —— 例如找不到compute_final_cost()与calculate_total_price()的语义关联;上下文失忆:仅返回匹配行,缺失函数所属类、依赖关系等关键上下文,AI 难以判断代码作用。

而之所以知道问题所在,但还是坚持使用grep,对Claude Code来说,一方面是技术路线的选择问题,另一方面,要搞好代码检索,里面有大量工程细节需要处理。如,代码如何切分?代码变动了怎么办?索引和检索速度怎么保证?怎么为海量的代码的 embedding 建立索引?

显然,这些都与 Claude Code 【简单】【无界面的 CLI】的定位相违背。更关键的是,embedding 模型和向量数据库也不是 Anthropic 的强项。

这也是我们为什么要做Claude Context,并且把它开源的原因:

https://github.com/zilliztech/claude-context

这是一个集成了向量数据库和 embedding 模型的开源代码检索 MCP 工具,可以无缝集成到 Claude Code 中,同时也兼容其他 AI Coding IDE,让 LLM 获得更优质、更准确、更低成本的上下文信息。

此外,针对纯grep方案的三大致命缺陷,Claude Context 分别做了专项突破

智能过滤:通过向量相似度排序,将最相关的代码片段置顶,排除无关干扰;概念理解:基于 embedding 技术理解代码语义,即使函数名不同,只要功能相似就能精准匹配;上下文召回:每个搜索结果均包含完整的代码上下文(类、函数、依赖),让 AI 像人类程序员一样理解代码逻辑。02 技术解读:Claude Context实现全过程

以下是个Claude Context方案实现全过程

(1)技术选型

接口层面:MCP

MCP 就像是 LLM 与外界交互的USB,可以把产品能力以 MCP server 的方式提供出来,这样不仅是 Claude Code,甚至其他 AI IDE 比如 Gemini CLI、Qwen Code 等都能用。

向量数据库:选择 Zilliz Cloud

Zilliz Cloud 是全托管的 Milvus 向量数据库服务,具备高性能向量搜索、高 QPS 与低延时、云原生架构带来的弹性扩展和无限存储等特性,还有多副本增强可用性,简直是为 Codebase Indexing 量身定制的。

Embedding 模型:多种选择OpenAI 的 embedding model:经过广泛使用和验证,稳定可靠Voyage embedding:在 Code 领域有专用模型,效果更好Ollama:适合本地部署,隐私性更强

其他 embedding 模型,持续支持

⌨️ 编程语言:TypeScript

在 Python 和 TypeScript 之间纠结了一下,最终选择 TypeScript。原因很简单:它更兼容应用层,开发的模块可以无缝集成到高层的 TypeScript 应用中,比如 VSCode 插件等。而且 Claude Code、Gemini CLI 等也都是用 TypeScript 写的,生态更友好。

(2)架构设计

从解耦、分层的设计原则角度来看,它的架构被设计成了两层:

核心模块:包含所有核心逻辑,里面每块的逻辑也是分开设计的,比如代码解析、向量化索引、语义检索、同步更新等。

上层模块:包含 MCP、vscode 插件等集成。它基于核心模块,更多是包含一些应用层的逻辑,尤其是 MCP,它是与 Claude Code 等 AI IDE 交互的最佳方式。

这样设计的好处是,核心模块可以被上层模块复用,后续不管是横向还是纵向,都很容易扩展其他模块。

更多测试细节已经在 github 仓库中更新。claude-context 也已经开源,并在GitHub上获得了九千 star,如果对你有帮助,欢迎使用和推荐。

https://github.com/zilliztech/claude-context

https://www.npmjs.com/package/@zilliz/claude-context-mcp

05 对比展示

这里选择了两个案例,来展示下纯grep 方法与基于混合检索的RAG方案的能力差。

案例一:Django YearLookup Bug

Issue 地址为

问题描述:Django 框架中,YearLookup 查询优化破坏了 __iso_year 过滤功能。当使用 __iso_year 过滤器时,YearLookup 类错误地应用了标准的 BETWEEN 优化,这对日历年有效,但对 ISO 周编号年无效。

#这应该使用 EXTRACT('isoyear' FROM ...) 但错误地使用了 BETWEENDTModel.objects.filter(start_date__iso_year=2020)

# 生成: WHERE "start_date" BETWEEN 2020-01-01 AND 2020-12-31

# 应该是: WHERE EXTRACT('isoyear' FROM "start_date") = 2020

Baseline grep 方法的过程日志分析:

directory_tree()⚙️ 结果: 检索了 3000  行目录结构 (~50k tokens)   问题: 大量信息过载,没有直接相关性 search_text('ExtractIsoYear')⚙️ 结果: 在多个文件中找到 21 个匹配项:   - django/db/models/functions/__init__.py:5 (导入语句)   - django/db/models/functions/__init__.py:31 (导出列表)     - django/db/models/functions/datetime.py:93 (ExtractIsoYear 类)   问题: 大多数都是无关的导入和注册 edit_file('django/db/models/functions/datetime.py')⚙️ 修改了多个注册语句,但这是错误的解决方向

关键问题:文本搜索专注于错误的组件(ExtractIsoYear 注册),而不是实际的优化逻辑(YearLookup 类)。

Claude Context 方法的过程日志分析:

search_code('YearLookup')⚙️ 为查询找到 10 个结果: "YearLookup" 在代码库中   1. 代码片段 (python) [repo__django__django]      位置: django/db/models/lookups.py:568-577      上下文: YearExact 类与 get_bound_params 方法   2. 代码片段 (python) [repo__django__django]        位置: django/db/models/lookups.py:538-569      上下文: YearLookup 基类与 year_lookup_bounds 方法 edit_file(django/db/models/lookups.py)⚙️ 成功修改了核心优化逻辑,添加 ISO 年处理

关键成功逻辑:语义搜索立即理解了"YearLookup"作为核心概念,找到了需要修改的确切类。

效率对比:

Baseline 方法:8 次工具调用,消耗 130,819 tokens,0% 命中率

Claude Context:3 次工具调用,消耗 9,036 tokens,50% 命中率,节省了 93% 的 Token!

案例二:Xarray swap_dims Bug

Issue 地址为

问题描述:Xarray 库的 .swap_dims() 方法意外修改了原始对象,违反了不可变性期望。在某些情况下,.swap_dims() 修改原始对象而不是返回新对象。

import numpy as npimport xarray as xrnz = 11ds = xr.Dataset({ "y": ("z", np.random.rand(nz)), "lev": ("z", np.arange(nz) * 10),})

这不应该修改 ds,但实际上修改了

ds2 = ds.swap_dims(z="lev").rename_dims(lev="z").reset_index("lev").reset_coords()

ds2.swap_dims(z='lev') # 这意外地修改了 ds2['lev']

# ds2['lev'] 现在有维度 'lev' 而不是 'z'

Baseline grep 方法的过程日志分析:

list_directory('repo__pydata__xarray')⚙️ 结果: 检索了多个子目录的目录结构   问题: 基本的目录导航,没有目标搜索 search_text('swap_dims')⚙️ 结果: 在核心文件中找到 21 个匹配项:   - xarray/core/common.py:600 (Dataset.swap_dims 引用)   - xarray/core/dataarray.py:753 (".rename() or .swap_dims() instead.")   - xarray/core/dataarray.py:2026 (DataArray.swap_dims 引用)   - xarray/core/dataarray.py:2044 (def swap_dims 方法)   问题: 在不同上下文中有许多匹配项 read_file('xarray/core/dataarray.py', offset=2000, limit=40)⚙️ 结果: 读取了显示 rename 方法文档的第 2001-2040 行 read_file('xarray/core/dataset.py', offset=3600, limit=40) ⚙️ 结果: 读取了显示 rename_dims 方法的第 3601-3640 行

低效原因:使用了大量的 list_directory 和 read_file 操作,而不是专注于相关方法。

Claude Context 方法的过程日志分析:

search_code('.swap_dims()')⚙️ 为查询找到 10 个结果: ".swap_dims()" 在代码库中   1. 代码片段 (python) [repo__pydata__xarray]      位置: xarray/tests/test_formatting_html.py:67-76   2. 代码片段 (python) [repo__pydata__xarray]      位置: xarray/tests/test_dataset.py:2926-2979 edit_file('xarray/core/dataset.py')⚙️ 成功修改文件,添加了维度处理逻辑 edit_file('xarray/core/dataarray.py')⚙️ 成功修改文件,确保不修改原始 DataArray

关键成功逻辑:语义搜索立即定位了实际的swap_dims()实现并理解了功能上下文。

效率对比:

Baseline 方法:11 次工具调用,消耗 41,999 tokens,50% 命中率Claude Context:3 次工具调用,消耗 15,826 tokens,50% 命中率,节省了 62% 的 Token!尾声

Claude Context不仅适用于Claude Code,同样适用于 Codex、 Gemini CLI、Cline在内几乎所有AI coding产品,欢迎大家多多体验与反馈。

https://github.com/zilliztech/claude-context

完整的实验数据、代码和复现方法都在项目的 evaluation/ 目录中开放。

作者介绍张晨Zilliz Algorithm Engineer

阅读推荐官宣:Zilliz Cloud&Milvus发布CLI工具与官方Skill,让AI Agent成为专业VDB运维与开发助手Vector Graph RAG 开源!一套向量数据库同时搞定语义检索 RAG多跳Harness的Managed Agents好在哪里?如何解决它的经验复用短板

黄仁勋GTC演讲上,Milvus为什么能够站稳非结构化数据处理C位

2026年,Embedding要怎么选?(实测Gemini 、jina、Qwen、BGE、OpenAI十大模型)

用RAG的思路做agent知识管理,为什么跑不通

0
点赞
赏礼
赏钱
0
收藏
免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本网证实,对本文以及其中全部或者 部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 凡本网注明 “来源:XXX(非本站)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对 其真实性负责。 如因作品内容、版权和其它问题需要同本网联系的,请在一周内进行,以便我们及时处理。 QQ:617470285 邮箱:617470285@qq.com
相关文章
Wechat-cli 完整教程:聊天记录AI总结、统计、导出,数据绝不外传..
微信消息越堆越多,重要内容被淹没、翻聊天记录耗时费力、群聊99 根本看..
探索 OpenAI 聊天完成 API 的应用与使用
你想知道如何利用 OpenAI 的强大聊天机器人 ChatGPT 吗?在几秒钟内,这..
微信聊天反复出现“对方正在输入……”,说明对方在干什么?..
在微信里,最让人心跳加速的6个字,不是“我好喜欢你啊”,也不是“你的..
基于开源MobileIMSDK框架,即时通讯IM产品RainbowChat v12.0发布..
1、关于RainbowChatRainbowChat是一套基于开源IM即时通讯聊天框架 Mobile..
郑州GEO优化:珍岛集团如何助力企业抢占AI搜索先机
随着生成式AI技术的快速发展,企业营销正在经历一场深刻变革。截止2025年..
甚好AI助手V1.0产品发布——企业 ERP 的全场景智能交互助手..
#甚好AI助手V1.0正式版于2026年4月正式发布#作为企业 ERP 全场景智能交互..
Siri将对标ChatGPT,进化为完整的聊天机器人,誓要摘掉“人工智障”的帽子..
安徽交通广播2026-01-26 13:16:32据白鹿视频,1月26日,爆料称苹果计划在..
从2年到10年,行业大佬也说不准机器人的chatGPT时刻|2026博鳌论坛..
来源:凤凰网财经《公司研究院》作者:杨诗涵眼下,人们对于机器人的态度..
从GPT-6到人形机器人,一场技术与商业的双重革命
一场迟到但终将到来的革命2026年4月的第二周,全球科技圈被三条重磅消息..
关于作者
国务院环卫工..(普通会员)
文章
1970
关注
0
粉丝
1
点击领取今天的签到奖励!
签到排行

成员 网址收录40418 企业收录2986 印章生成263660 电子证书1157 电子名片68 自媒体105919

0
0
分享
请选择要切换的马甲:

个人中心

每日签到

我的消息

内容搜索