How alphafrederic94/predictions-backend-service works
Medical Prediction Services is a FastAPI backend for symptom-based disease prediction, diabetes and heart-risk estimates, alternative symptom models, and a medical chatbot. The main workflow is a client request through the API entry point to a route, which returns a prediction or chatbot response; symptom results can include confidence, disease details, and precautions. The README also documents advanced symptom lookup, top predictions, similar-symptom search, and model metrics. Standard diabetes and heart routes implement rule-based scoring in the route modules. Sampled excerpts do not establish every route-to-service connection.
Main entry points: main.py FastAPI app · models Fine-tuned model assets · symptoms.py Standard symptoms · advanced_symptoms.py Advanced symptoms API
Components 19
API layer
- FastAPI app
api/main.py - Standard symptoms
api/routes/symptoms.py - Diabetes scoring
api/routes/diabetes.py - Heart scoring
api/routes/heart.py - Advanced symptoms API
api/routes/advanced_symptoms.py - Fine-tuned symptoms API
api/routes/finetuned_symptoms.py - Fine-tuned heart API
api/routes/finetuned_heart.py - Chat API
api/routes/chatbot.py
Prediction services
- Advanced inference
services/symptoms/advanced_symptom_service.py - Fine-tuned symptom inference
services/symptoms/finetuned_symptom_service.py - Fine-tuned heart inference
services/heart/finetuned_heart_service.py
Chatbot
- Medical chatbot
services/chatbot/medical_chatbot_service.py - Docker chatbot
services/chatbot/docker_chatbot_service.py
Data and models
- Standard model assets
ml/models - Fine-tuned model assets
ml/models - Condition datasets
data/datasets
Other components
- API client
- Hugging Face inference
- Docker-hosted model
Connections 19
- API client → FastAPI app: sends request
- FastAPI app → Standard symptoms: dispatches
- FastAPI app → Diabetes scoring: dispatches
- FastAPI app → Heart scoring: dispatches
- FastAPI app → Advanced symptoms API: dispatches
- FastAPI app → Fine-tuned symptoms API: dispatches
- FastAPI app → Fine-tuned heart API: dispatches
- FastAPI app → Chat API: dispatches
- Advanced symptoms API → Advanced inference: invokes
- Fine-tuned symptoms API → Fine-tuned symptom inference: invokes
- Fine-tuned heart API → Fine-tuned heart inference: invokes
- Chat API → Medical chatbot: invokes
- Medical chatbot → Hugging Face inference: queries
- Docker chatbot → Docker-hosted model: queries
- Advanced inference → Fine-tuned model assets: loads artifacts
- Fine-tuned symptom inference → Fine-tuned model assets: loads artifacts
- Fine-tuned heart inference → Fine-tuned model assets: loads artifacts
- Standard symptoms → Standard model assets: uses models
- API client → Docker chatbot: selects option