Inspiration
Many people worldwide suffer from mental health issues every day. Whether it's anxiety, stress, depression, or even burnout, everyone can use a friend. However, not everyone is surrounded by good communities. People also like to be comforted in many different ways. Hence, I built Relaxo.
What it does
Relaxo is an all-in-one app that strives to improve mental health over time. It contains a chatbot, Relaxo, who is always there to comfort you.
Additionally, the app has a journal. Upon posting a journal entry, generative AI analyzes it's sentiment and classifies if your day went positively, negatively, or neutrally.
Finally, the app has a page dedicated to breathing exercises. You simply describe how you're feeling in a few words, and AI is used to choose an optimal breathing exercise for you. Animations tell you when to inhale/exhale so that you can easily follow along.
How I built it
- I used OpenAI's gpt-3.5-turbo Chat Completion model for all of the AI-related features. This includes the chatbot, sentiment analysis, and a breathing technique chooser. I connected this to a small API built with Python & FastAPI.
- I used React on the front end to develop a user interface.
- I used Firebase to handle user authentication
- I used Netflix's DGS Spring Boot & GraphQL framework to build an API with a PostgreSQL database on the back end to handle storing user information and journal entries.
Challenges I ran into
- The chatbot was acting in unexpected ways at times - for example, when asked to metaphorically do something, the chatbot would respond with something like "I am an AI language model and am not able to..." To overcome this, I researched prompt engineering on DeepLearning.AI, which taught me how to create effective system messages for the model. I also added examples for the bot to learn from and consequently deliver better results.
Accomplishments that I'm proud of
- I'm happy that I was able to connect Generative AI to solve a real-life problem that affects those around me. Because this was my first time working with OpenAI, I'm glad that I was able to quickly learn this technology and integrate it with technology I'm already familiar with (such as React, Spring, etc.).
What I learned
- This was my first project working with OpenAI's models. I learned how to use the OpenAI library and its chat model. I also learned a little bit about prompt engineering and how it can help the results of an LLM.
What's next for Relaxo
- I want to continue to utilize AI so that Relaxo can be able to analyze a full journal history and tell you patterns from the data - For example, do certain names in your journal entries correlate with negative days? Which months do you feel better/worse? Patterns/trends like these can significantly help identify problems and improve one's mental health.
- I also want Relaxo to have a larger variety of breathing techniques that it can help you with. I'd love to create more advanced & unique animations for each exercise, too.
Log in or sign up for Devpost to join the conversation.