10+年产品经理专注分享AI 工具、AI 资讯、AI Coding、Vibe Coding与下一代产品创新,按 Ctrl+D 收藏我们
关于我 留言板 小程序 标签云

苏米客

  • 首页
  • AIGC
    • AI最新动态
    • AI学习教程
    • AI工具集合
    • AI产品百科
    • AI编程开发
    • AI提示词
    • AI开源项目
    • AI智能体
  • Axure
    • Axure动态
    • Axure教程
  • 产品
    • 用户体验
    • 产品设计
    • 苏米杂谈
  • 资源
    • 产品UI组件库
    • 开源图标库
    • 中后台框架
  • 书单
    • AI书籍
    • 用户体验
    • UI视觉
    • 产品研究
    • 其他类型
  • 下载
    • Axure组件
    • Axure原型
    • 文档报告
    • 素材资源
  • 登录
  • 首页
  • AIGC
    • AI最新动态
    • AI学习教程
    • AI工具集合
    • AI产品百科
    • AI编程开发
    • AI提示词
    • AI开源项目
    • AI智能体
  • Axure
    • Axure动态
    • Axure教程
  • 产品
    • 用户体验
    • 产品设计
    • 苏米杂谈
  • 资源
    • 产品UI组件库
    • 开源图标库
    • 中后台框架
  • 书单
    • AI书籍
    • 用户体验
    • UI视觉
    • 产品研究
    • 其他类型
  • 下载
    • Axure组件
    • Axure原型
    • 文档报告
    • 素材资源
当前位置: 首页 » AI开源项目

Semble:专为 Agent 打造的代码搜索工具,索引快 218 倍节省 98% Token

2月前 AI开源项目 552 0

当下,Agent 正在越来越多地介入代码工作流。从代码补全到代码审查,从重构建议到自动生成测试,AI 已经成了很多开发者的得力助手。

但深度使用时会遇到一个问题:当 Agent 需要在一个大型代码库中找东西时,它要么瞎猜关键词,要么就得把整个项目内的文件都读一遍。结果就是要么找不到,要么 Token 像流水一样哗哗地流。一个 100k Token 的上下文窗口,一大半都浪费在不相干的代码上。

而且,用传统的代码搜索工具,索引一个仓库可能要几十秒,查一下可能要十几毫秒,对于 Agent 这种需要快速响应的场景来说根本不够用。

直到 Semble——这个由 MinishLab 团队开发的面向 Agent 的代码搜索工具,2.9K Star,让 Agent 用自然语言就能直接定位到最相关的几行代码,不用瞎猜关键词,不用读整个项目文件,速度快得离谱。

Semble 代码搜索演示

项目简介

Semble 是一个专为 Agent 打造的代码搜索库,来自 MinishLab(开发 Model2Vec 的团队)。核心理念很简单:让 Agent 能快速、精准地找到它需要的代码片段,而不必浪费大量 Token 在不相干的内容上。

Semble 解决了三大问题:

  • 精准性:不用瞎猜关键词,用自然语言就能找到准确的代码
  • Token 效率:只返回相关的代码块,节省 98% 的 Token
  • 速度:索引快(~250ms)、查询快(~1.5ms),毫秒级响应

核心亮点

1. 快到离谱的速度

  • 索引一个普通仓库仅需约 250 毫秒
  • 回答查询仅需约 1.5 毫秒
  • NDCG@10 达到 0.854

Semble 达到了 CodeRankEmbed Hybrid 99% 的性能,但索引快了 218 倍,查询快了 11 倍。而且这一切都是在 CPU 上运行的,不需要 GPU、API 密钥或外部服务。

2. 节省 98% Token

  • Semble 用 2k Token 就能达到 94% 的召回率
  • grep+read 需要塞满 100k Token 窗口才到 85%

传统 grep+read 方式会把整文件都读进来,Semble 只返回真正相关的代码块。省下来的 Token 都是真金白银。

3. 智能分块,从不腰斩代码

Semble 用 Chonkie 按代码结构智能切分,每个块都是有意义的代码单元——一个函数、一个类、或者一个独立的逻辑块,绝对不会把一个函数拦腰斩断。搜索返回的结果本身就是语义完整的,Agent 拿到就能用。

4. 语义+词法,双路检索

  • 语义路:用 Model2Vec 和 potion-code-16M 模型生成静态嵌入,捕捉语义相似性
  • 词法路:用 BM25 做标识符和 API 名称的词法匹配
  • 用 Reciprocal Rank Fusion (RRF) 把两路结果融合,取长补短

5. 代码感知重排序,把最好的推到最前面

  • 自适应加权:符号类查询给词法匹配更多权重,自然语言查询保持平衡
  • 定义优先:定义了查询符号的块排在仅引用它的块前面
  • 标识符词干匹配:查 parse config 会提升包含 parseConfig、ConfigParser 的块
  • 文件连贯性:同一文件多个块匹配时,整个文件被提升
  • 噪声惩罚:测试文件、兼容层代码、声明文件被降权

快速上手

安装:

pip install semble
# 或
uv add semble

索引本地项目:

from semble import SembleIndex

index = SembleIndex.from_path("./my-project")

索引远程仓库:

index = SembleIndex.from_git("https://github.com/MinishLab/model2vec")

搜索代码:

# 自然语言搜索
results = index.search("save model to disk", top_k=3)

# 查找相似代码
related = index.find_related(results[0], top_k=3)

