An intelligent healthcare assistant that extracts, analyzes, verifies, and summarizes medical prescriptions using AI, machine learning, and cloud services.
-
OCR with Google Cloud Vision API
- Extracts text from uploaded or captured prescription images.
-
Biomedical Named Entity Recognition (NER) with HuggingFace Transformers
- Identifies medications, dosages, and symptoms from free-text prescriptions.
- AI-powered backend using Google Gemini (Generative AI).
- Detects potential drugβdrug interactions with structured risk levels (π΄ High, π‘ Moderate, π’ Low).

-
Matches medications against a curated dosage dataset.
-
Verifies:
- Symptom appropriateness
- Age safety
- Dosage safety (mg/kg)
- Fetches standardized dosage ranges, intervals, and safety notes from dataset.
- Personalized to patientβs age and weight.
- Suggests alternative medications.
- Provides home remedies for common conditions from an internal knowledge base.
-
Generates a final patient-friendly report consolidating:
- Verification results
- Dosage guidelines
- Alternative remedies
-
Uses Google Gemini summarization for clear, simple medical summaries.
-
Frontend: Streamlit
-
Backend: FastAPI
-
AI Models: HuggingFace Transformers (
d4data/biomedical-ner-all), Google Gemini (Generative AI) -
OCR: Google Cloud Vision API
-
Dataset:
dosage.csv+ curated alternative medicines dataset -
Other Libraries:
pandasfor data processingrequestsfor API callsdotenvfor environment management
medify/
βββ README.md
βββ docker-compose.yml
βββ render.yaml
βββ .env.example
β
<<<<<<< Updated upstream
βββ backend/ # FastAPI backend
β βββ Dockerfile
β βββ requirements.txt
β βββ main.py # Entry point for backend
β βββ data_processors/ # Data preprocessing utilities
β β βββ dosage.py
β β βββ prescription.py
β βββ routers/ # API routes
β β βββ ai_router.py
β β βββ drug_info.py
β βββ watson_ai/ # IBM Watson AI integration
β βββ ai_config.py
β βββ interactions.py
β βββ summarizer.py
=======
βββ backend/
β βββ main.py # FastAPI entrypoint
β βββ routers/ # API endpoints
β βββ data_processors/ # Dosage & prescription validation
β βββ watson_ai/ # Gemini AI integration (Gemini client lives here)
>>>>>>> Stashed changes
β
βββ datasets/ # Project datasets
β βββ alt_dataset.py
β βββ dosage.csv
β βββ ner_dataset.py
β
βββ frontend/ # Streamlit/Frontend app
βββ Dockerfile
βββ requirements.txt
βββ app.py # Entry point for frontend
βββ features/ # Core frontend features
βββ ai_services.py
βββ alternative.py
βββ ner.py
βββ ocr.py
βββ verification_client.py
git clone https://github.com/Risspecct/Medify.git
cd medifypython -m venv venv
source venv/bin/activate # Mac/Linux
venv\Scripts\activate # Windowspip install -r requirements.txtCopy .env.example β .env and set:
GENAI_API_KEY=your_genai_api_key
GEMINI_MODEL_ID=models/gemini-1.5
FAST_API_URL=http://127.0.0.1:8000
DOSAGE_FILE_PATH=datasets/dosage.csvcd backend
uvicorn main:app --reloadAPI will be available at: http://127.0.0.1:8000/docs
streamlit run frontend/app.py- Upload a prescription (image, photo, or text).
- Extract entities (NER + OCR).
- Run Drug Interaction Check.
- Perform Manual Verification with dataset.
- Fetch Dosage Guidelines.
- Explore Alternatives & Remedies.
- Generate a Final AI-Powered Summary.
This tool is for educational and research purposes only. It is not a substitute for professional medical advice. Always consult a qualified doctor before taking any medication.