AutoNotes is a powerful web-based transcription and summarization tool that combines the capabilities of Whisper, Ollama, and yt-dlp. It allows users to upload or download audio (e.g., from YouTube), transcribe it, summarize its content, and chat with a language model—all from an intuitive and interactive UI.
- 🔉 Audio upload with drag-and-drop UI
- 🧠 Whisper-based transcription
- ✍️ Ollama-powered summarization and chatbot
- 📥 YouTube audio downloader via
yt-dlp
- 📋 Clipboard-aware auto-fill for YouTube links
- 📂 Optional file storage to persist downloaded files
- 💬 Prompt templates with click-to-insert and editable chat
- 🔒 Click-to-copy that excludes AI's inner
<think>
thoughts
- Python 3.8+
- yt-dlp installed and available in PATH
- A running Ollama instance
- Whisper model (e.g.,
medium
) will be downloaded on first run
Install using requirements.txt
:
pip install -r requirements.txt
git clone https://github.com/your-username/AutoNotes.git
cd AutoNotes
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
flask run
Then open http://localhost:5000 in your browser.
You can override default settings with environment variables:
OLLAMA_API=http://localhost:11434/api/chat
LLM_MODEL=deepseek-r1:14b
WHISPER_MODEL_DIR=./models/whisper
To run the app with a single command like autonote
, follow these steps:
-
Create an executable script called
autonote
:touch autonote chmod +x autonote
-
Paste the following into the script:
#!/bin/bash cd /your/path/to/AutoNotes source .venv/bin/activate flask run
-
Move it to a directory in your
$PATH
:sudo mv autonote /usr/local/bin/autonote
Now run:
autonote
- Downloaded audio files are saved to
/tmp
by default and cleaned up after summarization. - If the Store button is clicked, the file is moved to
./storage/
and retained.
- 🧑🎓 Students summarizing lectures
- 🎙️ Podcasters extracting show notes
- 📽️ YouTubers creating video abstracts
- 💼 Professionals capturing meeting takeaways
Feel free to open issues or pull requests to improve the tool!