这个项目能做什么
llmwiki(npm 包 llm-wiki-compiler)是一个命令行知识编译器,可将原始来源材料转换为带有引用、元数据和审核状态的相互链接 markdown wiki。它是 Andrej Karpathy 的 LLM Wiki 模式的具体实现:不在查询时检索原始分块,而是将知识一次性编译为持久页面,由这些页面积累结构与出处。
它做什么
两阶段 LLM 流水线先从来源抽取概念,再生成 concept、entity、comparison、overview 等类型化页面。段落和声明会引用来源文件与行号范围,lint 命令会验证这些链接。默认配置档保留 concepts-and-queries 布局;可选配置档添加特定领域的类型和工作流,而无需分叉编译器本身。
核心能力
- 可配置生命周期配置档:经过验证的 .llmwiki/profile.json 声明类型化实体、字段、有向关系、生命周期状态、迁移证据、信任门禁、多阶段工作流、哈希固定制品、连接器、内容分层和检索策略。规则由运行时强制执行,而不是留作提示词约定;无效配置档会失败封闭。
- 可安装领域模板:autosci(论文、想法、实验、手稿、证据制品、Crossref 导入)和 newsroom(文章、编辑部、署名、编辑工作流)等内置模板。模板包含配置和示例,不包含可执行插件代码。签名模板发行版采用 Ed25519 签名、密钥轮换和吊销,并通过显式信任的 tap 进行发现。
- 混合检索:语义分块搜索、BM25 重排和 wiki 链接图扩展为查询和智能体构建紧凑证据包。
- 本地查看器:只读浏览器 UI,提供搜索、页面元数据、图探索、来源新鲜度徽章和引用标签。1.3 版新增四个主题。
- 审核策略:当置信度、矛盾、模式或出处规则被触发时,生成的页面可作为候选保留。
- 新鲜度修复:lint 和 next 会标出陈旧或孤立页面;refresh --stale 修复已变化的知识,而不会编译无关的新来源。
- 评估套件:报告健康分数、每页健康度分布、wiki 链接图健康度、引用覆盖率和精确率、语料库统计以及回归差异,并可选使用裁判模型评估引用支持度。
- MCP 服务器:向兼容 MCP 的智能体暴露 ingest、compile、query、lint、read、status、eval、context-pack 和 OKF 交换工具。
- SDK:createWiki({ root }) 从 TypeScript 驱动 ingest、compile、query、context、status、export、eval 以及 OKF 导入/导出。
- 开放知识格式交换:导出和导入 OKF 包;外部导入默认通过审核队列暂存,受信任包则可显式实时写入。
- 其他导出:JSON、JSON-LD、GraphML、Marp 幻灯片和 llms.txt。
- 提供商可移植性:Anthropic、Claude Agent SDK 本地登录、OpenAI Codex CLI 本地登录、OpenAI 兼容服务器、Ollama、GitHub Copilot、Atlas Cloud、OrcaRouter 以及本地 OpenAI 兼容运行时。
项目布局
项目将原始输入保存在 sources/,将编译后的 markdown 保存在 wiki/(concepts、queries、配置档声明的类型化页面、图存储、输出、生成索引),编译器状态保存在 .llmwiki/(profile、config、schema、state、candidates、workflows、eval history)。制品为哈希固定文件和清单;log.md 是活动日志。
质量与安全模型
该项目强调可审计的生成知识:先审核后写入策略、运行时强制的配置档底线、不受信任的外部连接器数据作为带围栏审核候选暂存、路径受限且经哈希验证的制品、失败封闭配置、来源隔离、显式新鲜度状态,以及通过 lint 和 eval 实现的 CI 质量门禁。
规模说明
增量编译跳过未变化的来源;并行编译在可配置并发上限下运行抽取和生成;分块级嵌入在重排前缩小大型 wiki 的范围;感知内容哈希的嵌入更新避免重复计算;批量嵌入降低延迟;二进制嵌入存储可处理超过 64 MiB JSON 限制的存储;当提供商缺少嵌入端点时,词法回退可保持查询和上下文工作流可用。
要求与用法
需要 Node.js 24 或更新版本。典型用法是 npm install -g llm-wiki-compiler,设置提供商 API 密钥,然后对文件或 URL 运行 quickstart,查询编译后的 wiki,并打开查看器。README 指出,该工具适合持久的项目或领域 wiki(研究文件夹、代码库文档、团队手册、标准、决策日志),而不太适合普通搜索即可满足需求的高流失原始日志。它被描述为早期软件。
评论
0 评分人数达到10人后显示
登录后参与讨论。