Inspiration
Lots of people already know neurodivergent, and especially autistic people, face difficulty deciphering tone. What is less known, however, is the state of confusion surrounding social interaction that is experienced by many neurodivergent people almost everyday. This characteristic of the disorder is a major social debuff and can make forming and maintaining relationships much more difficult for the average neurodivergent person compared to their neurotypical counterpart. This tool aims to make these social interactions, at least the ones through text, easier and stress-free.
What it does
Uncovering what's between the lines. CTM, CanTeachMe, is an OpenAI-powered Python web application geared towards making textual social interaction easier for neurodivergent people. By deciphering sentiments behind a message and suggesting the hidden implications behind commonly perplexing social interactions often started from seemingly simple phrases, CTM dissolves the fog and aids neurodivergent people in seeing the same view as neurotypicals. To use it, simply paste a message received and select "Submit." What follows is the result of a sentiment analysis, an AI-generated suggestion for an action to take, and an AI-generated explanation as to why the sentiment has been assigned its value [Positive, Negative, Neutral].
How we built it
The backend of this web application was built with Python's flask framework. The frontend was built with a combination of HTML, CSS, and Javascript. The AI features come from OpenAI and the text-davinci-002 model was used to generate output. Sentiments were generated with textblob's sentiment analyzer. There was also a hardcoded set of "general phrases" with pre-set sentiments, suggestions, and explanations, which when entered by the user, will display these contents rather than have them be generated with OpenAI.
Challenges we ran into
Both the frontend and backend assignees were mostly beginners to coding an entire web application. We were not familiar with Python and did not know how to construct a web application with it. There were also some issues with the generated texts by OpenAI. Due to the older version being used, its outputs compared to GPT-3.5 may demonstrate a lower understanding of language and natural language processing tasks as well as more likely to seem less contextually-accurate.
Accomplishments that we're proud of
For the first time for any of us, we were able to properly finish a web application as well as make our hackathon project debut. Team communication was swift and from the design to the actual coding, it was as if everyone was in-sync with each other. Being able to properly challenge ourselves and be decently successful has definitely left a team-wide feeling of satisfaction.
What we learned
We learned how to program in Python and became more familiar with Javascript. Some members also became more familiar with the "neurodivergent experience," specifically the "autistic experience" as it relates to social interactions which made teamwork much easier as well as changed the initial design of the website to something more straightforward and less "loud."
What's next for CanTeachMe?
We'd love to have a larger data set for this application as well as make use of a more robust form of AI, such as an even newer version of Chat-GPT. The outputs now are "satisfactory" but they can be excellent with more time and different resources working on the project. We are also looking at possible implementing code that could detect sentiment from voice inflection.
Log in or sign up for Devpost to join the conversation.