Inspiration

Our project was inspired by handheld virtual buddies of the 90s, such as Tamagotchis. We set out to create a modern version of these, taking advantage of widely available social media platforms such as Twitter and Discord to promote social connectivity in a fun way.

What it does

The bot generates contextual responses to user input that reflect the sentiment of the original message.

How we built it

We used both the Google Cloud Natural Language Processing and Dialogflow APIs. These allowed us to gauge the sentimentality of any messages received by the bot and attempt to generate a relevant response. We stored all user data (usernames, creation date, interaction levels, etc.) in a persistent SQL Database that allow for a user to enjoy contextually relevant conversations based off previous interactions. We wrote our bot in Python for the Discord Platform.

Challenges we ran into

We originally planned to create our buddy for use as a Twitter Bot, but we were unable to get approved as a developer in time for the competition so we pivoted to making a Discord Bot. During this process, we ran into incredible challenge while implementing multiple Cloud APIs, finding special hardship in designing the Dialogflow aspect of our project. We struggled with getting our local test agent to successfully communicate with our API project.

Accomplishments that we're proud of

We are very proud that we were able to combine multiple Cloud APIs in pursuit of our goal. Being able to integrate the Natural Language Processing with the Dialogflow that we had such a hard time with was extremely gratifying. We are also happy with the fact that we wrote a Python script to connect to a MySQL database to extract and store user data.

What we learned

We learned a great deal about cross-interfacing different APIs on a scripting language. We also learned how to use Python to interact with a MySQL database.

What's next for Contextual Chat Bot

We plan to implement our original idea of a Twitter Bot that can be accessed by anyone on the website, instead of being limited to specific Discord servers. We want the bot to have persistent interactions across platforms and add more features for users to interact with, such as feeding or playing with the bot. We also hope to further improve the bot's conversational functionality through the AutoML API.

Built With

Share this project:

Updates