|
--- |
|
license: mit |
|
--- |
|
|
|
# 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 |
|
|
|
1. **Access the Application:** Users interact with the web interface, accessible through a browser once the Flask server is running. |
|
|
|
2. **Input Data:** Users provide medical-related information or general queries depending on the feature they want to use. |
|
|
|
3. **Receive Responses:** Based on the input, AI models provide responses such as classification results (diabetes, medicine) or generated text (counseling, medication, chat). |
|
|
|
4. **Interactive Interface:** Users can toggle between different features, making it suitable for general chat, medical insights, or counseling help. |
|
|