项目详情

Sirchmunk

原始数据到自进化智能,实时:没有向量库的 agentic 搜索引擎

modelscope/sirchmunk Apache-2.0 Python 3.10+FastAPI + Next.jsMCP

更新于 2026-09-17 · GitHub 数据采集同日 · 论文 arXiv:2608.16185

← 返回汇总
项目速览

一句话定位

丢掉向量库,让 LLM 拿着预算直接在原始文件上做 agentic 检索,搜索结果沉淀为可复用的知识簇

ModelScope(阿里)出品的实时搜索引擎:ripgrep-all 无索引扫原始文件,LENS 框架在 token 预算内做证据探索,每次搜索产出 KnowledgeCluster 并随使用自进化(复用 / 合并 / meta-cluster)。适合本地海量文档问答、给 Agent 装搜索能力(MCP)、数据频繁变化无法建静态索引的场景。

项目速览

核心数据

1.3k
Stars
13
Releases / 8 个月
2-5s
FAST 模式延迟
0.85
簇复用 cos 阈值

2025-12-30 建仓 · v0.1.0(2026-08-25)· 143 forks · 32 open issues · 最后 push 2026-09-05 · 30 MB 仓库 · Trendshift 榜单项目

为什么存在

向量 RAG 的三宗罪

计算贵、构建慢

把富文本压进固定维向量需要重型预处理与小时级索引流水线——建索引本身就是成本中心。

对实时变化失明

数据是流不是快照;向量库在数据变更那一刻就过时,只能整批重灌。

与原始上下文脱节

向量近似匹配返回的是「相似方向」,不是可追溯的原文证据区;信息有损。

Sirchmunk 的答案:不预处理、不建静态索引——文件即索引,检索时才决定读什么。

范式对比

Traditional RAG vs Sirchmunk

维度传统 RAGSirchmunk
搭建成本VectorDB + GraphDB + 复杂解析器零基础设施:直接对数据检索,无向量孤岛
数据新鲜度过时(批次重索引)即时动态:自进化索引反映实时变化
可扩展性线性成本增长极低 RAM/CPU(Docker 示例限 2G 内存)
准确性近似向量匹配确定性 + 上下文:混合逻辑保语义精度
工作流复杂 ETL 管道丢进去就搜(drop-and-search)零配置

注意:此表来自官方 README,带有营销立场;真实取舍见「风险」页——每次 DEEP 搜索的 LLM 调用成本是隐藏变量。

🔥 核心机制

LENS:预算约束的证据探索

论文把 in-context search 重构为「潜在证据空间上的预算化探索」:证据是潜在的、随查询变化的——先形成低成本先验,再把昂贵的 LLM 调用只花在最值得观测的地方。

第 1 层 · 低成本先验 先缩小候选子空间 · 词法锚点 + 文档路径结构 · 编译摘要(compile 产物) · 历史溯源证据簇 · 轻量语料扫描 第 2 层 · 预算化顺序推理 LLM 只花在刀刃上 · 提出候选证据区域 · LLM 相关性 oracle 观测 · 更新信念状态 · 预算感知停止规则 第 3 层 · 合并与综合 证据 → 答案 → 资产 · 合并为紧凑溯源证据集 · LLM 综合成答案 · 可选:沉淀为知识簇 · 供后续查询复用 关键性质 · Index-free:动态文件上直接搜,无需预物化嵌入/分块索引 · Source-grounded:答案附带可追溯证据区,非黑盒向量命中 · Budget-aware:LLM 调用自适应花在不确定/高价值区域,成本与延迟显式遥测
🔥 架构

核心组件与数据流

AgenticSearch 搜索编排器 · 三模式 GrepRetriever ripgrep-all 并行无索引 EvidenceProcessor 候选区 → 紧凑证据单元 OpenAIChat 统一 LLM · 流式 · 用量跟踪 KnowledgeBase 溯源证据簇持久化为 可复用暖先验(DuckDB/Parquet) MonitorTracker 实时系统/应用 指标采集 存储布局(SIRCHMUNK_WORK_PATH,默认 ~/.sirchmunk/) .cache/history/chat_history.db — 会话历史(DuckDB)  .cache/knowledge/knowledge_clusters.parquet — 知识簇(Parquet,原子写 + mtime 重载) 依赖生态:ripgrep / ripgrep-all(无索引搜索)· Kreuzberg(PDF/Office 文本提取)· DuckDB · OpenAI 兼容端点(含 MiniMax 等)
核心机制

三种模式:预算与深度的旋钮

FAST

贪心搜索:两级关键词级联 + 上下文窗口采样。2 次 LLM 调用,2–5 秒。日常问答默认档。

文件级去重 + 动态分数剪枝;作用域感知的簇复用。

DEEP

完整 LENS:10–30 秒,预算化证据探索 + 富 Markdown 报告(含引用与模式提炼)。

默认搜索 token 预算 128K;SSE 流式日志可观测全过程。

