Back to list

Movie search service

  • Python
  • PostgreSQL

With the usage of neural networks and algorithms, the service will help you find a movie by its description or recommend a similar film to the one you liked.

Have you ever been in a situation when attempting to find a movie title, but you only remember its storyline, some main events, or actors? Or have you ever wanted to get a recommendation of a movie of the same genre or a similar theme, but online services do not allow you to customize your search enough?

Movie search service is perfect for such cases. With the usage of neural networks and algorithms, the service will help you find a movie by its description or recommend a similar film to the one you liked.

The system contains a parser that collects information from the IMDB website.

Milvus allows to store data in vector format and retrieve records from the database using different algorithms. In this case, the L2 norm, or Euclidean distance, was used to extract the most similar films for the input vector of the user's request.

The service has two search query modes: text query and a combination of text keywords. In both cases, the text query is converted into a vector by the BERT model and the most suitable results are extracted from the Milvus. If keywords are used as well, then the names/surnames of the actors or directors are extracted from the text query using Stanza's NER models and after that, the previously extracted movies are sorted in the order of the keywords found among the description/cast.

The web version of the service is written with Django.

Home Page.png
Search Results.png
Movie Card.png
Features
Development time
6 weeks of 4 developers
Year
2021