Skip to main content

llmwiki-suite

🌐 English · 中文

PyPI version Python CI Release

把一堆 Markdown 笔记编成「会生长、能问答」的个人知识库。

源自 Karpathy 的 LLM-wiki 思路:不做每次查询临时切片的 RAG,而是用工具链 持续编译笔记——补 frontmatter、建 BM25 + wikilink 图索引、巡检断链, 最后通过 CLI 或微信通道问答。

包名 vs 命令名:PyPI 发布名为 llmwiki-suitellmwiki 这个包名已被其他项目占用), 安装后执行命令仍然是 llmwiki —— 即「装的是 llmwiki-suite,用的是 llmwiki」。

安装

已在 PyPI 发布。推荐直接装 serve(核心 + 跑 llmwiki serve 需要的 fastapi/uvicorn,也是所有通道——微信/企微/飞书/Telegram 共用的运行时); 只看检索/巡检则装核心版即可(零依赖)。

# 推荐:一条命令装好【全部能力】(核心 + 通道时代 fastapi/uvicorn)
pip install "llmwiki-suite[serve]"

# 轻量:只装核心(ingest / index / query / lint / eval,零第三方依赖)
# pip install llmwiki-suite

要求 Python >= 3.11。

本地开发安装(源码)

推荐在项目级虚拟环境中安装(与 CI 同构、依赖隔离):

git clone https://github.com/voidvec/llmwiki-suite.git
cd llmwiki-suite
python -m venv .venv
# Windows: .venv\Scripts\activate     macOS/Linux: source .venv/bin/activate
pip install -e ".[wechat,dev]"       # 全部通道 + 测试/pre-commit 依赖
pre-commit install                   # 注册仓库级钩子(可选但推荐)

五步接入你已有的笔记库

cd ~/my-notes          # 1. 进入你的笔记目录
llmwiki init           # 2. 生成 llmwiki.toml 配置模板
llmwiki ingest         # 3. 补 frontmatter + 规范化 wikilink
llmwiki index          # 4. 建检索索引
llmwiki query "..."    # 5. 检索 / 问答

可选:llmwiki lint(巡检断链/词表)、llmwiki eval(评估低质量子集并输出诊断)、 llmwiki serve(启动 HTTP 问答服务,需 serve extras)。

命令一览

