开源版 NotebookLM:Open Notebook 深度体验与部署指南
OpenNotebook:NotebookLM的开源替代方案,支持本地部署和多模型选择 OpenNotebook是一个隐私优先的开源知识管理工具,完美复刻了Google NotebookLM的核心功能,包括文档处理、AI交互和播客生成。其突出优势在于支持100%本地部署,数据无需上传云端,并兼容DeepSeek、OpenAI、Ollama等16+种AI模型。相比NotebookLM,它提供更灵活的
在 AI 辅助学习和研究领域,Google 的 NotebookLM 无疑是明星产品。它能将 PDF、网页、音频转化为可交互的知识库,甚至生成“播客”来讲解内容。
但对于开发者和隐私敏感用户来说,NotebookLM 有两个痛点:数据必须上传云端 以及 仅能使用 Google 的模型。
今天推荐的 Open Notebook 是一个完美的开源替代方案。它不仅复刻了核心功能(包括多扬声器播客生成),更重要的是它隐私优先、支持 100% 本地部署,并且兼容 DeepSeek、OpenAI、Ollama 等几乎所有主流模型。如果你对更多 AI 工具感兴趣,可以访问 AI225网址导航。
项目地址:https://github.com/lfnovo/open-notebook
开源协议:MIT License
为什么选择 Open Notebook?
Open Notebook 的目标非常明确:“一个隐私优先、多模型支持、全功能的 NotebookLM 本地替代品”。
核心特性
-
🔒 隐私第一 (Privacy-First):
- 数据完全存储在本地(基于 SurrealDB),无需上传第三方云端。
- 支持 100% 离线运行(配合 Ollama)。
-
🤖 拒绝厂商锁定 (Multi-Model):
- 支持 16+ 种 AI 提供商:OpenAI, Anthropic, Ollama, LM Studio, DeepSeek, Google, Groq 等。
- 支持推理模型:原生支持 DeepSeek-R1 和 Qwen3 等具备“思考”能力的模型。
-
🎙️ 强大的播客生成 (Pro Podcasts):
- 比 NotebookLM 更灵活:支持 1-4 位扬声器(Google 仅限 2 位)。
- 支持自定义“剧集配置”(Episode Profiles),不仅仅是简单的对话。
-
📚 全能资料管理:
- 支持 PDF、YouTube 视频、音频文件、网页链接、Office 文档等。
- 三栏式布局:左侧源文件、中间笔记、右侧 AI 对话(v1.0 采用了全新的 Next.js 前端,响应更丝滑)。
-
⚡ 深度自定义:
- 提供完整的 REST API(Swagger文档),方便二次开发。
- 支持自定义内容转换操作(Transformations)。
Open Notebook vs Google NotebookLM
| 特性 | Open Notebook (开源) | Google NotebookLM |
|---|---|---|
| 数据隐私 | 本地存储,完全私有 | 需上传至 Google 云端 |
| AI 模型 | 任选 (DeepSeek, GPT-4o, Llama3...) | 仅限 Google Gemini |
| 播客生成 | 1-4 人对话,高度可定制 | 仅 2 人对话 |
| 上下文控制 | 3 级颗粒度控制 | 仅全量上下文 |
| API 接口 | 提供完整 REST API | 无 |
| 部署方式 | Docker / 本地 / 私有云 | SaaS 服务 |
🚀 极速上手:Docker Compose 部署指南
注意: v1.0 版本架构升级为前后端分离(Next.js + FastAPI),部署时需要同时暴露两个端口。且官方推荐使用 v1-latest-single 镜像,将所有组件打包在一起,最适合个人使用。
前置要求
- 已安装 Docker 和 Docker Compose。
- (可选) 本地模型需提前安装 Ollama。
步骤 1:创建配置文件
在本地创建一个目录(例如 open-notebook),并在其中创建一个名为 docker-compose.yml 的文件,内容如下:
services:
open_notebook:
# 使用包含所有组件的 v1 单一镜像
image: lfnovo/open_notebook:v1-latest-single
ports:
- "8502:8502" # Web UI (浏览器访问端口)
- "5055:5055" # API 后端 (必须暴露,用于前端通信)
environment:
# 如果你有 OpenAI Key,填在这里(或者启动后在界面设置)
- OPENAI_API_KEY=your_key_here
# === 关键网络配置 ===
# 如果是本地电脑访问,无需设置 API_URL (默认 localhost)
# 如果部署在远程服务器/NAS,必须取消注释并修改为服务器 IP
# - API_URL=http://192.168.x.x:5055
# 数据库配置 (使用内置 SurrealDB)
- SURREAL_URL=ws://localhost:8000/rpc
- SURREAL_USER=root
- SURREAL_PASSWORD=root
- SURREAL_NAMESPACE=open_notebook
- SURREAL_DATABASE=production
volumes:
- ./notebook_data:/app/data # 数据持久化目录
- ./surreal_data:/mydata # 数据库持久化目录
restart: always
步骤 2:启动服务
在终端运行:
docker compose up -d
步骤 3:访问与配置
- 打开浏览器:访问
http://localhost:8502(如果是服务器部署,换成对应的 IP)。 - 端口说明:
- 8502:是你看到的 Web 界面。
- 5055:是后台 API,Web 界面会向这个端口发送请求。确保防火墙放行了这两个端口。
- 模型设置:
- 进入设置页面。
- DeepSeek / Ollama 用户:选择 "OpenAI Compatible" 提供商。
- Base URL:
- 如果是 Docker 内部访问宿主机 Ollama,通常填
http://host.docker.internal:11434/v1。 - 如果是公网/局域网 API,填对应的
http://ip:port/v1。
- 如果是 Docker 内部访问宿主机 Ollama,通常填
- Model Name:填入
deepseek-r1或llama3。
🛠️ 常见问题 (Troubleshooting)
由于架构变更,新手最容易遇到以下问题:
-
界面白屏或报错 "Unable to connect":
- 原因:前端(8502)无法连接到后端(5055)。
- 解决:检查
docker-compose.yml中是否暴露了5055端口。如果是远程部署(如 NAS、云服务器),必须在环境变量中设置API_URL=http://你的服务器IP:5055,不要用localhost。
-
如何更新版本?
- 运行
docker compose pull拉取最新的v1-latest-single镜像,然后重新up -d。
- 运行
💡 最佳实践场景
- DeepSeek + 研报分析:
上传复杂的金融 PDF,配置 DeepSeek-R1 模型,利用其强大的推理能力生成深度摘要,完全无需担心数据泄露给外部 AI 公司。 - 学习型播客制作:
将原本枯燥的技术文档或课堂录音导入,生成一段双人对话的英文播客,在通勤路上磨耳朵。 - 构建私有知识库:
利用其向量搜索功能,在数千份文档中快速定位信息,且这一切都运行在你自己的硬盘上。
结语
Open Notebook 是开源社区对“AI 民主化”的有力实践。它证明了我们不需要为了便利性而牺牲隐私,也不需要被绑定在单一巨头的生态系统中。
无论你是想用 DeepSeek 这种强力国产模型来处理文档,还是单纯想保护自己的研究数据,Open Notebook 都值得你尝试。
觉得有用的话,别忘了去 GitHub 给作者点个 Star
更多推荐

所有评论(0)