AI Health Assistant
This project is a Flask-based web application that provides several machine learning-powered features such as:
- Counseling Response Generation using a GPT-2 model.
- Medication Information Generation using a GPT-2 model.
- Diabetes Classification using a Random Forest classifier.
- Medicine Classification using a K-Nearest Neighbors (KNN) model.
- General Chat powered by LLaMA 3.1 API hosted on Groq Cloud for AI-powered conversations.
The project is divided into two main parts: Backend (Flask) and Frontend (HTML, CSS, JavaScript), with a connection to pre-trained machine learning models.
Project Setup
System Requirements:
- Python 3.8+
- Flask
- Transformers library (for GPT-2 models)
- Joblib (for loading pre-trained models)
- Langchain Groq (for LLaMA integration)
- Frontend: HTML, CSS, JavaScript
Project Structure:
AI Health Assistant/ β βββ backend/ β βββ models/ β β βββ mental_health_model/ β β βββ medication_info/ β β βββ diabetes_model/ β β βββ medication_classification_model/ β βββ utils.py βββ frontend/ β βββ index.html β βββ styles.css β βββ script.js βββ app.py βββ requirements.txt
Backend
Counseling Response Generation:
- Generates counseling-related responses using a GPT-2 mental health model.
Medication Information Generation:
- Provides medication-related responses using a GPT-2 medication model.
Diabetes Classification:
- Classifies users as diabetic or non-diabetic based on glucose, BMI, and age using a Random Forest classifier.
Medicine Classification:
- Predicts suitable medications based on gender, blood type, medical condition, and test results using a K-Nearest Neighbors (KNN) model.
General Chat:
- Offers general chat responses using LLaMA 3.1 API hosted on Groq Cloud for AI-powered conversations.
Frontend
Diabetes Classification Tab:
- Form input for glucose, BMI, and age to classify diabetes risk.
Medicine Classification Tab:
- Input fields for gender, blood type, medical condition, and test results to classify appropriate medications.
Counseling and Medication Tabs:
- Text inputs for receiving AI-generated responses for counseling and medication questions.
General Chat Tab:
- General-purpose chatbot powered by LLaMA 3.1 for natural conversations.
Dark Mode:
- Toggle dark mode for user interface customization.
Usage
Access the Application: Users interact with the web interface, accessible through a browser once the Flask server is running.
Input Data: Users provide medical-related information or general queries depending on the feature they want to use.
Receive Responses: Based on the input, AI models provide responses such as classification results (diabetes, medicine) or generated text (counseling, medication, chat).
Interactive Interface: Users can toggle between different features, making it suitable for general chat, medical insights, or counseling help.