--- title: Pensieve emoji: 🎙️ colorFrom: gray colorTo: red sdk: gradio sdk_version: 6.17.3 app_file: app.py pinned: false license: mit short_description: Speak a thought, get a markdown note, then chat with them tags: - gradio - build-small-hackathon - track:backyard - sponsor:modal - sponsor:cohere - achievement:offbrand - best-demo models: - Qwen/Qwen3-8B - Qwen/Qwen3-Embedding-0.6B - CohereLabs/cohere-transcribe-03-2026 --- # Pensieve Speak a thought and Pensieve turns it into a clean markdown note in the background. Browse your growing collection of notes and ask questions across everything you have captured. Capture is asynchronous: stop recording and the transcribe, summarise and index pipeline runs as a background job, so you can record the next thought right away. I built this for my dad, who is always going on walks and recording voice notes of his thoughts. Pensieve allows him to build a catalogue of his thoughts and recall them easier. ## Demo - Video: https://huggingface.co/spaces/build-small-hackathon/pensieve/resolve/main/pensieve-demo.mp4 - Social post: https://www.linkedin.com/feed/update/urn:li:activity:7472430389475610624/ ## How it works The front end is a dark, minimalist Gradio app with a bottom tab bar that installs to the home screen on an iphone as a progessive web app (PWA). All AI inference runs on Modal, and every model is under 32B parameters. - Record: capture audio, then a background job runs transcribe, summarise and index. - Jobs: a live view of each pipeline job and its stage. - Knowledge: a Chat and Notes view. Chat answers with RAG over your notes and cites sources. Notes lets you search and read your captured notes. ## Models (all < 32B) | Role | Model | Runs on | |------------|--------------------------------------|---------------| | ASR | CohereLabs/cohere-transcribe-03-2026 | Modal, L4 GPU | | Embeddings | Qwen/Qwen3-Embedding-0.6B | Modal, CPU | | LLM | Qwen/Qwen3-8B | Modal, L4 GPU | ## Future work First order of business would be to move the data into some user owned data storage (like google drive). right now its on a dataset repo, but its not private as I have access, although each user can't see eachothers data. I could would then speed up inference by using per-token cost API's instead of having to cold-start GPUs. I am currently using memory snapshots and that does seem to speed things up a lot. Improve RAG and prompting, currently using hybrid RAG with reciprocal rank fusion (RRF), but a re-ranker couldn't hurt.