Inspiration

Our story begins with a realization during our time at NUS — a time marked by academic challenges, life's unforeseen curveballs, and the complexities of relationships. We sensed the burnout stemming from various circumstances, from struggling to adapt to the fast-paced learning environment to facing life's unfortunate events and the pressures in relationships.

In the midst of these challenges, we yearned for an understanding companion, a non-judgmental confidant to share our thoughts. This need sparked the birth of an idea — an idea to create a solution that not only listens but also aids in coping with burnout.

With a vision in mind, we delved into prompt engineering and employed Retrieval Augmented Generation, crafting a therapy bot with a mission to assist those grappling with burnout. This bot goes beyond offering a listening ear; it's equipped to identify the specific type of burnout a person may be experiencing.

In our quest to provide holistic support, we integrated a gratitude journaling feature. Recognizing the power of Cognitive Behavioral Therapy (CBT), we engineered the bot to guide users in becoming aware of their negative thoughts and adopting healthier coping mechanisms.

What it does

  1. Therapeutic Conversations: Leveraging prompt engineering and Retrieval Augmented Generation, our bot engages users in therapeutic conversations. It actively listens, provides support, and aids in navigating the complexities of burnout.

  2. Personalized Identification: Not just a chatbot, our creation goes a step further by identifying the specific type of burnout a user may be experiencing. This personalized insight enables tailored support strategies.

  3. Gratitude Journaling: To foster a positive mindset, the bot includes a gratitude journaling feature. Users can reflect on and record moments of gratitude, contributing to a more optimistic outlook.

  4. Cognitive Behavioral Therapy (CBT): Engineered with the principles of Cognitive Behavioral Therapy, the bot helps users become aware of negative thought patterns. It guides them through techniques to reframe thoughts and cope with stress.

How we built it

  1. Source Gathering with URL and PDF Integration: We started by creating a versatile pipeline for information retrieval. Our system can seamlessly fetch data from diverse sources, including URLs and PDF files. This ensures a comprehensive range of information for Mistral LLM.

  2. Efficient Content Loading: To facilitate Mistral's understanding, we developed URL Loaders and PDF Loaders. These components efficiently load content, transforming it into a format suitable for subsequent processing.

  3. Text Chunking for Effective Processing: Understanding the importance of granularity, we implemented a robust Text Chunking mechanism. This step ensures that Mistral processes information in manageable segments, improving overall efficiency.

  4. Tokenization and Word Embeddings: Tokenizing text and deriving word embeddings form the backbone of Mistral's comprehension. We meticulously crafted a process to tokenize chunks and obtain word embeddings, enriching Mistral's understanding of contextual relationships.

  5. Vectorized Chunk Storage in FAISS: Our system stores vectorized chunks in a FAISS vector database, enabling rapid similarity searches. This optimized storage mechanism ensures Mistral's quick access to relevant information.

  6. User Interaction and Prompt Engineering: When users engage with Mistral, their messages trigger a dynamic process. The received message serves as a key for a similarity search in the vector database, extracting pertinent documents that empower Mistral's responses.

  7. Comprehensive Components Developed:

  • Content Loaders:
    • Webcrawler/Scrapping Tool: A robust tool for efficiently scraping web content.
    • PdfLoader: A specialized loader for extracting data from PDF files.
  • Prompt Engineering:

We curated a repository of prompt engineering prompts tailored for Mistral LLM. These prompts enhance Mistral's response generation capabilities.

  • Emotion Detection using DeepFace Model: Integrated DeepFace model for emotion detection, allowing Mistral to adapt responses based on user sentiment.

Our journey involved meticulous development, ensuring Mistral LLM is not just an AI language model but a sophisticated conversational partner. This integration of advanced retrieval mechanisms and user-centric prompt engineering sets Mistral apart, offering users an enriched and personalized interaction experience.

Challenges we ran into

  1. Prompt Leakage
  2. Inaccurate Emotion Classification

Accomplishments that we're proud of

  • Engineering Mistral LLM to be an active listener and responding in a more emphatic manner when conversing with the user.
  • Incorporating emotion detection to generate contextually appropriate responses to the user.

What we learned

Our journey is a testament to the belief that technology, when infused with empathy and understanding, can be a powerful ally in navigating life's challenges. The Burnout Support Bot is not just a project; it's a narrative of resilience, empathy, and the desire to make a positive impact on the well-being of individuals facing burnout. Join us on this transformative journey toward balance and well-being.

What's next for Burnout Support

  1. Auto user / clinical notes (summarise a "session")
  2. RAG for crisis helplines
  3. Auto "On This Day" for happy days
  4. Gratitude journalling through the app

Built With

  • deepface
  • langchain
  • mistral
  • python
Share this project:

Updates