@wsl8297: 又挖到一个能打的 Google NotebookLM 开源替代:Open Notebook。私有化部署,数据全程握在自己手里,隐私更安心。 它兼容 16+ 主流 AI 模型提供商,支持上传 PDF、网页、视频、音频等素材,直接一键生成结构…
摘要
介绍了一个名为Open Notebook的开源工具,作为Google NotebookLM的隐私保护替代方案,支持私有化部署和多模型集成,可处理多种格式内容并生成播客。
查看缓存全文
缓存时间: 2026/05/11 14:51
又挖到一个能打的 Google NotebookLM 开源替代:Open Notebook。私有化部署,数据全程握在自己手里,隐私更安心。 它兼容 16+ 主流 AI 模型提供商,支持上传 PDF、网页、视频、音频等素材,直接一键生成结构完整、像样的多人播客内容。 GitHub:https://github.com/lfnovo/open-notebook… 亮点一览: - 私有化部署:不出本地/自家服务器,数据自己管 - 多模型支持:OpenAI、Anthropic、Ollama 等 16+ 提供商可选 - 多格式输入:PDF、网页、视频、音频等都能处理 - 播客生成:支持 1-4 位说话者,自定义角色与配置 - 智能检索对话:上下文感知,问答更贴近你的资料库 - REST API:接口齐全,方便二次开发与系统集成 安装方式很多,建议直接用 Docker 一键部署,拉起就能用。想找 NotebookLM 平替的,可以试试这个。
lfnovo/open-notebook
Source: https://github.com/lfnovo/open-notebook
Open Notebook
An open source, privacy-focused alternative to Google's Notebook LM!
Join our Discord server for help, to share workflow ideas, and suggest features!
Checkout our website »
📚 Get Started
·
📖 User Guide
·
✨ Features
·
🚀 Deploy
A private, multi-model, 100% local, full-featured alternative to Notebook LM

