Inspiration
The issue of misinformation in self-diagnosis inspired us to create SympAI: Your Trusted Health Companion. Witnessing how people in underserved regions often rely on unreliable sources, leading to delayed care and anxiety, we aimed to build a tool that provides accurate health insights and bridges the gap to professional care.
What it does
SympAI is an AI-driven symptom checker that analyzes user-input symptoms to predict potential conditions, flag urgent symptoms, and offer personalized risk scores. It features an intuitive UI with visualizations like bar charts for condition probabilities, supports mental health awareness by prompting professional help for anxiety-related symptoms, and allows users to export results as a CSV for follow-up, empowering them with reliable health insights.
How we built it
We built SympAI using Python, with Streamlit for the interactive UI, allowing users to input symptoms and profile details (age, gender, location). The core functionality relies on a MultinomialNB model, trained on the Symptom2Disease dataset with over 1,200 entries, paired with TfidfVectorizer and nltk n-grams for symptom extraction. Additional features include a mock outbreak API for location-based data, custom CSS for styling, and deployment on Streamlit Cloud for accessibility.
Challenges we ran into
Training the model on every app start initially caused delays, which we resolved by implementing Streamlit’s caching. Extracting multi-word symptoms accurately required fine-tuning our n-gram approach to avoid missing critical phrases. Deploying on Streamlit Cloud presented file export issues, which we fixed by adding a download button. Balancing accuracy and user-friendliness in a health app was tough but pushed us to iterate effectively.
Accomplishments that we're proud of
We’re proud of creating a functional symptom checker that accurately predicts conditions and flags urgent symptoms, supporting users in underserved communities. The polished Streamlit UI, with visualizations and export functionality, enhances user experience, and our successful deployment on Streamlit Cloud ensures accessibility. Above all, integrating mental health prompts to encourage professional care reflects our commitment to holistic well-being.
What we learned
This project deepened our expertise in natural language processing with nltk and machine learning with scikit-learn, particularly in training MultinomialNB models for health applications. We gained insights into designing user-friendly interfaces with Streamlit and optimizing performance through caching. Most importantly, we learned the value of iterative problem-solving to balance technical accuracy with real-world usability in healthcare.
What's next for SympAI: Your Trusted Health Companion
We plan to enhance SympAI by integrating BioBERT for advanced medical NLP, incorporating real health APIs for outbreak data, and ensuring HIPAA compliance for secure data handling. Adding multilingual support and voice input will improve accessibility, while expanding mental health features with resources and chat support will further empower users, making SympAI a comprehensive health companion.
Log in or sign up for Devpost to join the conversation.