KnowNote 是一款本地优先的开源桌面知识库工具,目标是提供类似 NotebookLM 的“导入资料、检索问答、生成笔记”流程,同时允许用户自行选择模型服务。它支持 PDF、Word、PowerPoint、网页和文本资料,使用 SQLite 保存业务数据、sqlite-vec 执行向量检索,并以 Electron 应用形式运行,不要求 Docker 或独立服务器。
KnowNote 更适合个人学习、研究资料整理和本地 RAG 实验。项目说明明确称其仍处早期阶段,部分功能和交互可能粗糙,因此不应直接把它当作成熟的企业知识管理平台。
它与托管式 NotebookLM 的核心差异不是界面,而是控制权:文件和索引保存在本机,模型与嵌入服务可以自行配置,也可以选择 Ollama。但只要使用云端模型或云端嵌入接口,相关请求和检索上下文仍会离开设备。
普通用户可在项目 Releases 中选择 Windows 安装程序,或按处理器架构选择 macOS 安装包。下载前应核对版本、发布时间与资产名称;项目没有承诺自动兼容所有旧系统。
开发者可通过 pnpm 启动源码:
git clone 项目仓库地址
cd KnowNote
pnpm install
pnpm dev
源码使用 Electron、React、TypeScript、Vite 和 Tailwind CSS。安装阶段包含 Electron 原生依赖处理,因此 Node.js、pnpm、系统编译环境和网络代理异常都可能导致失败。正式使用前还应执行类型检查与构建测试。
知识库问答通常涉及聊天模型和嵌入模型。聊天模型负责组织答案,嵌入模型负责把文档分块转换为向量。KnowNote 的提供方注册表包含 OpenAI、DeepSeek、Qwen、Kimi、SiliconFlow、Ollama 和智谱等选项,但并非每个提供方都同时具备聊天与嵌入能力。
| 目标 | 推荐配置思路 | 注意事项 |
|---|---|---|
| 尽量离线 | 聊天与嵌入均选择本机 Ollama | 需提前下载模型并确认内存、显存足够 |
| 快速体验 | 选择具备聊天和嵌入能力的云端服务 | 文档分块可能发送到第三方接口 |
| 混合配置 | 本地嵌入配云端聊天,或反向组合 | 分别确认每一步的数据边界 |
Kimi 在当前内置描述中只声明聊天能力,不能单独承担嵌入任务。无论选择哪种服务,都应先用无敏感内容测试连接和模型名称。
建议按课程、项目或研究主题创建独立笔记本,再逐批导入文件。仓库当前实现可解析 PDF、DOCX、DOC、PPTX、PPT、TXT、Markdown 和网页内容。应用会把导入文件复制到用户数据目录下的知识文件夹,并在 SQLite 中保存文档、分块和索引元数据。
首次验收不要直接导入大型资料库。可准备一份带标题层级的 DOCX、一份多页 PPTX、一份可复制文字的 PDF 和一个公开网页,逐一检查:
DOCX 解析器使用 Mammoth 提取纯文本,并通过转换后的标题标签恢复章节层级。它适合检索标题和正文,但复杂表格、文本框、批注、页眉页脚和视觉排版可能丢失或改变顺序。
PPT 解析器使用 officeparser 提取文本,再依据连续换行启发式划分幻灯片。这种方式不等同于渲染 PowerPoint 页面,也不能保证复杂模板、图表、动画和多文本框的阅读顺序。对依赖空间布局的结论,必须返回原文件核对。
代码当前为嵌入请求显式指定 1024 维,并根据实际返回结果设置向量存储维度。更换嵌入模型后若维度不兼容,旧索引可能需要重建,不能只改模型名称便继续沿用。
若导入成功但搜索不到内容,应先检查解析文本、分块状态和嵌入服务;若召回片段正确但答案错误,再检查聊天模型和提示词。把解析、索引、召回、生成分开诊断,比反复更换模型更有效。
除问答外,KnowNote 还提供结构化笔记、一键思维导图、测验和 Anki 卡片相关能力。生成内容仍依赖选定模型,并不天然等于原始材料中的事实。
使用这些功能时,应保留关联的分块标识,抽查生成结果是否能回到文档原文。测验答案、卡片解释和思维导图层级尤其容易把模型推断误写为资料事实,发布或复习前需要人工审核。
只满足第一项不能称为完全离线。配置 OpenAI、DeepSeek、Qwen、SiliconFlow 或其他远端服务时,应阅读相应服务的数据处理规则,并避免上传不具备授权的内容。
| 检查项 | 通过标准 |
|---|---|
| 格式 | 目标 PDF、Word、PPT 和网页样本均可解析 |
| 索引 | 分块和嵌入完成,无持续失败记录 |
| 引用 | 答案能回到正确文档和片段 |
| 边界 | 明确哪些模型请求会离开本机 |
| 质量 | 无答案问题不会被强行补全 |
| 恢复 | 数据库与知识文件有可验证的备份 |
KnowNote 的价值在于用桌面应用降低本地知识库的部署门槛,并把模型选择权交给用户。可靠使用它的关键,是先验证 Office 文档的文本提取质量,再分别确认嵌入、检索、引用和生成,同时根据模型配置准确界定隐私范围。