Chapter 23
Module 2: Vector Search
Module 2: Vector Search
In this module, we extend the RAG pipeline from module 1 with vector search. Vector search matches documents by semantic meaning instead of exact keyword overlap. We start from embeddings and end with persistent vector indexes (sqlitesearch, PGVector) and ONNX-based embedders for lightweight deployments.
Lessons
The lessons cover vector search end to end, from embeddings to persistent indexes.
- What is Vector Search - Keyword search vs vector search, why it matters
- Embeddings - Turning text into vectors with sentence-transformers
- Embedding Our Dataset - Generating embeddings for the FAQ dataset
- Vector Search - Vector search with numpy
- Vector Search with minsearch - In-memory vector search
- RAG with Vector Search - Replacing keyword search with vector search in our RAG pipeline
- Vector Search with sqlitesearch - Persistent vector search backed by SQLite
- Vector Search with PGVector - Production vector search with PostgreSQL and pgvector
- ONNX Embedder (Optional) - Using ONNX Runtime instead of PyTorch for embeddings
- Next Steps - When to use vector search and what's next
Homework
Original workshop recording
This module was taught as a live workshop, which we chopped into the per-lesson videos above. To watch the full uncut recording:
Old content
Earlier cohorts taught vector search differently. See the archived materials for the 2024 and 2025 cohorts.
Notes
- Cohort 2026| Notes by Nitin Gupta
- Add your notes above this line
