Inspiration

Sometimes, life can be stressful. Plans go awry. Relationships fail. Decisions don't turn out right. We may feel sad and alone as a result. Wouldn't it be nice to speak to someone during those lonely moments?

A report from Harvard indicates that "36% of all Americans—including 61% of young adults and 51% of mothers with young children—feel 'serious loneliness,'" (1) which can be extremely harmful to one's physical and mental health; loneliness has been found to "raise levels of stress, impede sleep, and... can also augment depression or anxiety." (2) We both felt the effects of loneliness when the pandemic hit, when all normal events were cancelled, when we had to quarantine and isolate ourselves from others.

From this, we were inspired to create a friend, one that can always be there for someone when others cannot, to fight loneliness, to relieve one's stress and anxiety, and to improve one's mood. That friend is Konrad.

What it does

Konrad is a chatbot designed to uplift a person's spirits. It allows the user to express their thoughts and frustrations, instead of keeping them bottled inside of themselves, helping to relieve stress and anxiety. After the user provides what's on their mind, Konrad will respond to the user with the goal of trying to cheer them up and making them feel less alone. In cases of extreme distress, Konrad refers the user to the National Suicide Prevention Lifeline and the Crisis Text Line.

Konrad is there for when there is no one else.

How we built it

  • We built the frontend of our application by using Tkinker.
  • Python was as our main language for programming Konrad.
  • We used the conversational model, DiabloGPT, from transformers for Konrad's responses.
  • We also used a fine-tuned version of DistilBERT to analyze the sentiment of the users' inputs to help guide Konrad's responses.

Challenges we ran into

There were several challenges we faced as we built Konrad.

  • This is our first hackathon. We weren't quite sure of what to do at the beginning. The workshops helped us brainstorm our ideas.
  • Since both of us have never messed with machine learning before, it was a daunting task to try and incorporate it into our project.

Accomplishments that we're proud of

  • Creating this project for our first hackathon experience.
  • Utilizing pretrained machine learning models for natural language processing in our application

What we learned

  • We figured out how to use models from transformers to process user inputs and respond to them.
  • We learned how to convert text to speech using gTTS and pydub.
  • We found out how to use Tkinkter to create the GUI for our application.

What's next for Konrad

We hope to refine the conversational model we used for the chatbot so that it responds better to the user's inputs. Sometimes, Konrad responds with gibberish, which isn't helpful. We want Konrad to respond sincerely in a way that shows that Konrad understands the user's situation, whatever it may be.

We also want to include speech-to-text, which we did not add due to a lack of time and various errors trying to do so. While Konrad can speak to the user, the user cannot speak to Konrad.

Lastly, we wish to embed Konrad in a website so that people can access it easier.

Sources

  1. Cashin, Ali. “Loneliness in America: How the Pandemic Has Deepened an Epidemic of Loneliness.” Making Caring Common, Harvard Graduate School of Education, 13 Dec. 2021, https://mcc.gse.harvard.edu/reports/loneliness-in-america.
  2. Novotney, Amy. “The Risks of Social Isolation.” Monitor on Psychology, American Psychological Association, May 2019, https://www.apa.org/monitor/2019/05/ce-corner-isolation.

Built With

Share this project:

Updates