← Back to Home

Open Notebook — Self-Host Your Own NotebookLM Alternative with Privacy and Flexibility

Open Notebook — Self-Host Your Own NotebookLM Alternative

Google's NotebookLM demonstrated the power of AI-powered research notebooks: upload documents, ask questions, get AI-generated summaries and even podcasts. But it comes with a catch — your data lives on Google's servers, you're limited to Google's models, and customization is non-existent.

Open Notebook is the open-source answer. With 29,700+ GitHub stars and an MIT license, it gives you the same NotebookLM experience — and then some — entirely on your infrastructure. You choose the AI providers (18+ supported), control every aspect of data privacy, and can even orchestrate everything via a REST API.

Open Notebook Architecture

Why Is It Trending?

Open Notebook has exploded in popularity for several reasons:

  1. Privacy backlash against Big Tech AI — Users want their research data to stay private, not feed Google's or OpenAI's training pipelines
  2. AI model diversity — The ability to use Ollama for free local inference, or mix OpenAI for chat with Groq for speed
  3. Podcast generation — Multi-speaker AI podcasts (1–4 voices) far surpass NotebookLM's 2-speaker limit
  4. Self-hosting renaissance — Docker-based deployment makes it accessible to anyone with a server
  5. Open source extensibility — Full REST API, MCP integration, and active community on Discord

Prerequisites

  • A server with Docker and Docker Compose installed (any Linux VPS, Raspberry Pi, or local machine)
  • An AI provider API key (OpenAI, Anthropic, Groq — or none if using Ollama locally)
  • 2 GB RAM minimum (4 GB recommended for production use)

Architecture Overview

Open Notebook uses a three-tier architecture:

Component Technology Port Role
Frontend Next.js / React 8502 Web UI for notebooks, chat, settings
Backend Python / FastAPI 5055 Core logic, AI orchestration, REST API
Database SurrealDB 8000 Document store for notebooks, sources, notes

The frontend communicates with the FastAPI backend, which handles all business logic: document ingestion, RAG (Retrieval-Augmented Generation), podcast generation, and AI provider routing. SurrealDB stores all data — notebooks, sources, notes, API key configurations, and transformation results.

Installation

Deploying Open Notebook takes about two minutes:

1. Create the Docker Compose file

curl -o docker-compose.yml https://raw.githubusercontent.com/lfnovo/open-notebook/main/docker-compose.yml

2. Set your encryption key

Edit the docker-compose.yml and change:

- OPEN_NOTEBOOK_ENCRYPTION_KEY=change-me-to-a-secret-string

Replace change-me-to-a-secret-string with a strong, unique secret.

3. Start the services

docker compose up -d

Wait 15–20 seconds, then open http://localhost:8502.

4. Configure an AI provider

  1. Go to Settings → API Keys
  2. Click Add Credential
  3. Choose your provider (OpenAI, Anthropic, Google, Groq, etc.)
  4. Paste your API key and click Save
  5. Click Test Connection → Discover Models → Register Models

Free Local AI with Ollama

For a fully local, zero-cost setup, use the Ollama compose profile:

curl -O https://raw.githubusercontent.com/lfnovo/open-notebook/main/examples/docker-compose-ollama.yml
docker compose -f docker-compose-ollama.yml up -d

This deploys Ollama alongside Open Notebook, letting you run llama3, mistral, or other local models.

Configuration

Available Environment Variables

Variable Description Default
OPEN_NOTEBOOK_ENCRYPTION_KEY Encrypts API keys in the database change-me-to-a-secret-string
SURREAL_URL SurrealDB connection URL ws://surrealdb:8000/rpc
SURREAL_USER Database user root
SURREAL_PASSWORD Database password root
PASSWORD Optional UI password protection (none)

Password Protection

For public deployments, set the PASSWORD environment variable to require login before accessing the UI.

Key Features

Multi-Notebook Organization

Create separate notebooks for different research projects. Each notebook has its own sources, notes, and chat history.

Universal Content Support

Upload PDFs, videos, audio files, web pages, Office documents, and more. Open Notebook indexes everything for search and AI context.

Multi-Model AI (18+ Providers)

Choose from OpenAI, Anthropic, Ollama, Google, Groq, Mistral, DeepSeek, Perplexity, xAI, OpenRouter, and more. Each provider can be used for different tasks — text generation, embeddings, speech-to-text, and text-to-speech.

Podcast Generation

Create professional AI podcasts with 1–4 speakers. Customize episode profiles, speaker voices, and script style. This is the standout feature — NotebookLM only supports 2 speakers with no customization.

Intelligent Search

Full-text and vector search across all your content. The "Ask" mode uses RAG to automatically find relevant chunks, while "Chat" sends full context to the LLM.

REST API

Every feature is accessible via a programmatic REST API at http://localhost:5055/docs (Swagger UI). Automate notebook creation, source ingestion, and transformations.

Verification Checklist

After deployment, verify everything works:

  • Web UI accessible at http://localhost:8502
  • REST API accessible at http://localhost:5055/docs
  • Can add an AI provider API key in Settings
  • Can create a new notebook
  • Can upload a PDF or add a web page as a source
  • Can chat with AI about the source content
  • Podcast generation works (select sources → Generate Podcast)
  • Search returns results from ingested content

Resources

← Retour à l'Accueil

Open Notebook — Hébergez Votre Propre Alternative à NotebookLM avec Confidentialité et Flexibilité

Open Notebook — Hébergez Votre Propre Alternative à NotebookLM

