~/reviews · open-notebook · 2026-06-06

cat README.md

Open Notebook

一份给 Notebook LM 用户的情书——开源的、可自托管的、支持 18+ AI 提供商的研究助手。你不再需要把研究数据喂进 Google 的嘴里,就能拥有和 Notebook LM 一样甚至更强的体验。

PRIVACY-FIRST26K STARSTS 64.6%MITDOCKER

// 目录

概览 部署体验 功能剖析 播客功能 架构 竞品对比 性能 观点

// 概览

Repository
lfnovo/open-notebook
Luis Novo 单人维护,2024年10月创建,19个月 739 次提交
GitHub Stars
26,004
今日增长 +1,152 · 排名 AI 类 #4 · 37 个 Release
Community
2,993 Forks
147 Open Issues · 19 Open PRs · 活跃 Discord
Tech Stack
Python + Next.js
FastAPI 后端 · React 前端 · SurrealDB · LangChain · Esperanto
AI Providers
18+
OpenAI · Anthropic · Ollama · DeepSeek · Qwen · Mistral · xAI 等
Languages
7 语言 UI
ENG · PT · 简体中文 · 繁体中文 · JP · RU · BN

// 为什么关注这个项目

每天跑 GitHub 日报快两个月了,说实话,看过的项目多了,能让我真正想用起来的东西不多。大部分开源项目看一眼就过去了——知道它是干什么的,心里默默打上"不错,但不是我的菜"的标签,然后继续刷下一个。

Open Notebook 是少数让我停下来折腾了一下午的项目。

起因很简单:我一直在用 Google Notebook LM。你应该知道那个感觉——把一堆 PDF、网页、YouTube 链接扔进去,它自动帮你整理出要点,还能生成一段两个 AI 主持人对话的播客。听上去很好对吧?问题是,你所有的研究数据都在 Google 云上。对于一个每天都在做 AI 行业深度内容的人来说,这个信任成本是真实存在的。

Open Notebook 做的事情特别直接:把 Notebook LM 的体验搬到你的本地机器上,而且给你更多选择权——你可以用 OpenAI、用 Anthropic、用 Ollama 跑本地模型、甚至用 Perplexity 做联网搜索增强。所有数据留存在你的 Docker 容器里,一把密码都不是 Google 的。

项目作者 Luis Novo 在 README 里写了一段话,大意是:在 AI 主导的世界里,获取知识的能力不应该被一家公司垄断,也不应该以牺牲隐私为代价。这段话不太像公关文案,更像是他做这个项目的真实动机。


// 部署体验:Docker 一把梭,两分钟搞定

打开终端执行三行命令:

# Step 1: 下载 docker-compose.yml curl -o docker-compose.yml https://raw.githubusercontent.com/lfnovo/open-notebook/main/docker-compose.yml # Step 2: 改一下加密密钥(随意生成一串字符就行) # OPEN_NOTEBOOK_ENCRYPTION_KEY=change-me-to-a-secret-string 换成你自己的 # Step 3: 启动 docker compose up -d

等 15 秒,浏览器打开 http://localhost:8502,界面就出来了。

第一次打开看到一个简洁的三栏布局:左边放你的研究材料(Sources),中间写笔记(Notes),右边是聊天窗口(Chat)。这个布局跟 Notebook LM 的思路很像,但更干净——没有 Google 那些花里胡哨的推荐和插页广告。

接下来唯一的配置工作是去 Settings → API Keys 加一个 AI 提供商。我用的是 DeepSeek V3——便宜,效果也不差。如果你不想花 API 费用,项目提供了 Ollama 集成,examples/docker-compose-ollama.yml 一把梭启动,完全离线跑。

部署体验给 9/10。扣一分是因为 SurrealDB——这个数据库在国内知名度偏低,遇到问题调试成本可能比用 PostgreSQL 高一点。


// 功能剖析:不只是"本地版 Notebook LM"

说它是 Notebook LM 的复刻其实是低估了它。Open Notebook 在好几个维度上功能比 Notebook LM 更丰富

1. 内容摄取能力

