在 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 本地替代品”。

核心特性

  1. 🔒 隐私第一 (Privacy-First)

    • 数据完全存储在本地(基于 SurrealDB),无需上传第三方云端。
    • 支持 100% 离线运行(配合 Ollama)。
  2. 🤖 拒绝厂商锁定 (Multi-Model)

    • 支持 16+ 种 AI 提供商:OpenAI, Anthropic, Ollama, LM Studio, DeepSeek, Google, Groq 等。
    • 支持推理模型:原生支持 DeepSeek-R1 和 Qwen3 等具备“思考”能力的模型。
  3. 🎙️ 强大的播客生成 (Pro Podcasts)

    • 比 NotebookLM 更灵活:支持 1-4 位扬声器(Google 仅限 2 位)。
    • 支持自定义“剧集配置”(Episode Profiles),不仅仅是简单的对话。
  4. 📚 全能资料管理

    • 支持 PDF、YouTube 视频、音频文件、网页链接、Office 文档等。
    • 三栏式布局:左侧源文件、中间笔记、右侧 AI 对话(v1.0 采用了全新的 Next.js 前端,响应更丝滑)。
  5. ⚡ 深度自定义

    • 提供完整的 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:访问与配置

  1. 打开浏览器:访问 http://localhost:8502(如果是服务器部署,换成对应的 IP)。
  2. 端口说明
    • 8502:是你看到的 Web 界面。
    • 5055:是后台 API,Web 界面会向这个端口发送请求。确保防火墙放行了这两个端口。
  3. 模型设置
    • 进入设置页面。
    • DeepSeek / Ollama 用户:选择 "OpenAI Compatible" 提供商。
    • Base URL
      • 如果是 Docker 内部访问宿主机 Ollama,通常填 http://host.docker.internal:11434/v1
      • 如果是公网/局域网 API,填对应的 http://ip:port/v1
    • Model Name:填入 deepseek-r1 或 llama3

🛠️ 常见问题 (Troubleshooting)

由于架构变更,新手最容易遇到以下问题:

  1. 界面白屏或报错 "Unable to connect"

    • 原因:前端(8502)无法连接到后端(5055)。
    • 解决:检查 docker-compose.yml 中是否暴露了 5055 端口。如果是远程部署(如 NAS、云服务器),必须在环境变量中设置 API_URL=http://你的服务器IP:5055,不要用 localhost
  2. 如何更新版本?

    • 运行 docker compose pull 拉取最新的 v1-latest-single 镜像,然后重新 up -d

💡 最佳实践场景

  1. DeepSeek + 研报分析
    上传复杂的金融 PDF,配置 DeepSeek-R1 模型,利用其强大的推理能力生成深度摘要,完全无需担心数据泄露给外部 AI 公司。
  2. 学习型播客制作
    将原本枯燥的技术文档或课堂录音导入,生成一段双人对话的英文播客,在通勤路上磨耳朵。
  3. 构建私有知识库
    利用其向量搜索功能,在数千份文档中快速定位信息,且这一切都运行在你自己的硬盘上。

结语

Open Notebook 是开源社区对“AI 民主化”的有力实践。它证明了我们不需要为了便利性而牺牲隐私,也不需要被绑定在单一巨头的生态系统中。

无论你是想用 DeepSeek 这种强力国产模型来处理文档,还是单纯想保护自己的研究数据,Open Notebook 都值得你尝试。


觉得有用的话,别忘了去 GitHub 给作者点个 Star 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