Skip to main content

llmwiki-suite

PyPI version Python CI

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

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

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

安装

已在 PyPI 发布。推荐直接装带微信渠道的版本(一条命令搞定核心 + 全部功能); 只看检索/巡检则装核心版即可(零依赖)。

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

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

要求 Python >= 3.11。

本地开发安装(源码)

git clone https://github.com/voidvec/llmwiki-suite.git
cd llmwiki-suite
pip install -e .                 # 或带微信通道:pip install -e ".[wechat]"

五步接入你已有的笔记库

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 问答服务,需 wechat 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> 显式指定库路径(默认取当前目录)。

微信渠道接入(个人微信 / 企业微信)

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

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

# ② 配置 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"       # 建议:保护 /chat、/recall
llmwiki serve --host 127.0.0.1 --port 8000
  • 个人微信(推荐,免费官方 iLink 通道):浏览器打开 http://127.0.0.1:8000/ilink/webui → 手机微信扫码 → 绑定成功后 直接在微信里给 bot 发消息即查即答。
  • 企业微信:配置 LLM_WIKI_WECOM_* 环境变量后自动启用回调 / 主动推送通道。

换 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_TOKENLLM_WIKI_WECOM_*LLM_WIKI_ILINK_*),本套件不读取任何 .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-architecture.md 系统架构:分层设计、通道抽象
docs/obsidian-guide.md 可选:用 Obsidian 作为前端编辑器
docs/pypi-release-guide.md 维护者:发布到 PyPI 的操作指南(注册/2FA/Token/twine)

建议顺序: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.1.tar.gz (99.4 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.1-py3-none-any.whl (75.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for llmwiki_suite-0.1.1.tar.gz
Algorithm Hash digest
SHA256 db881a9fe9a165251e87b2d14fc4b8dcb75c06f348f4babe917ce6b137d631aa
MD5 748b7aa6568cca9e16fac591229c7764
BLAKE2b-256 708805e637d6a429d18977e40758f425e6c86f6fb4ee9908fb25e0f818ef6369

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for llmwiki_suite-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e4c8bb8c38b7dd0cef41edaf2504c3afbe028e8186a6ea0d6e96fefa5fa21a0e
MD5 611b26c494f1292c4f4aca5058327cc4
BLAKE2b-256 b8940ff1a6260b71ea6ca0a6f898b696ff2dbd793061ac2e69b307d0cc51f2e6

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.5

2 files

0.1.4

2 files

0.1.2

2 files

This release

0.1.1 This release

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