Open Notebook: o NotebookLM do Google, mas no seu servidor

O Open Notebook é uma alternativa open source ao NotebookLM do Google. Roda via Docker no seu servidor, suporta qualquer LLM local ou na nuvem e mantém seus documentos sob seu controle.

Compartilhar
Open Notebook: o NotebookLM do Google, mas no seu servidor

O NotebookLM é uma ferramenta do Google lançada em 2023 que resolve um problema específico: você tem vários documentos sobre um tema (artigos, PDFs, transcrições, links) e quer conversar com uma IA que conheça o conteúdo deles, não o mundo inteiro.

Você cria um "notebook", joga as fontes lá dentro e a IA passa a responder perguntas baseada especificamente naquele material. Cada resposta vem com citação apontando de qual trecho do documento aquela informação veio. A IA também pode gerar resumos, listas de conceitos-chave e, em uma das funcionalidades mais comentadas, transformar o conteúdo em um podcast de conversa entre dois apresentadores gerados automaticamente.

É genuinamente útil. O problema é o que está implícito na proposta: seus documentos saem do seu computador e vão para os servidores do Google para serem processados.

Para uso pessoal com artigos públicos, isso pode não importar. Para pesquisa com dados sensíveis, documentos de trabalho, contratos, informações de clientes ou qualquer coisa que não deveria sair do seu controle, é um problema concreto de privacidade.

O Open Notebook existe para resolver exatamente isso.

O que é o Open Notebook

O Open Notebook é uma alternativa open source ao NotebookLM, criada por Luiz Novo e mantida publicamente no GitHub. A proposta é idêntica à do NotebookLM: um ambiente de pesquisa assistido por IA onde você carrega documentos e conversa com eles. A diferença é que tudo roda no seu servidor, com o modelo de linguagem que você escolher.

Ele suporta praticamente qualquer fonte de entrada: PDFs, links de páginas web, arquivos de áudio, arquivos de vídeo e texto simples. Cada arquivo adicionado é processado, dividido em pedaços menores, transformado em vetores de busca semântica e armazenado localmente para consulta.

Do lado dos modelos, você pode usar qualquer provedor: OpenAI (GPT-4o), Anthropic (Claude), Google Gemini, Groq, Mistral, DeepSeek, ou rodar completamente offline com Ollama ou LM Studio sem enviar nenhum dado para fora da sua máquina.

A estrutura de três camadas

O Open Notebook organiza o trabalho em três conceitos simples:

Notebook: o contêiner principal. Você cria um notebook para cada projeto ou tema de pesquisa. Todos os documentos e conversas dentro de um notebook compartilham o mesmo contexto, mas são completamente isolados de outros notebooks.

Sources (fontes): os documentos brutos que você adiciona. Quando você adiciona uma fonte, o sistema extrai o texto (com OCR para PDFs e transcrição de áudio para arquivos de voz), divide em fragmentos e indexa para busca semântica.

Notes (notas): as saídas processadas. Podem ser resumos gerados pela IA, insights extraídos, anotações manuais que você escreveu, ou o conteúdo capturado de uma conversa. As notas ficam densas e concentradas, o que as torna mais eficientes para o contexto da IA nas conversas seguintes do que as fontes brutas completas.

Chat vs. Ask: duas formas de consultar

O Open Notebook tem dois modos de consulta com propósitos distintos:

Chat: você seleciona quais fontes quer incluir no contexto e a IA recebe o texto completo dessas fontes. É conversacional e preciso quando você quer explorar o conteúdo de documentos específicos. O custo é que fontes grandes consomem mais tokens.

Ask: usa RAG (Retrieval-Augmented Generation). Você faz uma pergunta e o sistema busca automaticamente apenas os trechos mais relevantes para aquela pergunta em todas as fontes do notebook. Mais eficiente em custo e útil quando o notebook tem muitas fontes e você quer que a IA decida o que é relevante.

Como instalar via Docker Compose

A forma recomendada é Docker Compose. O projeto estima 5 minutos do zero até o sistema rodando.

Primeiro, clone o repositório e entre na pasta:

git clone https://github.com/lfnovo/open-notebook.git
cd open-notebook

Copie o arquivo de exemplo de variáveis de ambiente:

cp .env.example .env

Abra o .env e configure pelo menos uma chave de API de LLM. O exemplo mais simples é com OpenAI:

OPENAI_API_KEY=sua-chave-aqui

Se preferir rodar completamente offline com Ollama, configure:

OLLAMA_HOST=http://host.docker.internal:11434

(Esse endereço funciona se o Ollama estiver rodando no host fora do Docker. Se o Ollama também estiver em container, use o nome do serviço na rede Docker.)

Depois, suba os containers:

docker compose up -d

O Open Notebook vai estar disponível em http://localhost:3000.

Configuração com Ollama (completamente offline)

Para quem prefere privacidade total sem depender de APIs externas, o Ollama é a rota mais direta. Se você ainda não tem o Ollama instalado, o tutorial do Flateek sobre ferramentas indispensáveis no PC menciona o Ollama como uma das favoritas da comunidade.

Com o Ollama rodando, baixe um modelo:

# Um modelo leve e capaz para começar
ollama pull llama3.1:8b

# Ou algo maior se você tiver VRAM disponível
ollama pull qwen2.5:32b

No .env do Open Notebook, defina o modelo padrão:

OLLAMA_HOST=http://host.docker.internal:11434
DEFAULT_MODEL=ollama/llama3.1:8b

Com essa configuração, nenhum dado sai da sua máquina. O texto dos seus documentos é processado localmente, os embeddings são gerados localmente e as respostas da IA são geradas localmente.

Geração de podcast

Uma das funcionalidades que mais chama atenção, diretamente inspirada no NotebookLM, é a geração de podcast. O Open Notebook pode transformar o conteúdo de um notebook em uma conversa de áudio entre dois apresentadores gerados por voz sintética.

Para isso, é necessário configurar um provedor de TTS (text-to-speech) no .env. O projeto suporta a API de Text-to-Speech da OpenAI e outras. Com o TTS configurado, você seleciona as fontes que quer incluir e o sistema gera o roteiro e o áudio automaticamente.

Requisitos mínimos

Componente Mínimo Recomendado
RAM 4 GB 8 GB+
Armazenamento 2 GB para o app 10 GB+ para documentos
CPU Qualquer moderno Multi-core
GPU Não necessária Opcional (acelera Ollama)
Docker Sim Sim

Para que casos de uso faz mais sentido

O Open Notebook se encaixa bem em cenários onde você tem um volume de documentos sobre um tema e precisa navegar por eles eficientemente com ajuda de IA:

  • Pesquisa acadêmica: carregue papers, artigos e notas de campo em um notebook e converse com a literatura do tema.
  • Análise de documentos de trabalho: contratos, relatórios, transcrições de reuniões. Com o Ollama, nada sai da rede interna.
  • Estudo e aprendizado: carregue livros, tutoriais e documentações. Pergunte à IA para explicar conceitos em linguagem simples com base exatamente no material que você está estudando.
  • Pesquisa jornalística: fontes, documentos, transcrições de entrevistas, tudo indexado e consultável com citações.

Para uso casual com documentos públicos onde privacidade não é preocupação, o próprio NotebookLM do Google continua sendo uma opção válida e sem necessidade de infraestrutura própria.


Fontes e Links: