https://github.com/radha1805/symptom-checker-ml
Symptom Checker ML Model β includes data preprocessing, feature engineering, training pipeline, prediction API (FastAPI), multilingual support, and Docker deployment.
https://github.com/radha1805/symptom-checker-ml
ai docker fastapi healthcare machine-learning ml-model multilingual nlp python symptom-checker telemedicine
Last synced: 2 months ago
JSON representation
Symptom Checker ML Model β includes data preprocessing, feature engineering, training pipeline, prediction API (FastAPI), multilingual support, and Docker deployment.
- Host: GitHub
- URL: https://github.com/radha1805/symptom-checker-ml
- Owner: radha1805
- Created: 2025-12-14T09:12:12.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-12-14T09:33:49.000Z (6 months ago)
- Last Synced: 2025-12-25T13:01:25.273Z (6 months ago)
- Topics: ai, docker, fastapi, healthcare, machine-learning, ml-model, multilingual, nlp, python, symptom-checker, telemedicine
- Language: Python
- Homepage:
- Size: 646 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Symptom Checker ML Model
An AI-based symptom checker designed with a complete ML training pipeline, multilingual support, and a deployment-ready FastAPI backend.
## π Overview
This project implements a machine learning model that predicts possible diseases based on user-provided symptoms.
It includes preprocessing, feature engineering, model training, inferencing APIs, multilingual handling, and Docker-based deployment.
The architecture is clean, modular, and suitable for real-world telemedicine workflows.
---
## π Features
- **Machine Learning Model** for symptom-based disease prediction
- **Training Pipeline** with preprocessing, feature engineering, and evaluation
- **Prediction API (FastAPI)** exposing inference endpoints
- **Multilingual Support** (English, Hindi, Punjabi)
- **Speech-to-Text & Text-to-Speech Support** (local + cloud options)
- **Docker Deployment** for easy containerization
- **Clean Modular Architecture** for scalability
---
## π Project Structure
```
symptoms_checker/
β
βββ api.py # FastAPI prediction server
βββ train_model.py # Model training script
βββ feature_engineer.py # Feature extraction & preprocessing
βββ symptom_extractor.py # Extracts symptom keywords
βββ translator.py # Multilingual translation logic
βββ stt_tts.py # Speech-to-text and text-to-speech
β
βββ artifacts/ # Saved ML models and encoders
βββ tests/ # Test suite
β
βββ requirements.txt # Dependencies
βββ Dockerfile # Deployment configuration
βββ README.md # Documentation
```
---
## π§ Installation
### 1. Clone the repository
```
git clone https://github.com/yourusername/symptom-checker-ml.git
cd symptom-checker-ml
```
### 2. Install dependencies
```
pip install -r requirements.txt
```
---
## βΆοΈ Running the Model API
Start the FastAPI inference server:
```
uvicorn api:app --host 0.0.0.0 --port 8000
```
Open in browser:
**http://localhost:8000/docs**
---
## π‘ Example API Usage
### POST `/predict`
**Input**
```json
{
"text": "I have fever and body pain"
}
```
**Output**
```json
{
"predicted_disease": "Influenza"
}
```
---
## π§ Model
The model uses classical ML techniques trained on symptomβdisease mappings.
Pipeline includes:
- Text preprocessing
- Symptom feature extraction
- One-hot encodings
- Model training
- Artifact saving
Artifacts are stored in the `/artifacts` directory.
---
## π Multilingual Support
Supported languages:
- English
- Hindi
- Punjabi
Inputs are normalized internally before prediction.
---
## π³ Docker Deployment
Build image:
```
docker build -t symptom-checker .
```
Run container:
```
docker run -p 8000:8000 symptom-checker
```
---
## π§ͺ Testing
Run the test suite:
```
pytest
```
---
## π©βπ» Author
**Radha Sarda**
Machine Learning | AI | Deployment
Open to collaborations and improvements.
---
## π License
Released under the MIT License.