Inspiration

  • Rise of recent AI technology, such as ChatGPT
  • Personal experience with difficulties finding good restaurant locations quickly
  • Desire to create a fun and effective solutions for others facing a similar problem
  • Wanting to create a friendly AI that communicates with user wanting to find a good restaurant

What it does

ChompBot interacts with the user by searching for restaurants on Yelp with certain criteria, such as type of cuisine, location, and the number of restaurant options that should be displayed. Information about the restaurants are provided by ChompBot, so the user can quickly view the restaurant's menu without needing to scroll through endless lists of one star restaurants, while their stomach generates a miniature thunderstorm. However, ChompBot isn't just a fancy search engine; it is an AI that can interpret your responses to extract the relevant information and also makes a great conversational partner, allowing you to get a table for two without the extra charge to your bank account.

How we built it

  • Yelp API to send GET requests for certain restaurants to Yelp website
  • Python library called Chatterbot for the AI model
  • List trainer database called corpus to train ChompBot
  • tkinter, which is a Python GUI package

Challenges we ran into

  • Finding a practical and inexpensive AI model
  • Various installation problems with libraries due to some versions being outdated
  • Implementing a keyword AI model
  • Training the AI model efficiently, given time constraints
  • General lack of information on Chatterbot
  • Getting ChompBot to generate calls to the Yelp API
  • Creating a GUI compatible with the design of ChompBot

Accomplishments that we're proud of

  • Implementing the AI model and combining it with the Yelp API
  • Training the AI effectively to provide humanoid responses
  • Using Yelp API's features to combine business searches with review searches

What we learned

  • How to train an AI model on a custom data set
  • How to find and use publicly available data sets to train an AI model
  • How to use an AI model to make API calls
  • How to integrate Yelp API's to work with a frontend GUI interface

What's next for ChompBot

Given more time, we plan to run more epochs of the training cycle to improve ChompBot's ability to interact with humans and its range of conversation. We also intend to improve ChompBot's proficiency at generating Yelp API calls, so user's will have greater flexibility with their custom searches, such as scanning the menus of the restaurants to ensure how the restaurant advertises themself is accurate. For example, filtering out incorrectly classified vegetarian restaurants on Yelp, as well as including other dietary choices.

Built With

Share this project:

Updates