NotebookLM de Google a démontré la puissance des cahiers de recherche augmentés par l'IA : importez des documents, posez des questions, obtenez des résumés et même des podcasts générés par IA. Mais cela a un prix — vos données vivent sur les serveurs de Google, vous êtes limité à leurs modèles, et la personnalisation est inexistante.

Open Notebook est la réponse open-source. Avec plus de 29 700 étoiles GitHub et une licence MIT, il offre la même expérience NotebookLM — et bien plus — entièrement sur votre infrastructure. Vous choisissez les fournisseurs d'IA (18+ supportés), contrôlez chaque aspect de la confidentialité des données, et pouvez même orchestrer le tout via une API REST.

Architecture Open Notebook

Pourquoi Est-Il Tendance ?

Open Notebook a explosé en popularité pour plusieurs raisons :

  1. Réaction contre la confidentialité des GAFAM — Les utilisateurs veulent que leurs données de recherche restent privées
  2. Diversité des modèles d'IA — Utilisez Ollama pour l'inférence locale gratuite, ou mixez OpenAI pour le chat avec Groq pour la vitesse
  3. Génération de podcasts — Podcasts IA multi-intervenants (1 à 4 voix) surpassant la limite de 2 intervenants de NotebookLM
  4. Essor de l'auto-hébergement — Le déploiement Docker le rend accessible à tous
  5. Extensibilité open-source — API REST complète, intégration MCP, et une communauté active sur Discord

Prérequis

  • Un serveur avec Docker et Docker Compose installé (VPS Linux, Raspberry Pi, ou machine locale)
  • Une clé API d'un fournisseur d'IA (OpenAI, Anthropic, Groq — ou rien si vous utilisez Ollama localement)
  • 2 Go de RAM minimum (4 Go recommandés pour une utilisation en production)

Architecture

Open Notebook utilise une architecture à trois niveaux :

Composant Technologie Port Rôle
Frontend Next.js / React 8502 Interface utilisateur
Backend Python / FastAPI 5055 Logique métier, orchestration IA, API REST
Base de données SurrealDB 8000 Stockage des notebooks, sources, notes

Le frontend communique avec le backend FastAPI, qui gère toute la logique métier : ingestion de documents, RAG (génération augmentée par récupération), génération de podcasts, et routage des fournisseurs d'IA. SurrealDB stocke toutes les données.

Installation

Le déploiement prend environ deux minutes :

1. Créez le fichier Docker Compose

curl -o docker-compose.yml https://raw.githubusercontent.com/lfnovo/open-notebook/main/docker-compose.yml

2. Définissez votre clé de chiffrement

Modifiez docker-compose.yml et changez :

- OPEN_NOTEBOOK_ENCRYPTION_KEY=change-me-to-a-secret-string

Remplacez change-me-to-a-secret-string par une clé forte et unique.

3. Démarrez les services

docker compose up -d

Attendez 15 à 20 secondes, puis ouvrez http://localhost:8502.

4. Configurez un fournisseur d'IA

  1. Allez dans Paramètres → Clés API
  2. Cliquez sur Ajouter un identifiant
  3. Choisissez votre fournisseur (OpenAI, Anthropic, Google, Groq, etc.)
  4. Collez votre clé API et cliquez sur Enregistrer
  5. Cliquez sur Tester la connexion → Découvrir les modèles → Enregistrer les modèles

IA Locale Gratuite avec Ollama

Pour une installation entièrement locale et gratuite :

curl -O https://raw.githubusercontent.com/lfnovo/open-notebook/main/examples/docker-compose-ollama.yml
docker compose -f docker-compose-ollama.yml up -d

Configuration

Variables d'Environnement

Variable Description Défaut
OPEN_NOTEBOOK_ENCRYPTION_KEY Chiffre les clés API dans la base change-me-to-a-secret-string
SURREAL_URL URL de connexion SurrealDB ws://surrealdb:8000/rpc
SURREAL_USER Utilisateur de la base root
SURREAL_PASSWORD Mot de passe de la base root
PASSWORD Protection par mot de passe UI (aucun)

Protection par Mot de Passe

Pour les déploiements publics, définissez la variable PASSWORD pour exiger une connexion avant d'accéder à l'interface.

Fonctionnalités Clés

Organisation Multi-Notebooks

Créez des cahiers séparés pour différents projets de recherche. Chaque notebook a ses propres sources, notes et historique de chat.

Support de Contenu Universel

Importez des PDFs, vidéos, fichiers audio, pages web, documents Office, et plus. Open Notebook indexe tout pour la recherche et le contexte IA.

IA Multi-Modèle (18+ Fournisseurs)

Choisissez parmi OpenAI, Anthropic, Ollama, Google, Groq, Mistral, DeepSeek, Perplexity, xAI, OpenRouter, et plus. Chaque fournisseur peut être utilisé pour différentes tâches.

Génération de Podcasts

Créez des podcasts IA professionnels avec 1 à 4 intervenants. Personnalisez les profils d'épisodes, les voix des intervenants et le style du script.

Recherche Intelligente

Recherche full-text et vectorielle dans tout votre contenu. Le mode « Demander » utilise le RAG pour trouver automatiquement les passages pertinents.

API REST

Chaque fonctionnalité est accessible via une API REST programmatique à http://localhost:5055/docs.

Liste de Vérification

  • Interface web accessible sur http://localhost:8502
  • API REST accessible sur http://localhost:5055/docs
  • Possibilité d'ajouter une clé API fournisseur dans les Paramètres
  • Possibilité de créer un nouveau notebook
  • Possibilité d'importer un PDF ou d'ajouter une page web comme source
  • Possibilité de discuter avec l'IA sur le contenu de la source
  • La génération de podcasts fonctionne
  • La recherche retourne des résultats du contenu importé

Ressources