上周 Hacker News 上出了个有意思的项目,叫 Semble。两天拿了 2200 多个 Star。

它的定位非常明确——"给 AI 智能体用的代码搜索工具"。说白了,就是当你的 AI 助手(Claude Code、Cursor 之类的)需要翻代码的时候,Semble 负责告诉它"你要的东西在这",而不是让它把整个文件从头读到尾。

效果也很直白:比 grep + read 省 98% 的 token。

这玩意儿解决什么问题

用过 AI 编程助手的人应该都有体会——你让它改个代码,它先把整个文件读一遍,有时候还把相关文件也读一遍。如果是大项目,token 哗哗地烧,钱哗哗地流。

Semble 的思路是:别读全文,只读你需要的那几行。

它先给你的代码库建一个索引,这个过程大概几百毫秒。然后你或者你的 AI 助手用自然语言搜一下,比如"authentication flow"或者"save_pretrained",它直接返回匹配的代码片段和位置,而不是文件列表。

速度上它说是索引一个仓库平均 250 毫秒,单次搜索 1.5 毫秒。全跑在 CPU 上,不需要 GPU,不需要 API key,甚至不需要联网。

和 grep 比怎么样

这个问题其实是 Semble 最想回答的。

grep 的优势是精确、快、什么环境都有。但它的问题是——你搜完还得用 read 把文件打开看上下文。grep 返回的是行号,不是"这里就是你要的东西"。

Semble 做的是语义搜索。你说"找找登录的逻辑",它知道你在说 authentication,而不是真的去找"登录"这两个字。搜索结果里直接附带匹配的代码块,AI 助手拿到就能用,不需要再 read 一次。

官方 benchmark 数据:

  • NDCG@10 达到 0.854
  • 索引速度比代码专用 Transformer 快 200 倍
  • 查询速度快 10 倍
  • 达到专业模型 99% 的检索质量

代价就是它不是 grep 的完全替代品。

怎么用

安装非常简单:

pip install semble 或者 uv tool install semble

然后用 Claude Code: claude mcp add semble -s user -- uvx --from "semble[mcp]" semble

搜索: semble search "authentication flow" ./my-project

一点个人的看法

这个项目打动我的地方不是它有多强的技术——它的模型其实不算复杂,核心卖点是"把对的事情做对"。

AI 编程助手泛滥的今天,大部分人的用法还是让 AI 把整个代码库读一遍再开始干活。Semble 提供了一种更优雅的方式:让 AI 先"查目录",再"翻到那一页",而不是把整本书从头抄一遍。

省 token 是结果,不是目标。真正的目标是让 AI 助手的行为更像一个有经验的开发者——知道该看哪里,而不是什么都看一遍。

项目地址:https://github.com/MinishLab/semble