Inspiration
According to the World Health Organization, approximately 800,000 people die due to suicide every year, which is one person every 40 seconds. Suicide is a global phenomenon and some of our team members have also experienced people who decided to take their own lives. One of our teammates experienced a suicide where their parents did not know that their child was depressed even though it was evident on their child’s daily conversations with friends. To address this major issue, we decided to create a messaging chat extension that will prevent more suicides from happening by allowing people who are suffering from suicidal symptoms to be reached out by their family and friends.
What it does
GIven their consent, the natural language processing algorithm will process the user’s daily conversations with other people and output a mental score from -1 to +1. This score will determine how likely/at risk they are to commiting suicide. For example, the user is more likely to commit suicide with a score of -1 compared to another user with a score of +1. The user can also decide to add their family members and friends to this infrastructure. When their score falls under a minimum score, their family and friends will be notified to reach out to them personally. Family and friends who are added by the user will also be able to see the user’s score to check on them daily.
How I built it
We leveraged the google cloud suite to do sentiment analysis on conversation gathered from our slack channel. The conversations are recorded by the slack bot into our Firebase database and then analyzed periodically when the jobs scheduler triggers our ML cloud function. This cloud function saves the ML output in another subnode of our database. The Slackbot then reads from this database to calculate and output a metric. Tools and Frameworks: Python, ngrok, Flask, Google Cloud Natural Language API, Cloud Functions, Cloud Job Scheduler, Slack API
Challenges I ran into
Connecting the components together (Slackbot, databases, cloud functions) required making some tough design choices, and also gave rise to some weird bugs.
Accomplishments that I'm proud of
Achieving our goal of building a service that can analyze text conversations based on sentiment and output an informed metric.
What I learned
This was my first time using the Slack API and it was interesting to learn! Also, I learned how to use some new Google Cloud Suite tools like Cloud Function and Jobs Scheduler.
What's next for Guardian
What we built at the hackathon was a proof of concept for a tool that can be integrated in traditional messaging applications (think: Facebook Messenger). Ultimately, we hope that this tool/idea can be adopted by messaging services to help reduce suicides around the world. We hope to continue to research the potential benefits and limitations of this technology and consult members of the psycho-therapist community in order to make sure we keep developing towards an ethical and socially useful tool.
Log in or sign up for Devpost to join the conversation.