Personal
Local RAG: studying with PDF notes
App that answers questions, summarizes and generates practice questions from PDF notes, with an LLM running on your own PC.
Images
Context
Personal project to study with my own notes without sending the files to external services.
Problem
Finding answers across many PDFs for a course takes time, and cloud AI tools require uploading your own material.
My role
End-to-end design and implementation: backend, REST API, frontend and tests.
Solution
Flask backend that processes the PDFs, generates embeddings with Ollama (nomic-embed-text) and answers with qwen2.5:7b, citing file and page. React + TypeScript frontend.
Technical decisions
- Local models with Ollama so files never leave the computer.
- Answers that cite file and page so they can be verified.
- Logic split into services (PDF processing, embeddings, RAG and study) and a REST API under /api.
- 42 tests with pytest and a mocked Ollama, to test without depending on the model.
Outcome
On the test machine (RTX 4050, 16 GB) it answers a question in 5–10 s and processes about 10 pages every 2 s.
