把 Markdown 笔记变成可问答的知识图谱:本地 Graph RAG 工具 Kwipu 实测

把 Markdown 笔记变成可问答的知识图谱:本地 Graph RAG 工具 Kwipu 实测

你有没有这种困境:Obsidian 或者本地 Markdown 笔记越积越多,却只能靠关键词搜索,根本无法跨文件追问「这个概念和那个概念有什么关联」?

Kwipu 想解决的正是这个问题------它把你的 Markdown 笔记目录,构建成一张可被本地 LLM 查询的知识图谱(Property Graph),实现真正的自然语言 Q&A。全程本地,不碰云端。


它是怎么工作的

Kwipu 的核心管道非常清晰:

复制代码
Markdown 文件
  → 预处理(解析 [[wikilinks]] 和 YAML frontmatter)
  → LLM 提取(实体 + 关系三元组)
  → Property Graph Index(持久化到 storage_graph/)
  → 混合检索(Vector + BM25 + 时间维度 + 同义词)
  → LLM 生成回答

区别于普通 RAG 只做向量相似度检索,Kwipu 引入了图结构:每个实体、每条关系都被提取出来,查询时同时走向量、BM25 和图关系,命中质量更高,尤其适合知识密度高的笔记库。


核心特性一览

特性 说明
完全本地 基于 Ollama 运行,数据不出本机
Graph RAG 实体-关系三元组 + 混合检索
增量更新 新增一个文件只需 20-60s,无需全量重建
Obsidian 友好 自动识别 [[wikilinks]].obsidian/ 配置忽略
多语言支持 通过 lang_config.py 配置
持久化图索引 构建一次,后续查询秒级加载

快速上手

环境要求:

  • Ollama(本地推理引擎)
  • 推荐模型:llama3.1:8b / qwen2.5:7b / mistral:7b
  • Embedding:nomic-embed-text
bash 复制代码
# 克隆项目
git clone https://github.com/benmaster82/Kwipu
cd Kwipu
pip install -r requirements.txt

# 拉取所需模型
ollama pull qwen2.5:7b
ollama pull nomic-embed-text

# 把笔记放到 knowledge_base/ 或修改 geode_graph.py 中的 KNOWLEDGE_DIR
# Obsidian 用户直接指向 vault 路径即可

# 启动
python geode_graph.py

首次运行会构建图索引,时间取决于笔记数量:

笔记数量 GPU(7B) CPU(7B)
5 篇 ~2 分钟 ~5 分钟
20 篇 ~7 分钟 ~20 分钟
100 篇 ~35 分钟 ~100 分钟
500+ 篇 ~3 小时 不建议

重要:构建完成后图结构持久化到磁盘,后续启动秒级加载,新增文件增量更新约 20-60 秒。


硬件需求参考

组件 内存占用
Ollama LLM(7B Q4) ~5-6 GB
Embedding 模型 ~300 MB
图索引构建 0.5-4 GB
查询阶段 200-500 MB
7B 方案合计 约 8-12 GB

推荐最低配置:16 GB 内存 + 独立显卡(有 GPU 加速差距明显)。


一个实用技巧:先云后本地

Kwipu 项目文档里有个思路很有意思:

用一次性的强力云模型(通过 Ollama API 接入)构建知识图谱,然后切换成轻量本地模型日常查询。

图结构(实体、关系、三元组)一旦构建完成就和模型解耦了,切换模型不需要重建图,只影响回答生成质量。这意味着你可以用 qwen2.5:72b 做一次高质量的知识提取,然后用 3b 模型来低成本日常查询------相当节省算力。


适合谁用

  • Obsidian 重度用户:笔记多、关联密,想要跨文件知识问答
  • 个人知识库管理者:不愿意把笔记传云端,追求完全离线
  • 研究/阅读笔记积累者:大量摘录、读书笔记,需要跨文件回溯
  • 对 RAG 感兴趣的开发者:Graph RAG 的落地参考实现

总结

Kwipu 不是又一个向量数据库套 LLM 的玩具。它真正做到了把非结构化 Markdown 笔记转化为有明确图结构的知识库,查询路径更丰富,回答质量更稳定。全本地、MIT 开源、对 Obsidian 零侵入------如果你在找一个认真对待「知识管理」这件事的本地 RAG 工具,Kwipu 值得一试。

项目地址:github.com/benmaster82/Kwipu

相关推荐
用户4130622582913 分钟前
给AI回答加引用角标citation:RAG前端实现
人工智能
金銀銅鐵26 分钟前
[Python] 从《千字文》中随机挑选汉字
后端·python
米小虾34 分钟前
WAIC 2026 倒计时30天:300+ AI 产品全球首发,今年看点全解析
人工智能
码上天下1 小时前
多模态Agent上传图片:前端压缩格式与预览实战
人工智能
姗姗来迟了1 小时前
Vue3封装可复用AI对话组件:一次抽象复盘
人工智能
怕浪猫1 小时前
哪些软件对 Chrome DevTools Protocol 频繁使用
人工智能·架构·前端框架
leo在掘金3 小时前
从DeepSeek 510亿融资到GitHub 33K Star开源项目:这周的技术生态发生了什么?
人工智能
小姜前线技术4 小时前
AI流式渲染打字机效果抖动?节流方案踩坑实录
人工智能
用户018349301694 小时前
AI对话状态管理:useReducer还是XState
人工智能