Spaces:
Sleeping
Sleeping
| title: Book Recommender | |
| emoji: ๐ | |
| colorFrom: gray | |
| colorTo: blue | |
| sdk: streamlit | |
| sdk_version: 1.41.1 | |
| app_file: app.py | |
| pinned: false | |
| short_description: A basic book recommender system | |
| Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference | |
| # Content-Based Book Recommender System | |
| This is a content-based book recommender system built using **Streamlit**. It takes a book title as input and generates up to 5 recommendations based on content similarity. The recommendations combine textual similarity (TF-IDF) and semantic similarity (Sentence Transformers). The system also handles typos and invalid inputs. | |
| --- | |
| ## Features | |
| 1. **Content-Based Recommendations**: | |
| - Combines TF-IDF and semantic similarity to recommend books. | |
| - Handles typos and approximate matches using fuzzy matching. | |
| 2. **Error Handling**: | |
| - Ensures graceful failure for invalid inputs or system errors. | |
| - Provides fallback recommendations when similarity scores are insufficient. | |
| 3. **Interactive UI**: | |
| - Built with Streamlit for a user-friendly interface. | |
| ## Dependencies and Functionality | |
| 1. pandas: | |
| Handles data loading, preprocessing, and manipulation. | |
| 2. scikit-learn: | |
| Provides TF-IDF vectorization and NearestNeighbors for similarity search. | |
| 3. sentence-transformers: | |
| Generates semantic embeddings for textual data. | |
| 4. numpy: | |
| Used for numerical computations like handling embeddings and arrays. | |
| 5. streamlit: | |
| Creates the interactive UI for the application. | |
| 6. rapidfuzz: | |
| Implements fuzzy matching for typos and approximate title matches. | |
| 7. re: | |
| Cleans special characters from book titles. |