A movie recommender that hedges its bets — instead of picking one recommendation strategy, it blends two, so a thin user history doesn't leave the whole system guessing.
Why hybrid
Pure collaborative filtering (recommend what similar users liked) breaks down for anyone without much rating history — the classic cold-start problem. Pure content-based filtering (recommend what's textually similar to what you liked) avoids that but misses the "people like you also loved this, for reasons the plot summary won't tell you" signal entirely. Blending both means the system leans on whichever signal is actually available for a given user.
How the matching works
Content-based similarity comes from cosine similarity over vectorized movie metadata — genres, keywords, cast — processed with NLTK before it's compared. Collaborative filtering runs over user-rating patterns with the same similarity math, and the two scores combine into a single ranked list.
Interface
The whole thing is wrapped in a Streamlit app — pick a movie you like, get back a ranked list of recommendations, no separate frontend build needed. For a project centered on the recommendation logic itself, that let the interface stay out of the way.