The primary inspiration that drove this project comes directly from team members. We wanted to combine the different experiences of team members together so that everyone can sharpen or explore new tools on his or her strong skills in software. Most of the team have more backend experience including data science and machine learning, so applying conversational AI through a bot was a fun way to approach the theme.
What it does
The webapp is mostly a chatbot that can help soothe someone experiencing enxiety through meaningful conversations and emotions. A vital component also includes a video frame that can play audiobooks, ASMR, sleep music, or basically any online video that can help a person meditate or sleep. Although more for analtyical purposes, the backend of the project can also use facial recognition to detect emotions in any selfies the user messages. Although a work-in-progress, the bot's backend logic also has the ability to search for counseling and therapy services in the user's local area for suggestions.
How we built it
The backend comprises of a bot based on the Chatterbot library in Python. There are other parts integrated into the bot from Google Cloud, including facial recognition from Vision, sentiment analysis from Language, and Places API. The frontend is constructed from React.
Challenges we ran into
Finding the correct libraries to use for the bot at first involved much time and testing effort. Integrating the different Google Cloud APIs together with the bot's code and then with Flask routes was the main technical challenge.
Accomplishments that we're proud of
For the backend, the greatest accomplishment was making a chatbot for the first time using any set of tools. For the frontend, displaying video or cam feed that may help people with anxiety or sleep problems was comforting from a social good perspective.
What we learned
We learned greatly about how chatbots work from an abstracted level of steps.
What's next for Mental Serenity AI
We would like for the bot to be able to call therapists and allow more multimedia types to be sent in the messages.