
Project Purpose:
Everyone has been in a situation where they need to talk to someone. Whether to unload the burden or ask for trusted advice, but does everyone have someone they trust enough to always talk to? Unfortunately, it doesn’t seem like it.
Let the Data Speak:
Fig 1: Current generation reports the highest levels of loneliness (79%)

Fig 2: Number of close friendships significantly declined from 1990 to 2021

Fig 3: The most alarming trend: the number of suicides has been rising since the 2000s

Project Motivation:
This project is motivated by commonly observed challenges in forming and maintaining social connections, particularly in unfamiliar or transitional environments. Many individuals experience isolation, limited access to affordable mental health resources, and long wait times for institutional support. In such cases, conversational AI tools are increasingly used as accessible outlets for emotional expression and reflection. These tools can help users externalize thoughts, reduce emotional overload, and reframe situations more realistically.
However, several limitations were identified. Conversations often lacked continuity, requiring users to repeatedly reintroduce personal context. Early responses tended to be generic until sufficient background information was provided. Despite these limitations, conversational AI interactions may still help reduce immediate stress and prevent the accumulation of anxiety over time.
Conceptual Key Features:
I identified four main issues from my experience interacting with it in crisis moments, which I aim to solve in this project:
- Lack of long-term memory.
- Lack of short-term relevance.
- Its communication style being more "chat-botish" instead of "humanish."
- It never checked in on me.
These four factors are crucial to make it feel less like a generic chatbot and more like a caring friend.
Technical Key Features:
Long-Term Memory:
- Dynamic Categorical Memory: After each interaction, tailored GPT agents update a set of summaries related to aspects of life:
text core_values_and_beliefs, mental_and_emotional_well_being, family_relationships, health_issues, personal_background, aspirations_and_fears, profile_summary, strengths_and_weaknesses, romantic_relationships, social_circle_dynamics, daily_routines, work_environment_and_dynamics, most_recent_challenges, most_recent_accomplishments, emotional_triggers, communication_style, hobbies_and_interests, personal_development_and_skills, financial_situation_and_goals, academic_performance_and_experiences, social_life_and_friendships, physical_health_and_lifestyle, personal_interests_and_hobbies, past_traumas - The existing summary in each category is updated from the current interaction. Once updated, a master summary is generated, which guides the next interaction.
- Dynamic Categorical Memory: After each interaction, tailored GPT agents update a set of summaries related to aspects of life:
Short-Term Relevance:
- Targeted Retrieval: During conversation, a specialized GPT agent decides whether pulling up any categorical summaries is relevant. It can return an empty list or a list of three most relevant summaries. If not empty, a summarizing agent integrates them into the conversation seamlessly, providing GPT with relevant information.
Chatbot Style Improvement:
- Three Layers of Humanization:
- Master Prompt: Directs GPT to respond in a human-like, “SMS-chat-with-friend” style.
- Personal User Communication Preference: Pulled from the "communication_style" category and dynamically updated after each interaction.
- Humanize Filter: This top-layer filter ensures the response style is relevant to the last ten messages, splits long answers into multiple messages, and removes unnecessary periods to emulate human SMS texting.
- Three Layers of Humanization:
Check-In Feature:
- Check-In Scheduler: After each interaction, this agent evaluates if a check-in message would be beneficial. It generates a check-in message and schedules a follow-up (within 1-24 hours) based on the context. The check-in message is sent to the user at the scheduled time.
Goals:
The COVID vaccine does not guarantee that you will never get COVID. Similarly, this bot does not promise to completely eliminate the issues of loneliness and isolation.
Just as the vaccine lowers the risk of severe complications from the virus, the goal of this project is to lower the levels of loneliness and isolation, potentially preventing the tragedy of loneliness-related suicides.
Challenges:
- Prompt engineering was a huge one. The project contains 35 prompts for 10 tailored agents. Writing them was not easy to ensure the desired outcome from the agents.
- The biggest one was to make GPT talk in a human-like SMS conversation style. It took me multiple layers (3) and many failed prompts to craft a style that feels human.
- It was hard to ensure that the LLM agents return the output in the expected format, which could further be used in standard algorithms.
Accomplishments That I'm Proud Of:
- I think it talks like a caring friend. Many prompts were tested to ensure that. As of right now, the style is nice and mellow.
- Targeted retrieval is analyzing what aspects of memory will be beneficial for the current convo, pulling, summarizing, and injecting them. Pretty sick.
- Check-in scheduling is a nice and needed feature. Analyze the convo and schedule a check-in, almost like a doctor.
What I Learned:
- Prompt engineering 101.
- How to make AI LLM agents and ensure that the output from them is in a required specific format.
- How to make 10 agents work together cohesively: generate summaries, and based on generated summaries, schedule and insert check-ins into the database table.
Future Vectors:
- Send memes to the user.
- Improve targeted retrieval call logic.
- Add scheduled user suggestions for deeper communication style personalization, such as: "How is my conversation style so far? Is it too optimal/dull? I can adjust."
- Check-in scheduling: Improve the time scheduling mechanism.
Log in or sign up for Devpost to join the conversation.