Build a search box for a collection of blog posts that finds posts by meaning, not only exact words: "beginner python workshop" should also find "Intro to programming session". Compare keyword (TF-IDF) search with embedding-based search on the same queries.
Project idea · ungraded
Semantic Search for the Club Blog
You will use
Milestones
Build the smallest working version first. Ticks are saved in this browser only.
Stretch goals
- Add filters (author, date, tag) alongside the text search.
- Highlight the matching sentences in each result.
- Expose the search as a FastAPI endpoint for the website.
Data
Use the Epoch blog posts you can access, or any set of articles you write or collect. Sentence-embedding
models such as those in the sentence-transformers library download weights the first time they run.
Run it yourself
pip install scikit-learn numpy sentence-transformers
python search.py "beginner python workshop"