NotebookLMClone / README.md
Hitakshi26's picture
Pin python to 3.10 to fix audioop crash
e4881ef
---
title: NotebookLM Clone (GPP1)
emoji: 📓
colorFrom: blue
colorTo: pink
sdk: gradio
sdk_version: "4.44.1"
python_version: "3.10"
app_file: app.py
pinned: false
hf_oauth: true
---
# NotebookLM Clone (HF OAuth + Chroma + RAG)
## Overview
This project is a simplified clone of Google NotebookLM. Users can create multiple notebooks, upload sources (PDF/PPTX/TXT/URL), chat with their sources using Retrieval-Augmented Generation (RAG) with citations, and generate study artifacts (report, quiz, podcast).
## Features
- HF OAuth login (per-user isolation)
- Multi-notebook support: create/rename/delete
- Ingestion: PDF / PPTX / TXT / URL
- Chunking + Embedding (Sentence-Transformers all-MiniLM-L6-v2)
- Vector search using ChromaDB (persistent per notebook)
- Chat with citations
- Artifact generation:
- report (.md)
- quiz with answer key (.md)
- podcast transcript (.md) + audio (.mp3)
## Environment Variables
### Hugging Face Space
- DATA_ROOT=/data
## Local Dev
1. Create venv + install dependencies:
- pip install -r requirements.txt
2. Run:
- python app.py
Note: HF OAuth is best tested in a Space.