AI_Health_Assistant / README.md
hassaanik's picture
Update README.md
8e02eef verified
---
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.
### WebApp
![App Screenshot](https://huggingface.co/datasets/hassaanik/HealthCare_Bot_App/resolve/main/AI%20Health%20Assisstant.gif)