Relevant Links

Model and code: [https://github.com/bokkaebi/bbcs2023-bookai/tree/frontend]
Demo site: [http://fenixion.pythonanywhere.com]
Slides: [https://nushighedu-my.sharepoint.com/:p:/g/personal/h2010073_nushigh_edu_sg/EY7eaiSk_gRDnLeuKD19vlIBSDOzvHcW_RTWb6j6-CiTTQ?e=0cbdXZ]

Inspiration

As other forms of entertainment increase in popularity, reading books recreationally has gradually died out. With so many ways to find a book, it is difficult to find a place with properly catalogued books and it takes a lot more time and energy to find a book you like. Hence, we decided to create Bookinator, an AI-powered book recommender with a large database allowing users to easily find their next book(s) to read in seconds.

What it does

The user can select a book from our database as input. The AI then outputs a list of recommended books that are similar to the selected book. The number of books recommended can also be determined by the user.

How we built it

We used scikit-learn and the Sentence Transformers framework to finetune a pre-trained BERT model and suited it towards our requirements. We used Flask and some basic web dev to create the site for our app. The server is hosted on PythonAnywhere.

Challenges we ran into

  1. This project is done by 3 people from 2 groups and was pretty much put together 1 day before the deadline because our original teammates disappeared :p
  2. The accuracy of the model is a bit low but it works well enough

Accomplishments that we're proud of

Getting the model and site to work

What we learned

More advanced techniques in AI, how to use transformers, web dev stuff

What's next for Bookinator

  1. Allowing user to input whatever book they want, not just limited to the database we have
  2. Further training of the model using more parameters to increase accuracy
Share this project:

Updates