Inspiration

Many people struggle to understand what their symptoms might indicate and often search online, which can be unreliable. We wanted to build an accessible tool to empower users with AI-powered preliminary insights—especially in regions with limited healthcare access.

What it does

Symptom2Disease takes user-entered symptoms, predicts the top 3 most likely diseases using a trained machine learning model, and provides simple explanations in multiple languages. It also supports audio summaries, making it helpful for diverse users.

How we built it

We trained a TF-IDF vectorizer and a Random Forest classifier on symptom–disease pairs. Built a Streamlit app for interactive predictions. Integrated Deep Translator for multilingual support. Used gTTS to generate audio output. Added Groq LLM API to provide natural-language disease explanations.

Challenges we ran into

Balancing prediction confidence thresholds so results are meaningful but not empty. Training ML Model for diseases and also In Labelling of diseases Handling languages that are not fully supported by gTTS.

Accomplishments that we're proud of

Successfully deploying a multilingual, accessible health recommender. Enabling text-to-speech so users can hear the predictions. Creating a clean UI that guides users step by step.

What we learned

How to integrate multiple AI components (ML model + LLM + translation + speech). How to download Dataset from kaggle and how to train ML model The importance of user experience in sensitive domains like health.

What's next for Symptom2Disease: ML Diagnosis Recommender

Adding more training data to improve disease prediction accuracy. Supporting voice input so users can speak symptoms. Adding personal health history as an input feature. Integrating real-time medical resources to suggest next steps.

Built With

  • deeptranslator
  • github
  • groq-llm-api
  • gtts
  • huggingface
  • joblib
  • numpy
  • python
  • sicket-learn
  • streamlit
Share this project:

Updates