命令 作用
llmwiki init 在目标库生成 llmwiki.toml 模板 + 脚手架(.gitignore / pre-commit / CI)
llmwiki ingest 扫描笔记,补齐 frontmatter,规范化 wikilink 命名
llmwiki index 生成 BM25 + wikilink 图检索索引(kb-index.json
llmwiki query "..." 召回最相关章节;配置 LLM_WIKI_API_KEY 后基于召回结果生成完整回答
llmwiki lint 巡检:断链、词表越界、命名规范
llmwiki eval 用内置评估集跑 recall@k / MRR
llmwiki serve 启动 FastAPI 桥接服务(/chat /recall /healthz

所有命令支持 --repo <path> 显式指定库路径(默认取当前目录)。

渠道接入(微信 / 企业微信 / 飞书 / Telegram)

llmwiki serve 把知识库接到 IM,直接发消息问答:

# ① 已装渠道版则直接可用;否则先补装渠道依赖
pip install "llmwiki-suite[serve]"

# ② 配置 LLM(OpenAI 兼容端点;只设 KEY 时默认走 OpenAI)
export LLM_WIKI_API_KEY="sk-xxx"
export LLM_WIKI_BASE_URL="https://api.openai.com/v1"        # 不设则默认 OpenAI
export LLM_WIKI_MODEL="gpt-4o-mini"                          # 不设则默认 gpt-4o-mini

export LLM_WIKI_BRIDGE_TOKEN="my-secret"       # 可选:保护问答接口(本地验证通道可忽略)
llmwiki serve --host 127.0.0.1 --port 8000
  • 个人微信(推荐,免费官方 iLink 通道):浏览器打开 http://127.0.0.1:8000/ilink/webui → 手机微信扫码 → 绑定成功后 直接在微信里给 bot 发消息即查即答。
  • 企业微信:配置 LLM_WIKI_WECOM_* 环境变量后自动启用回调 / 主动推送通道。
  • 飞书:配置 LLM_WIKI_FEISHU_APP_ID / LLM_WIKI_FEISHU_APP_SECRET(可选 LLM_WIKI_FEISHU_VERIFY_TOKEN 做事件签名校验),在飞书开放平台把事件订阅 回调地址设为 https://<你的域名>/feishu/callback 即可(challenge 自动应答)。
  • Telegram:用 @BotFather 建 bot 得 token,配置 LLM_WIKI_TELEGRAM_BOT_TOKEN, 把 webhook 设到 https://<你的域名>/telegram/callbacksetWebhook;可用 LLM_WIKI_TELEGRAM_SECRET_TOKEN 做回调鉴权)。

路由总是注册serve 启动时四条通道的路由(/ilink/*/wecom/*/feishu/callback/telegram/callback)无条件挂载,缺凭据时返回可读的 hint(不会 404)。可通过 http://127.0.0.1:8000/healthz 查看各通道 configured / enabled 状态。通道回调用不到 LLM_WIKI_BRIDGE_TOKEN。 Telegram webhook 需要公网可达地址(可用 frp / ngrok / 腾讯云轻量等反代到 8000)。

换 LLM 厂商 / 模型(OpenAI 兼容协议即可)

套件只调 OpenAI 兼容的 /chat/completions不看厂商名——任何提供该协议的服务都能用:

厂商 LLM_WIKI_BASE_URL LLM_WIKI_MODEL
OpenAI(默认) https://api.openai.com/v1 gpt-4o-mini
DeepSeek https://api.deepseek.com/v1 deepseek-chat
通义千问 https://dashscope.aliyuncs.com/compatible-mode/v1 qwen-plus
Kimi / Moonshot https://api.moonshot.cn/v1 moonshot-v1-8k
本地 Ollama http://127.0.0.1:11434/v1 qwen2.5:7b(API_KEY 随便填)

换厂商只需把上面三个变量一起设;只有 OpenAI 时只用 LLM_WIKI_API_KEY 即可。 支持任意 OpenAI /chat/completions 兼容的第三方服务(DeepSeek / 通义 / Kimi / 本地 Ollama / vLLM 等), 完整对接步骤、会话持久化与排错,详见 [[llmwiki-tutorial-02-channel]]。

配置与密钥

  • 库配置:库根 llmwiki.toml(categories 词表、排除目录、模型名等非密钥项)
  • 密钥:只走环境变量(LLM_WIKI_API_KEYLLM_WIKI_BRIDGE_TOKEN(可选)、 LLM_WIKI_WECOM_*LLM_WIKI_ILINK_*LLM_WIKI_FEISHU_*LLM_WIKI_TELEGRAM_*),本套件不读取任何 .env 文件

文档

全部文档在 docs/,按「入口 → 进阶 → 参考」组织:

文档 说明
docs/getting-started.md 入口:五步接入已有笔记库(10 分钟上手)
docs/llmwiki-tutorial-01-system.md 体系搭建完整教程:目录规范、Ingest / Query / Lint、自动化
docs/llmwiki-tutorial-02-channel.md 渠道接入:微信 / 企业微信桥接、serve 部署
docs/llmwiki-tutorial-03-quality-tuning.md 检索质量调优:评估集、诊断、调参
docs/llmwiki-eval.md 命令参考:eval 全部选项、评估集 schema、报告字段、指标解读
docs/llmwiki-evolution-roadmap.md 路线图:从被动问答到知识库自进化(L0→L3)
docs/llmwiki-architecture.md 系统架构:分层设计、通道抽象
docs/obsidian-guide.md 可选:用 Obsidian 作为前端编辑器
docs/pypi-release-guide.md 维护者:发布到 PyPI 的操作指南(注册/2FA/Token/twine)
CHANGELOG.md 版本变更记录(Keep a Changelog 风格)

建议顺序:getting-started → tutorial-01 → 02/03(按需)→ architecture。

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llmwiki_suite-0.1.2.tar.gz (118.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

llmwiki_suite-0.1.2-py3-none-any.whl (86.2 kB view details)

Uploaded Python 3

File details

Details for the file llmwiki_suite-0.1.2.tar.gz.

File metadata

  • Download URL: llmwiki_suite-0.1.2.tar.gz
  • Upload date:
  • Size: 118.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.4

File hashes

Hashes for llmwiki_suite-0.1.2.tar.gz
Algorithm Hash digest
SHA256 6e7404d15de972fd1db5338674693423b43c944dc5aa5e41054ed70e66883293
MD5 29db923f7b4ce1f3ce90c41f8f8681f2
BLAKE2b-256 01e6fcec4cb4a7d34935d40146a07eb85c8d31bb1a7fe2fc80157e6118616d1d

See more details on using hashes here.

File details

Details for the file llmwiki_suite-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: llmwiki_suite-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 86.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.4

File hashes

Hashes for llmwiki_suite-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 137a8396022419c9d7b2ee49b7f3caf9b868a4f4b82faefe58504a4c5db4489a
MD5 27b956245bf04be060d85efdaf3d0796
BLAKE2b-256 1557b07119a6869b3ec979b3ac8022655339e8b4ae3dbc5d7667528503daf5e0

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.5

2 files

0.1.4

2 files

This release

0.1.2 This release

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page