How febryannnn/dermadiff-ai works
DermaDiff is a clinician-facing skin-lesion decision-support system, supported by an offline synthetic-data training pipeline and an online classification/explanation workflow. README documentation establishes the major training stages and model handoffs; sampled backend/API and frontend excerpts support the interactive inference flow. Some training and MedGemma wiring is documented but not shown in sampled source, so those links reflect documented behavior.
Main entry points: web.py HTTP API · classifier.tsx Classifier UI · api.ts API client · dataset_prep.py Dataset preparation
Components 20
Clinical application
- Classifier UI
website/frontend/src/components/product/classifier.tsx - Product page
website/frontend/src/app/product/page.tsx - API client
website/frontend/src/lib/api.ts
Inference services
- HTTP API
website/backend/api/web.py - Result cache
website/backend/app.py - PanDerm classifier
website/backend/models/panderm.py - MedGemma explainer
website/backend/models/medgemma.py
Training pipeline
- HAM10000 data
fine-tune/dataset/ham10000.py - ISIC 2019 data
fine-tune/dataset/isic2019.py - Dataset preparation
fine-tune/dataset_prep.py - Diffusion fine-tuning
fine-tune/models - Synthetic image generation
fine-tune/models - PanDerm training
fine-tune/stable-diffusion-xl-base/classifiers_training_LoRA.py - Model registry
Model evaluation
- Model evaluation
fine-tune/evaluation
Other components
- Clinician
- Hugging Face Hub
- Stable Diffusion models
- Harvard Dataverse
- ISIC dataset source
Connections 24
- Clinician → Classifier UI: uploads image
- Product page → Classifier UI: presents
- Classifier UI → API client: requests analysis
- API client → HTTP API: sends requests
- HTTP API → PanDerm classifier: classifies image
- HTTP API → Result cache: reads and writes
- HTTP API → MedGemma explainer: requests explanation
- HTTP API → API client: returns results
- API client → Classifier UI: streams explanation
- Classifier UI → Clinician: shows probabilities and heatmap
- Harvard Dataverse → HAM10000 data: provides dataset
- ISIC dataset source → ISIC 2019 data: provides dataset
- HAM10000 data → Dataset preparation: provides images and labels
- ISIC 2019 data → Dataset preparation: provides images and labels
- Dataset preparation → Diffusion fine-tuning: prepares class data
- Stable Diffusion models → Diffusion fine-tuning: base models
- Diffusion fine-tuning → Synthetic image generation: produces tuned generators
- Synthetic image generation → PanDerm training: augments rare classes
- Dataset preparation → PanDerm training: provides original data
- PanDerm training → Model registry: publishes best weights
- Model registry → Hugging Face Hub: stores weights
- PanDerm training → Model evaluation: evaluated by
- Hugging Face Hub → PanDerm classifier: supplies classifier weights
- Hugging Face Hub → MedGemma explainer: supplies language model