In a world dominated by Artificial Intelligence, having the ability to think 🧠 and acquire new knowledge 💡, is a skill that should not be a privilege for a few, nor restricted to a single provider.
Open Notebook empowers you to:
- 🔒 Control your data - Keep your research private and secure
- 🤖 Choose your AI models - Support for 18+ providers including OpenAI, Anthropic, Ollama, LM Studio, and more
- 📚 Organize multi-modal content - PDFs, videos, audio, web pages, and more
- 🎙️ Generate professional podcasts - Advanced multi-speaker podcast generation
- 🔍 Search intelligently - Full-text and vector search across all your content
- 💬 Chat with context - AI conversations powered by your research
- 🌐 Multi-language UI - English, Portuguese, Chinese (Simplified & Traditional), Japanese, Russian, and Bengali support
Learn more about our project at https://www.open-notebook.ai
🆚 Open Notebook vs Google Notebook LM
| Feature | Open Notebook | Google Notebook LM | Advantage |
|---|---|---|---|
| Privacy & Control | Self-hosted, your data | Google cloud only | Complete data sovereignty |
| AI Provider Choice | 18+ providers (OpenAI, Anthropic, Ollama, LM Studio, etc.) | Google models only | Flexibility and cost optimization |
| Podcast Speakers | 1-4 speakers with custom profiles | 2 speakers only | Extreme flexibility |
| Content Transformations | Custom and built-in | Limited options | Unlimited processing power |
| API Access | Full REST API | No API | Complete automation |
| Deployment | Docker, cloud, or local | Google hosted only | Deploy anywhere |
| Citations | Basic references (will improve) | Comprehensive with sources | Research integrity |
| Customization | Open source, fully customizable | Closed system | Unlimited extensibility |
| Cost | Pay only for AI usage | Free tier + Monthly subscription | Transparent and controllable |
Why Choose Open Notebook?
- 🔒 Privacy First: Your sensitive research stays completely private
- 💰 Cost Control: Choose cheaper AI providers or run locally with Ollama
- 🎙️ Better Podcasts: Full script control and multi-speaker flexibility vs limited 2-speaker deep-dive format
- 🔧 Unlimited Customization: Modify, extend, and integrate as needed
- 🌐 No Vendor Lock-in: Switch providers, deploy anywhere, own your data
Built With
🚀 Quick Start (2 Minutes)
Prerequisites
- Docker Desktop installed
- That’s it! (API keys configured later in the UI)
Step 1: Get docker-compose.yml
Option A: Download directly
curl -o docker-compose.yml https://raw.githubusercontent.com/lfnovo/open-notebook/main/docker-compose.yml
Option B: Create the file manually
Copy this into a new file called docker-compose.yml:
services:
surrealdb:
image: surrealdb/surrealdb:v2
command: start --log info --user root --pass root rocksdb:/mydata/mydatabase.db
user: root
ports:
- "8000:8000"
volumes:
- ./surreal_data:/mydata
restart: always
open_notebook:
image: lfnovo/open_notebook:v1-latest
ports:
- "8502:8502"
- "5055:5055"
environment:
- OPEN_NOTEBOOK_ENCRYPTION_KEY=change-me-to-a-secret-string
- SURREAL_URL=ws://surrealdb:8000/rpc
- SURREAL_USER=root
- SURREAL_PASSWORD=root
- SURREAL_NAMESPACE=open_notebook
- SURREAL_DATABASE=open_notebook
volumes:
- ./notebook_data:/app/data
depends_on:
- surrealdb
restart: always
Step 2: Set Your Encryption Key
Edit docker-compose.yml and change this line:
- OPEN_NOTEBOOK_ENCRYPTION_KEY=change-me-to-a-secret-string
to any secret value (e.g., my-super-secret-key-123)
Step 3: Start Services
docker compose up -d
Wait 15-20 seconds, then open: http://localhost:8502
Step 4: Configure AI Provider
- Go to Settings → API Keys
- Click Add Credential
- Choose your provider (OpenAI, Anthropic, Google, etc.)
- Paste your API key and click Save
- Click Test Connection → Discover Models → Register Models
Done! You’re ready to create your first notebook.
Need an API key? Get one from: OpenAI · Anthropic · Google · Groq (free tier)
Want free local AI? See examples/docker-compose-ollama.yml for Ollama setup
📚 More Installation Options
- With Ollama (Free Local AI) - Run models locally without API costs
- From Source (Developers) - For development and contributions
- Complete Installation Guide - All deployment scenarios
📖 Need Help?
- 🤖 AI Installation Assistant: CustomGPT to help you install
- 🆘 Troubleshooting: 5-minute troubleshooting guide
- 💬 Community Support: Discord Server
- 🐛 Report Issues: GitHub Issues
Star History
Provider Support Matrix
Thanks to the Esperanto library, we support this providers out of the box!
| Provider | LLM Support | Embedding Support | Speech-to-Text | Text-to-Speech |
|---|---|---|---|---|
| OpenAI | ✅ | ✅ | ✅ | ✅ |
| Anthropic | ✅ | ❌ | ❌ | ❌ |
| Groq | ✅ | ❌ | ✅ | ❌ |
| Google (GenAI) | ✅ | ✅ | ❌ | ✅ |
| Vertex AI | ✅ | ✅ | ❌ | ✅ |
| Ollama | ✅ | ✅ | ❌ | ❌ |
| Perplexity | ✅ | ❌ | ❌ | ❌ |
| ElevenLabs | ❌ | ❌ | ✅ | ✅ |
| Azure OpenAI | ✅ | ✅ | ❌ | ❌ |
| Mistral | ✅ | ✅ | ❌ | ❌ |
| DeepSeek | ✅ | ❌ | ❌ | ❌ |
| Voyage | ❌ | ✅ | ❌ | ❌ |
| xAI | ✅ | ❌ | ❌ | ❌ |
| OpenRouter | ✅ | ❌ | ❌ | ❌ |
| DashScope (Qwen) | ✅ | ❌ | ❌ | ❌ |
| MiniMax | ✅ | ❌ | ❌ | ❌ |
| OpenAI Compatible* | ✅ | ❌ | ❌ | ❌ |
*Supports LM Studio and any OpenAI-compatible endpoint
✨ Key Features
Core Capabilities
- 🔒 Privacy-First: Your data stays under your control - no cloud dependencies
- 🎯 Multi-Notebook Organization: Manage multiple research projects seamlessly
- 📚 Universal Content Support: PDFs, videos, audio, web pages, Office docs, and more
- 🤖 Multi-Model AI Support: 18+ providers including OpenAI, Anthropic, Ollama, Google, LM Studio, and more
- 🎙️ Professional Podcast Generation: Advanced multi-speaker podcasts with Episode Profiles
- 🔍 Intelligent Search: Full-text and vector search across all your content
- 💬 Context-Aware Chat: AI conversations powered by your research materials
- 📝 AI-Assisted Notes: Generate insights or write notes manually
Advanced Features
- ⚡ Reasoning Model Support: Full support for thinking models like DeepSeek-R1 and Qwen3
- 🔧 Content Transformations: Powerful customizable actions to summarize and extract insights
- 🌐 Comprehensive REST API: Full programmatic access for custom integrations
- 🔐 Optional Password Protection: Secure public deployments with authentication
- 📊 Fine-Grained Context Control: Choose exactly what to share with AI models
- 📎 Citations: Get answers with proper source citations
Podcast Feature
📚 Documentation
Getting Started
- 📖 Introduction - Learn what Open Notebook offers
- ⚡ Quick Start - Get up and running in 5 minutes
- 🔧 Installation - Comprehensive setup guide
- 🎯 Your First Notebook - Step-by-step tutorial
User Guide
- 📱 Interface Overview - Understanding the layout
- 📚 Notebooks - Organizing your research
- 📄 Sources - Managing content types
- 📝 Notes - Creating and managing notes
- 💬 Chat - AI conversations
- 🔍 Search - Finding information
Advanced Topics
- 🎙️ Podcast Generation - Create professional podcasts
- 🔧 Content Transformations - Customize content processing
- 🤖 AI Models - AI model configuration
- 🔌 MCP Integration - Connect with Claude Desktop, VS Code and other MCP clients
- 🔧 REST API Reference - Complete API documentation
- 🔐 Security - Password protection and privacy
- 🚀 Deployment - Complete deployment guides for all scenarios
🗺️ Roadmap
Upcoming Features
- Live Front-End Updates: Real-time UI updates for smoother experience
- Async Processing: Faster UI through asynchronous content processing
- Cross-Notebook Sources: Reuse research materials across projects
- Bookmark Integration: Connect with your favorite bookmarking apps
Recently Completed ✅
- Next.js Frontend: Modern React-based frontend with improved performance
- Comprehensive REST API: Full programmatic access to all functionality
- Multi-Model Support: 18+ AI providers including OpenAI, Anthropic, Ollama, LM Studio
- Advanced Podcast Generator: Professional multi-speaker podcasts with Episode Profiles
- Content Transformations: Powerful customizable actions for content processing
- Enhanced Citations: Improved layout and finer control for source citations
- Multiple Chat Sessions: Manage different conversations within notebooks
See the open issues for a full list of proposed features and known issues.
📖 Need Help?
- 🤖 AI Installation Assistant: We have a CustomGPT built to help you install Open Notebook - it will guide you through each step!
- New to Open Notebook? Start with our Getting Started Guide
- Need installation help? Check our Installation Guide
- Want to see it in action? Try our Quick Start Tutorial
🤝 Community & Contributing
Join the Community
- 💬 Discord Server - Get help, share ideas, and connect with other users
- 🐛 GitHub Issues - Report bugs and request features
- ⭐ Star this repo - Show your support and help others discover Open Notebook
Contributing
We welcome contributions! We’re especially looking for help with:
- Frontend Development: Help improve our modern Next.js/React UI
- Testing & Bug Fixes: Make Open Notebook more robust
- Feature Development: Build the coolest research tool together
- Documentation: Improve guides and tutorials
Current Tech Stack: Python, FastAPI, Next.js, React, SurrealDB Future Roadmap: Real-time updates, enhanced async processing
See our Contributing Guide for detailed information on how to get started.
📄 License
Open Notebook is MIT licensed. See the LICENSE file for details.
Community Support:
- 💬 Discord Server - Get help, share ideas, and connect with users
- 🐛 GitHub Issues - Report bugs and request features
- 🌐 Website - Learn more about the project
相似文章
@hasantoxr: Google 打造了 NotebookLM。现在一位开发者构建了一个更好的版本,可以将你的文件变成私有的 AI 研究助手……
Open Notebook 是一个开源、注重隐私的 Google NotebookLM 替代品,可本地运行并支持多种 AI 模型,用于研究辅助。
lfnovo/open-notebook
Google NotebookLM 的开源实现,具备更高的灵活性和更多功能,允许用户自行托管和定制笔记本 AI 体验。
@seclink: 有个哥们把 notebooklm 逆向做成了 api ,可以被 agent调用,最近这个开源项目, 在 github上涨粉挺凶的 ... 有人在闲鱼买 6块钱 一次,多文件生成notbooklm可视图,生成 AI PPT ,背后应该就是调…
一个开发者逆向工程了Google NotebookLM,并将其封装为非官方Python API和CLI工具,支持AI代理调用,可用于自动化研究、内容生成等,在GitHub上迅速走红。
joeseesun/qiaomu-anything-to-notebooklm
一个开源工具,利用Claude Code Skill和Google NotebookLM将多种来源的内容(网页、PDF、音频、视频等)转换为播客、PPT、思维导图等格式,并内置付费墙绕过功能。
@grgerwcwetwet: 推荐一个开源项目:qiaomu-anything-to-notebooklm。 有人用 Claude 做了个硬核工具,我看完只想说:知识管理党真的该收藏。 你随便丢进去内容——微信公众号、YouTube、播客、PDF、Word、Excel…
推荐一个开源项目 qiaomu-anything-to-notebooklm,基于 Claude 实现多源内容(微信公众号、YouTube、PDF 等)自动整理并生成播客、PPT、思维导图等,全程自然语言操作。