# 查看结果
result = results[0]
result.chunk.file_path   # "model2vec/model.py"
result.chunk.start_line  # 127
result.chunk.end_line    # 150
result.chunk.content     # "def save_pretrained(self, path: PathLike, ..."

CLI 使用:

# 搜索本地仓库
semble search "authentication flow" ./my-project

# 搜索符号
semble search "save_pretrained" ./my-project

# 搜索远程仓库
semble search "save model to disk" https://github.com/MinishLab/model2vec

MCP 集成

Semble 可以作为 MCP 服务器运行,任何支持 MCP 的 Agent(Claude Code、Cursor、Codex、OpenCode 等)都能直接用它搜索代码库。

Claude Code:

claude mcp add semble -s user -- uvx --from "semble[mcp]" semble

Codex(~/.codex/config.toml):

[mcp_servers.semble]
command = "uvx"
args = ["--from", "semble[mcp]", "semble"]

Cursor(~/.cursor/mcp.json):

{
  "mcpServers": {
    "semble": {
      "command": "uvx",
      "args": ["--from", "semble[mcp]", "semble"]
    }
  }
}

写在最后

Semble 代表了 Agent 代码搜索的一个新方向。它证明了我们不需要庞大的 transformer 模型也能获得高质量的代码搜索结果——速度更快、Token 效率更高、部署更简单。对于任何想把 Agent 集成到代码工作流中的团队来说,Semble 都是一个值得关注的工具。

GitHub:https://github.com/MinishLab/semble

声明:本站原创文章文字版权归本站所有,转载务必注明作者和出处;本站转载文章仅仅代表原作者观点,不代表本站立场,图文版权归原作者所有。如有侵权,请联系我们删除。
未经允许不得转载:Semble:专为 Agent 打造的代码搜索工具,索引快 218 倍节省 98% Token
#semble #code-search #agent #mcp #open-source 
收藏 1
Agent、CLI、GUI、IDE、终端:AI编程工具全景解读
Karpathy 加入 Anthropic:AI 领域关键人物重回研发一线
推荐阅读
  • academic-research-skills:Claude Code 学术研究插件,10 阶段 40+ Agent 全流程辅助论文写作
  • Antigravity-Manager:这个开源神器让你白嫖ClaudeOpus 4.5,Gemini 3!还能接Claude Code等任意平台
  • DataGear:自由构建数据看板的开源可视化平台,支持数据源、SQL工作台、导入/导出、项目管理、数据集、图表、看板、数据源驱动、图表插件等
  • Astron Agent:从零到一构建企业级AI智能体,科大讯飞开源的低代码工作流平台
  • GSD 开源项目详解:5 天 5 万 Star,解决 Claude Code 上下文腐烂问题
评论 (0)
请登录后发表评论
分类精选
WeKnora:终于等到了腾讯ima的开源知识库框架,用 API 轻松打造本地智能文档检索
11015 10月前
OpenSpec:比 Cursor Plan 更聪明?试试这款让 AI 编码更靠谱的规范驱动工具
10197 9月前
Antigravity-Manager:这个开源神器让你白嫖ClaudeOpus 4.5,Gemini 3!还能接Claude Code等任意平台
8275 6月前
CapCut API:一个剪映API开源项目,让AI自动剪辑视频
8263 7月前
awesome-openclaw-skills:700+ Skills 一条命令装配完成,如何让本地 AI Agent 真正落地可用
7326 5月前
AIRI:你的开源AI女友,让你随时拥有属于自己的 AI VTuber
7260 10月前
就要创作:从提示词到创作团队,开源 AI 网文写作平台
7218 9月前
CompressO:开源免费的视频压缩神器,让你的硬盘瞬间轻松 10 倍
7103 10月前
baoyu-skills:又一个宝藏Skill,面向内容创作者的技能集,支持图文生成、发布与处理
6518 6月前
Claude Code 生成专业图表的 15 个 Skills:覆盖 7 种渲染引擎的完整指南
6459 3月前

文章目录

关注「苏米客」公众号

订阅推送更及时,手机查看更方便
分类排行
1 阿里开源 skill-up:Agent Skill 的声明式评测框架,告别'感觉有用'
2 inkos:专为写故事打造的 AI 工具,长篇小说、剧本、翻译一站搞定
3 OmniRoute:24k Star 的开源自托管 AI 网关,聚合 278 提供商免费额度,Token 压缩最高省 95%
4 Openship:6.7k Star 的开源自托管部署平台,桌面 CLI 双模式替代 Heroku
5 fireworks-tech-graph:用中文 Prompt 生成动态技术架构图的开源 Skill,支持 12 种风格与 GIF 动效
6 AstrBot:37.4K Star 的开源多平台 AI 助手框架,支持 QQ/飞书/Telegram 等 15+ 平台
7 Light OCR:跑在本地的轻量 OCR 引擎,Node.js + C++ 原生支持
8 HandDraw Story Video:手绘插图一键生成竖屏动画视频,支持线稿推进和渐变色彩
9 WorkBuddy 一键换肤开源工具:6 款主题截图实录,3 分钟实现界面自定义
10 ai-agent-book:12K Star 的开源 AI Agent 全书,从原理到工程实践
©2015-2024 苏米客XMSUMI 版权所有 · WWW.XMSUMI.COM 闽ICP备14005900号-6
微信文章助手 程序库 免费影视APP 免费字体下载 产品经理导航 爱克硕儿 产品经理AI资讯 Axure元件库下载 申请友联