Skip to content

hetparekh16/movie_recommender_system

Repository files navigation

Movie Recommender System

A content-based movie and TV series recommendation system using natural language processing and similarity matching.

Live Demo - Click here

Features

  • Recommends movies and TV series based on content similarity.
  • Utilizes advanced NLP techniques through sentence transformers for better content understanding.
  • Supports both Hollywood and Bollywood content.
  • Processes metadata such as descriptions, genres, and director information.
  • Provides an interactive web interface built with Streamlit.

Tech Stack

  • Python 3.12+
  • Sentence Transformers: all-MiniLM-L6-v2 for embedding generation.
  • Pandas: Data manipulation and analysis.
  • Streamlit: Web application framework.
  • NumPy: Numerical operations.

Project Structure

.
├── data/
│   ├── processed_data/
│   │   ├── movies.csv
│   │   └── series.csv
│   └── raw_data/
│       ├── bollywood_movies.csv
│       ├── bollywood_series.csv
│       ├── hollywood_movies.csv
│       └── hollywood_series.csv
├── notebooks/
│   └── data_generator.ipynb
├── src/
    └── movie_recommender_system/
        ├── config.py
        ├── data_preprocessor.py
        ├── st_app.py
        └── text_similarities.py

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/movie-recommender-system.git
    cd movie-recommender-system
  2. Create and activate a virtual environment using uv:

    uv create .venv
    uv activate .venv
  3. Install dependencies:

    pip install -e .

Usage

  1. Start the Streamlit app:

    streamlit run src/movie_recommender_system/st_app.py
  2. Enter a movie or TV series title in the search box.

  3. Get personalized recommendations based on content similarity.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published