End-to-end semantic book recommendation system using embeddings + vector search, with category and emotion-based filtering in a Gradio dashboard.
- Takes a natural language query (example: "mystery thriller with detective")
- Retrieves similar books using semantic embeddings + vector search
- Supports category filtering and emotion-based sorting
- Displays results in an interactive Gradio dashboard
- Python, Pandas
- OpenAI embeddings + ChromaDB
- Hugging Face Transformers
- Gradio
- Data exploration:
01_data_exploration.ipynb - Vector search:
02_vector_search.ipynb - Text classification:
03_text_classification.ipynb - Emotion analysis:
04_emotion_analysis.ipynb - Gradio dashboard:
05_gradio_dashboard.ipynb
- Cleaned dataset from 6,810 records to 5,197 high-quality entries.
This repo currently contains the full pipeline as Jupyter notebooks. Packaging into a single runnable app (requirements.txt + app.py) is in progress.
See Final Report.pdf
