Chatbot from scratch based on douban movie, support with chat and recommendation.
A website based functionality that support user to chat with our bot, also our bot will try to recommend users with unseen movies.
Full functionanlity:
- A website user could login.
- A chatbot form will be displayed for user to text.
- Basic chat text will be made for users to start chat.
- First check users have seen any hot movies with multiple selection, full data will be stored into database, will repeat until user don't want to select.
- User could chat with bot that for movies', actors', or directors' information.
- User could get more movies for actors or directors based on basic information
- Try to reach user to see is a need to do recommendation, user could select to agree or don't agree with recommendation, if a good or not signal also will be stored for future adjustment.
There are 2 models will be made: one for chatbot and another for recommendation.
Technology used:
- NLP for processing
- MYSQL to persist structure data and mongoDB to store movie data
- Flask for front end
- Graph SQL used in case for movies information
- HTML and JS for front end, both login and chat page
- Chatbot model created for chat
- Recommendation model for users' future interest.
Functionality split into parts:
- Data extract from website with spider for movies, also try to with actors.
- Create DB strcuture and dump data into DB.
- Whether or not to use Graph DB? to be decided
- Front end for user to login and store users' information
- Chat form for website that user could text in the box.
- Extract hot movies to be selected based on 5 movies each time for user to select, both with agree or stop, if there isn't movie selected, then couldn't do recommendation, try to let user to select again.
- Chatbot model that support to do interaction with users.
Tools used: MYSQL MongoDB BeautifulSoup