Inspiration
When our group was brainstorming ideas for the lifestyle theme, we thought about common obstacles in our lives. We realized that mental health was a very personal issue for all of us. A few of our members have used LLM's in order to get life advice from an objective point of view, so we realized that creating an AI companion could be comforting for many people. This AI companion would be especially useful for people who do not want to share their feelings due to a fear of being judged or alienated by others, but are also looking for a source of advice and support that would be more personal than reading a book or a website.
We first thought that a cat should be our mascot, because of the sense of coziness and comfort that cats exude. Another idea we had was that the cat should be playing with a ball of yarn, which is how we thought of our name, "Unspool." Like a ball of yarn, we are all sometimes tightly wound up, and we aim to provide emotional relief and catharsis through our product. We drew inspiration from the calm soothing color of purple in order to diffuse a sense of calmness into our user group.
What it does
It gives users a safe space to work through their thoughts and emotions, whether that be by journaling, chatting with an ai bot through messages or sending journal entries, or tracking their progression of wellness by checking the feelings tracker.
How we built it
We designed and prototyped our frontend and user flow using Figma. The frontend was implemented for IOS using Swift. Our backend was implemented by using Flask to create endpoints; we then containerized this backend and deployed it to Google Cloud so that our endpoints would be publicly callable. Our backend uses MongoDB Atlas as its database to store information like journal entries and conversations between users and AI. Our backend also calls our AI, which we created by finetuning a Llama 3 model on a dataset of over 60,000 empathetic conversations. This LLM was then deployed to HuggingFace Spaces so that it could be called publicly via an API. Our backend communicates with this in order to receive messages from the AI.
Challenges we ran into
We had trouble finding a cost efficient and effective way to deploy our fine-tuned LLM because it would require a computer with a GPU to run, but we were eventually able to use HuggingFace Spaces. We also had some trouble implementing design and functionality for our frontend, as we were very ambitious with the amount of screens and features we wanted our app to support.
Accomplishments that we're proud of
We created a finished prototype of our app on Figma, we connected our frontend to our backend and we were able to have conversations with the chat bot, we containerized our backend and deployed it to Google Cloud, we fine-tuned a LLM and then deployed it, we implemented the design using Swift, a language we were not very familiar with. All in all, we accomplished above and beyond in this hackathon
What we learned
We learned a lot about working together as a team, passing data over APIs, implementing a frontend based on a design, using FigmaJam to plan, using Figma to wireframe, training and finetuning a LLM, deploying code publicly.
What's next for Unspool
Extend app to include community aspect Upscale model to include greater personalization for users Encrypt journal entries to assure privacy for users Scale Databases and Servers to support larger user base Deploy LLM on Amazon SageMaker Detect habits that can positively or negatively affect emotions
Built With
- figma
- flask
- google-cloud
- huggingface
- jupyter
- llama
- llm
- machine-learning
- mongodb
- python
- swift
Log in or sign up for Devpost to join the conversation.