FILENAME_ONLY

纯文件名定位,不读内容——最快的「我的文件在哪」。

另有 sirchmunk compile(Beta):离线预编译层级树索引 + 知识簇,FAST/DEEP 精度加成,--lint 体检 --fix 自修。

# 初始化时自动检查并安装 ripgrep-all / ripgrep
result = await searcher.search(query="How does transformer attention work?",
                               paths=["/path/to/docs"], mode="DEEP")
🔥 核心机制

KnowledgeCluster:搜索的沉淀物

字段含义
Evidences溯源证据区:文件路径 + 摘要 + 原文
ContentLLM 综合的 Markdown(含引用)
Patterns从证据提炼的 3–5 条设计原则/机制
Confidence共识可靠度 [0,1]
Queries贡献/复用过此簇的历史查询(FIFO ≤5)
Hotness查询频度 + 新近度的活跃分
Embedding384 维向量——由查询累计派生

每次搜索不白做:结果变成结构化、可复用、会成长的知识单元。

  • 确定性 ID:C{sha256},可增量恢复
  • 查询驱动嵌入:向量来自用户怎么问,不是文档怎么写——检索对齐真实提问方式
  • 语义拓宽:多样查询复用同一簇时,嵌入自动漂移覆盖更宽邻域,未来相关查询召回自然提升
  • 零成本加速:重复/近似查询直接命中缓存簇,零 LLM 推理近即时返回
🔥 核心机制

生命周期:从创建到进化

新查询进入 Phase 0 · 语义复用检查 查询嵌入 vs 全簇 cos ≥ 0.85? Phase 1–3 · 全量搜索 关键词 → 检索 → 证据定位 建新簇 C{sha256} evidences + patterns + conf Phase 5 · 持久化 DuckDB → Parquet 原子同步 命中 → 直接返回缓存簇,hotness +0.1(cap 1.0)、查询入 FIFO、嵌入重算 运行时周期演化(搜索后 fire-and-forget,锁 + 信号量保并发安全,manifest 支持增量恢复) ① 新簇同化:最近邻 cos 超阈值 → 合并重算嵌入 ② 语义边刷新:只增不减 ③ Leiden 社区检测 → LLM 合成 meta-cluster 共享查询(粗粒度一级索引) ④ 全局重校准:边权重重算 + 低于阈值剪枝

meta-cluster 的意义:把散点知识图整流为局部连通的语义图,LLM 用子簇查询集合成更高层抽象,降低后续搜索复杂度。

产品面

七种接入方式

方式说明
Python SDKAgenticSearch(llm=OpenAIChat(...)).search(query, paths, mode),异步原生
CLIsirchmunk init / serve / search / compile / mcp / web 六组命令
MCP Serverstdio / Streamable HTTP 双传输,Claude Desktop、Cursor、MCP Inspector 开箱即用
Web UINext.js 14 + Tailwind:聊天(流式日志)、知识图谱可视化(簇 + 生命周期)、系统监控三视图
HTTP APIPOST /api/v1/search(JSON)与 /search/stream(SSE 实时日志);并发由 SIRCHMUNK_MAX_CONCURRENT_SEARCHES 控制
Docker阿里云镜像(北京/美西),amd64 + arm64;示例配置 4 核 / 2G 内存即可跑
OpenClaw skill上架 ClawHub,任何 OpenClaw 兼容 agent 可用自然语言搜本地文件
可复现研究

benchmarks/:ResearchOps 纪律

演进史

8 个月 13 个版本的节奏

版本时间里程碑
v0.0.12026-01首发:核心搜索 + Web UI
v0.0.202-05MCP 集成、CLI、KnowledgeCluster DuckDB 持久化 + 复用
v0.0.302-12glob 过滤、SHA256 确定性簇 ID、「预算证据探索」文档
v0.0.402-27Docker 一等公民、FAST 模式(2 LLM 调用)、Windows 兼容
v0.0.5–603统一 Search API、多轮对话 + 查询重写、跨语言检索、SSE 流式、OpenClaw skill
v0.0.704C/S 加固:allowed_paths + 符号链接检测、IP 限流、审计日志、远程上传
v0.0.806sirchmunk compile(Beta):离线树索引 + 知识簇预编译
v0.0.907KnowledgeEvolver:四阶段运行时演化 + Leiden meta-cluster + 知识图谱可视化
v0.1.008-25里程碑版本:体系成熟
风险提示

需要清醒的地方

在线体验

Playground:自进化知识簇模拟器

亲手复现 KnowledgeCluster 生命周期——输入查询,看 Phase 0 复用判定(cos ≥ 0.85 零 LLM 成本)、簇的诞生与语义边、周期演化的同化合并与 meta-cluster 包络。三个阈值滑块可调,日志实时解释每一步决策;观察「缓存命中 vs 全搜索」的成本分野。

打开知识簇模拟器

上一个
Bloub
下一个
Interface Design
1 / 15