← Back to work
RAGpack: Document-to-Vector-Store Ingestion Library
Turns a folder of documents into a searchable Qdrant index in one line: GPU-optional embeddings, optional GPU OCR for scanned PDFs, and fail-closed device selection. Installable from source.
- installable
- from source; CPU / GPU / OCR extras measured
- Py 3.10–3.12
- CI matrix, fully offline test suite measured
- fail-closed
- device="cuda" never silently drops to CPU measured
Context
Every RAG project starts by re-solving the same unglamorous problem: get a pile of documents into a vector store cleanly, without silent data loss. RAGpack is that step, extracted into a library so it stops being rewritten.
What I built
- One-line ingestion: point it at a directory, get a searchable Qdrant index, with embeddings on CPU or GPU.
- Optional GPU OCR for scanned and image-based PDFs.
- Fail-closed device selection: ask for
cudaand it will not quietly fall back to CPU and pretend everything is fine; it tells you.
Where it’s used
It is the ingestion engine under the RFC-corpus RAG and the blockchain vertical on this site: the same code, installable from source, with an offline test suite that runs on Python 3.10 through 3.12 in CI.