AI‑Powered Smart Health Assistant

Web Application

Project Details

Project Information

Project Title: AI‑Powered Smart Health Assistant

Category: Web Application

Semester: Fall 2025

Course: CS619

Complexity: Complex

Supervisor Details

Project Description

AIPowered Smart Health Assistant

 

Project Domain / Category:

 

Web App

 

Abstract / Introduction

 

Finding clear, trustworthy guidance when you’re worried about your health shouldn’t feel overwhelming. This project proposes an AI-powered smart health assistant that listens to how people actually describe their symptoms by text or optional voice, and translates that into likely conditions with strong, evidence-based next steps. Our goal is to reach around 80% top-3 accuracy on a curated symptom condition dataset, while offering practical triage advice (self-care, see a GP, or seek urgent care) and recommending the right specialist for 90%+ of valid queries. To keep the experience transparent, each result comes with an easy-to-read explanation (via SHAP/LIME) for 95%+ of outputs. The system is designed to feel fast and dependable responding in about 2.5 seconds on typical text queries and maintaining 99% uptime during the demo period. And because accessibility matters, the full interface is available in English and Urdu, with accurate voice transcription (target 90%+ on clean audio).

 

Safety note: This assistant offers preliminary guidance only and is not a medical diagnosis. A clear disclaimer appears on every screen, and users are encouraged to consult qualified healthcare professionals for clinical decisions.

 

Functional Requirements:

1. User Roles

 

Guest User: Submit symptoms, view results, and read basic tips.

 

            Registered User (Patient profile): Guest features plus saved history, preferences/language, and PDF export.

 

            Admin/Clinician Reviewer (optional): Manage knowledge base, view anonymized analytics,

 

approve content updates.

2. Core Use Cases

UC01: Submit Symptoms (Text)

 

            Input: Freetext description; optional metadata (age, sex, duration, severity 1–5), risk flags (pregnancy, chronic disease).

 

            Process: NLP preprocessing → symptom entity extraction → feature vector → ML/DL classifier.

 

            Output: Topk likely conditions (with confidence), triage level (selfcare / see GP / urgent care), recommended specialist.

UC02: Submit Symptoms (Voice) — optional

 

            Input: Microphone audio (8–15 s).

            Process: SpeechtoText → same pipeline as UC01.

            Output: Same as UC01.

UC03: Personalized Guidance

 

            Input: User profile (age/sex/history) and current symptoms.

            Process: Ruleaugmented postprocessor (e.g., if fever + age < 5 → pediatrician).

 

 

 

Page 16 of 167

 

3.  Output: Next steps, homecare tips, redflag warnings, specialist type, and when to seek care.

UC04: Explainability Panel

 

            Input: Model output and feature representation.

            Process: SHAP/LIME explainer on the final model.

            Output: Top contributing symptoms/phrases, featureimportance plot, and a short

 

rationale sentence.

UC05: Multilingual UI

 

            Process: UI strings via i18n; Urdu/English toggle with RTL support.

 

            Output: Full UI translated; model output labels localized.

UC06: History & Export (Registered)

            Actions: Save queries and outputs; export last N results as PDF; delete history (GDPRlike).

 

            Output: Downloadable PDF with disclaimer and timestamp.

UC07: Admin Knowledge Base (optional)

 

            Actions: Add/edit symptom synonyms, map conditions→specialist, edit selfcare templates, review logs.

 

            Output: Versioned content with rollback.

UC08: Feedback Loop

            Input: 1–5 helpfulness rating and freetext feedback.

            Output: Stored feedback; optional modelmonitoring dashboard.

 

3. Data & Models

 

            Datasets: Public symptom–condition mappings (e.g., Kaggle/academic) plus curated synonym lists.

 

            Preprocessing: Tokenization; symptom entity extraction; spelling normalization; optional Urdu transliteration support.

 

            Model Options:

            Baseline: Logistic Regression / SVM / RandomForest on multilabel bagofsymptoms.

            NLPEnhanced: Clinicalstyle embeddings (e.g., sentenceBERT) feeding a classifier head.

 

            Hybrid: Rule engine for red flags combined with ML predictions.

 

            Explainability: SHAP Tree/Kernal explainers for tabular; LIME/SHAP for text.

 

         Inputs / Outputs & Validation Inputs:

 

            Text: 5–500 characters; block PII (names/phone/address) with regex before storing.

 

            Voice: 16 kHz mono WAV/WEBM; max 20 s; transcribe then discard raw audio (configurable).

Outputs:

 

Top3 conditions with confidence (0–1), triage level, specialist type, explainability plot, guidance bullets, and disclaimer.

 

Validation & Errors:

 

            Empty/short text → prompt for more details.

            Unsafe content (selfharm) → show emergency resources message.

            Ambiguous symptoms → ask clarifying followups (fever? duration?).

 

         Workflows

            Symptom Flow: Input → Preprocess → Predict → Postprocess (rules) → Explainability → Render

→ Save (if logged in).

 

 

 

Page 17 of 167

 

            Admin Content Flow: Edit KB → Validate schema → Save draft → Preview → Publish → Version bump.

 

6. Security & Privacy

 

            Do not store raw audio by default; store only transcriptions if the user consents.

            Hash user IDs; encrypt at rest (DBlevel).

            Rolebased access control (RBAC) for Admin areas.

 

            Include Terms/Privacy pages; explicit medical disclaimer on every result page.

 

Tools:

Programming & Core AI (Python)

 

            Python 3.11+

 

            ML/NLP: scikitlearn; PyTorch or TensorFlow/Keras; Hugging Face Transformers; sentencetransformers

 

            NLP utils: spaCy (entity patterns), NLTK (tokenization/stopwords), regex

 

            Explainability: SHAP, LIME

 

            Speech (optional): Vosk/Coqui STT or Whisper (local), SpeechRecognition wrapper

 

            Data: pandas, numpy

 

Backend & APIs

 

            Framework: FastAPI (preferred) or Flask

            Auth & Security: JWT (PyJWT), passlib/bcrypt, pydantic validation, ratelimiting (slowapi)

 

            Persistence: PostgreSQL (prod) / SQLite (dev); SQL Alchemy/SQLModel; Redis for caching

            Storage: Local or S3compatible for exports (PDFs)

 

Frontend & UI

            Web: React (Vite) or serverrendered templates (Jinja) with HTMX/Alpine.js

 

            UI Kit: Tailwind CSS; Plotly.js or Chart.js for explainability visualizations

            i18n: i18next (web) or gettextstyle JSON catalogs; RTL CSS support

 

Supervisor:

Name: Shakeel Saeed

 

Email ID: shakeel@vu.edu.pk

MS Teams ID: shakeelsaeedvu@outlook.com

Languages

  • Python, HTML, CSS, JavaScript Language

Tools

  • scikit-learn, PyTorch, TensorFlow, Keras, Hugging Face Transformers, sentence-transformers, spaCy, NLTK, regex, SHAP, LIME, Vosk, Coqui STT, Whisper, SpeechRecognition, pandas, numpy, FastAPI, Flask, JWT (PyJWT), passlib, bcrypt, pydantic, slowapi Tool

Project Schedules

No schedules available for this project.

Viva Review Submission

Review Information
Supervisor Behavior

Student Viva Reviews

No reviews available for this project.