支持 PDF、视频(YouTube URL)、音频、网页、Office 文档,基本上你能扔进去的格式它都接。跟 Notebook LM 比,差距主要在 PDF 解析精度上——Notebook LM 背后是 Google 的文档理解引擎,复杂版式表格的处理能力目前还是领先的。但日常使用场景下,Open Notebook 的 PDF 解析已经够用了。

2. 细粒度上下文控制

这是 Open Notebook 比 Notebook LM 做得更好的地方。你可以精确选择哪些源材料对 AI 可见,而不是"要么全开要么全关"。对于需要控制信息范围的研究场景(比如分析竞品时不想让 AI 混入自己的内部文档),这个功能是刚需。

3. 内容转换引擎

内置了一套可配置的内容处理流水线,你可以自定义"把这篇 PDF 转成 3 段摘要"或"从这组网页中提取所有提到 X 的数据点"这类操作。相当于内置了一个轻量级的文档处理 Workflow。

4. 完整 REST API

所有功能都可以通过 API 调用(文档地址 http://localhost:5055/docs)。这意味着你可以把 Open Notebook 嵌入到自动化工作流里——比如每天自动抓取指定 RSS 的文章,塞进笔记本生成摘要,再用 API 导出到你的知识库。这个扩展性 Notebook LM 完全不具备。


// 播客功能:这个是真有点东西

Notebook LM 的 AI 播客功能是它的标志性卖点——两个 AI 主持人讨论你上传的文档,听起来自然到让人以为是在听真人播客。

Open Notebook 也做了这个功能,而且做得比 Notebook LM 更灵活

对比维度Open NotebookGoogle Notebook LM
发言人数1-4 位固定 2 位
声音来源多个 TTS 提供商可选(OpenAI / ElevenLabs / Mistral / xAI / Deepgram)仅 Google TTS
语言支持支持多语言播客主要英语
Episode Profiles可为每集自定义主持人风格固定风格
失败重试v1.7.3 起支持播客生成失败恢复与重试

1-4 位发言人这个设计很聪明。两个人的对话适合讨论类内容,三个人的话可以模拟圆桌讨论,单人旁白适合纯知识讲解。我试了一下用 DeepSeek V3 生成了一段 3 人讨论的 AI Agent 发展史播客,效果比预期的好——虽然不如 Notebook LM 那么"自然",但信息密度明显更高。这可能是因为底层 LLM 可以换成你喜欢的任何一个。

不过也有一个需要注意的点:Open Notebook 的播客目前不是流式生成的,生成时间取决于你的内容和 LLM 速度。如果你用本地 Ollama 跑模型,一段 10 分钟的播客可能要等一阵子。


// 技术架构

Open Notebook 的架构清晰到让人舒服——Python 后端(FastAPI)+ Next.js 前端 + SurrealDB 做数据和向量存储。核心 AI 调用通过一个叫 Esperanto 的自研库统一适配,屏蔽了 18 个不同 AI 提供商的 API 差异。

📄
Content IngestPDF / Video / Audio / Web
🧠
LangChain PipelineChunk + Embed + Index
🔍
SurrealDBFull-Text + Vector Search
🤖
Esperanto Router18+ AI Providers
ARCHITECTURE OVERVIEW · 数据流入到查询输出的完整链路

架构上最值得说的亮点是 Esperanto 这个层。它不只是简单的 API 翻译——而是把 LLM、Embedding、STT、TTS 四个维度都做了统一抽象。这意味着你在 UI 里切换模型供应商时,不需要改任何代码或配置。一个项目里可以同时用 OpenAI 做 Embedding、DeepSeek 做 LLM 推理、ElevenLabs 做 TTS——无缝组合。

SurrealDB 的选择有点"非主流",但仔细想想有道理。一个数据库同时处理关系型数据(笔记本结构、用户权限)和向量检索(语义搜索),比 PostgreSQL + pgvector 的组合更轻量。不过这也意味着如果你之前没接触过 SurrealDB,遇到问题时的社区资源比 PostgreSQL 少很多。


// 竞品对比

项目 定位 Stars AI 提供商 播客 部署 许可证
Open Notebook Notebook LM 开源替代 26K 18+ ✅ 1-4 发言人 Docker MIT
AnythingLLM 全能本地 Agent 工作台 61K 20+ Docker / Desktop MIT
PrivateGPT 文档问答 + 隐私优先 57K 本地模型为主 Python/Pip Apache 2.0
Kotaemon 开源 RAG 文档聊天 25K 多模型 Python/Docker Apache 2.0
Google Notebook LM 闭源 AI 研究助手 - 仅 Google ✅ 固定 2 人 云托管 闭源

关键判断:AnythingLLM 和 PrivateGPT 的 Star 数确实比 Open Notebook 高出一大截,但它们的定位有本质区别。AnythingLLM 是"万能瑞士军刀"——想做所有事情(Agent、多模态、RAG、本地优先),但恰恰因为功能太杂,在研究工作流这个细分场景里不如 Open Notebook 专注。PrivateGPT 的核心是"文档问答",没有笔记本管理、没有播客、没有内容转换流水线。

Open Notebook 的护城河在于:它目前是唯一一个在"研究笔记管理 + 多模型 AI + 播客生成"这个组合上做到一体化的开源方案。如果你只是想做文档问答,Kotaemon 够用了;如果你想什么都玩,AnythingLLM 更合适;但如果你想要一个开源的、能替代 Notebook LM 日常使用的东西,Open Notebook 是当前最接近的答案。


// 生态数据对比

Stars
26K
AnythingLLM
61K
PrivateGPT
57K
Kotaemon
25K
Releases
37 版本
提交数
739 commits

Star 数在同类项目中属于中等偏上,但增长速度相当可观——19 个月内从 0 到 26K。v1.8.4 修复安全漏洞(CERT-EU 报告)后社区信心明显回升,v1.9.0 又新增了 Mistral、Deepgram、xAI 三家音频提供商,功能迭代节奏保持得很好。


// 博主观点

VERDICT
8.5/10
综合评分 · 当前最接近"本地版 Notebook LM"的开源方案
➕ 优点:
隐私控制满分——所有数据本地 Docker 容器,零云依赖,加密密钥你自己管
AI 提供商自由——18+ 提供商,包括国产 DeepSeek/Qwen,成本灵活可控
播客功能是真实差异化——1-4 人可选、多 TTS、Episode Profiles,比 Notebook LM 更灵活
内容转换引擎——内置可配置 pipeline,可以嵌入自动化工作流
完整 REST API——所有功能可被脚本/自动化调用,Notebook LM 做不到
Docker 部署极简——两分钟上线,Ollama 一键集成免费本地运行
7 语言 UI 含中文——对国内用户友好
➖ 缺点:
单人维护(Bus Factor = 1)——作者 Luis Novo 是唯一核心贡献者,如果他停更整个项目就会停滞
PDF 解析能力不如 Notebook LM——复杂版式表格/手写文档处理是短板
147 Open Issues + 19 PR 积压——社区贡献消化速度偏慢
SurrealDB 学习曲线——小众数据库,调优和排查的社区资源有限
播客非流式生成——内容多时等待感明显
安全历史有污点——v1.8.4 之前存在 RCE(CVSS 9.2)级别漏洞,虽然已修复但提醒你保持更新

// 适合谁用

✅ 推荐使用
• 有隐私需求的研究者/分析师(数据不想上云)
• 想用国产模型(DeepSeek/Qwen)的研究工作流
• 需要 API 集成到自动化管道的团队
• 预算敏感、想用 Ollama 免费本地模型
• 需要多语言播客输出(Notebook LM 以英文为主)
❌ 暂不推荐
• 重度依赖复杂 PDF 表格/扫描件处理(用 Notebook LM 更稳)
• 对稳定性要求极高的企业级生产环境(单人维护有风险)
• 只做简单文档问答不需要研究管理功能(Kotaemon 更轻量)
• 希望完全零配置开箱即用(需要自己配 API key)

// links

GitHub: lfnovo/open-notebook
官方网站: open-notebook.ai
Discord 社区
Esperanto 多模型适配库(项目核心技术依赖)
SurrealDB 官方文档