1- # π AcadAI β AI Academic Performance Prediction & Career Guidance System
1+ # AcadAI β AI Academic Performance Prediction & Career Guidance System
22
3- < div align = " center " >
3+ ** A professional AI-powered desktop application that predicts student GPA, detects weak subjects, recommends careers, and generates personalized study plans β built as a 4th Semester BSAI Project. **
44
5- ![ Python] ( https://img.shields.io/badge/Python-3.10+-3776AB?style=for-the-badge&logo=python&logoColor=white )
6- ![ PyQt5] ( https://img.shields.io/badge/PyQt5-GUI-41CD52?style=for-the-badge&logo=qt&logoColor=white )
7- ![ scikit-learn] ( https://img.shields.io/badge/scikit--learn-ML-F7931E?style=for-the-badge&logo=scikit-learn&logoColor=white )
8- ![ SQLite] ( https://img.shields.io/badge/SQLite-Database-003B57?style=for-the-badge&logo=sqlite&logoColor=white )
9- ![ License] ( https://img.shields.io/badge/License-MIT-green?style=for-the-badge )
5+ ---
106
11- ** A professional AI-powered desktop application that predicts student GPA, detects weak subjects, recommends careers, and generates personalized study plans β built as a 4th Semester BSAI Project. **
7+ ## Project Info
128
13- [ Features] ( #-features ) Β· [ Screenshots] ( #-screenshots ) Β· [ Installation] ( #-installation ) Β· [ Usage] ( #-usage ) Β· [ Tech Stack] ( #-tech-stack ) Β· [ Project Structure] ( #-project-structure )
9+ ** Subject:** Artificial Intelligence
10+ ** Semester:** 4th
11+ ** Submitted To:** [ Dr. Muhammad Siddique] ( mailto:msiddique@nfciet.edu.pk )
1412
15- </div >
13+ ** Members:**
14+ - [ Faizan Ishfaq] ( https://github.com/faizanrajpoot774-debug )
15+ - [ Muawiya Amir] ( https://github.com/Muawiya-contact )
1616
1717---
1818
19- ## π Overview
19+ ## Overview
2020
21- ** AcadAI** is an intelligent academic analytics platform built for university students. It uses ** Machine Learning** to predict future GPA, detect at-risk students, recommend career paths based on academic profile, and generate AI-powered study plans β all inside a clean, professional desktop GUI.
21+ ** AcadAI** is an intelligent academic analytics platform built for university students. It uses Machine Learning to predict future GPA, detect at-risk students, recommend career paths based on academic profile, and generate AI-powered study plans β all inside a clean, professional desktop GUI.
2222
23- > Built with Python Β· PyQt5 Β· scikit-learn Β· SQLite Β· Matplotlib
23+ Built with Python Β· PyQt5 Β· scikit-learn Β· SQLite Β· Matplotlib
2424
2525---
2626
27- ## β¨ Features
27+ ## Features
2828
2929| Feature | Description |
3030| ---| ---|
31- | π ** GPA Prediction** | Random Forest + Ridge Regression model predicts next semester GPA with ~ 91% confidence |
32- | β οΈ ** Weak Subject Detection** | ML model identifies subjects needing attention and suggests improvement strategies |
33- | π― ** Career Recommendation** | AI matches student profile (GPA + skills + interests) to best-fit career paths |
34- | π§ ** Skill Roadmap** | Personalized step-by-step learning roadmap for chosen career goal |
35- | π
** Study Planner** | AI generates weekly study schedules prioritizing weak subjects |
36- | π€ ** AI Chatbot** | NLP-based academic assistant that reads live database and answers student queries |
37- | π ** Analytics Dashboard** | Interactive charts: GPA trends, subject radar, risk distribution, attendance analysis |
38- | π₯ ** Student Management** | Add, edit, import students via CSV β full CRUD with SQLite backend |
39- | π€ ** CSV Import/Export** | Bulk import 60+ students from CSV; export reports |
31+ | GPA Prediction | Random Forest + Ridge Regression model predicts next semester GPA with ~ 91% accuracy |
32+ | Weak Subject Detection | ML model identifies subjects needing attention and suggests improvement strategies |
33+ | Career Recommendation | Matches student profile (GPA + skills + interests) to best-fit career paths |
34+ | Skill Roadmap | Personalized step-by-step learning roadmap for chosen career goal |
35+ | Study Planner | Generates weekly study schedules prioritizing weak subjects |
36+ | AI Chatbot π€ | NLP-based academic assistant that reads live database and answers student queries |
37+ | Analytics Dashboard | Interactive charts: GPA trends, subject radar, risk distribution, attendance analysis |
38+ | Student Management | Add, edit, import students via CSV β full CRUD with SQLite backend |
39+ | CSV Import/Export | Bulk import 60+ students from CSV; export reports |
4040
4141---
4242
43- ## πΌοΈ Screenshots
44-
45- > _ Add screenshots of your running app here after launch_
46-
47- ```
48- Dashboard β Analytics β Career Page β Chatbot β Study Planner
49- ```
50-
51- ---
52-
53- ## π οΈ Installation
43+ ## Installation
5444
5545### Prerequisites
5646
57- Make sure you have ** Python 3.10+** installed. Check with :
47+ Make sure you have ** Python 3.10+** installed:
5848
5949``` bash
6050python --version
@@ -79,7 +69,7 @@ pip install -r requirements.txt
7969python generate_dataset.py
8070```
8171
82- This creates ` datasets/student_data.csv ` with ** 60 realistic student records** .
72+ This creates ` datasets/student_data.csv ` with 60 realistic student records.
8373
8474### Step 4 β Run the Application
8575
@@ -89,16 +79,14 @@ python main.py
8979
9080---
9181
92- ## π¦ Requirements
93-
94- ```
82+ ## Requirements
83+ ``` batch
9584PyQt5>=5.15.0
9685matplotlib>=3.7.0
9786scikit-learn>=1.3.0
9887pandas>=2.0.0
9988numpy>=1.24.0
10089```
101-
10290Install all at once:
10391
10492``` bash
@@ -107,9 +95,8 @@ pip install PyQt5 matplotlib scikit-learn pandas numpy
10795
10896---
10997
110- ## ποΈ Project Structure
111-
112- ```
98+ ## Project Structure
99+ ``` txt
113100acadai-academic-system/
114101β
115102βββ main.py # App entry point
@@ -119,29 +106,29 @@ acadai-academic-system/
119106βββ README.md
120107β
121108βββ database/
122- β βββ __init__ .py
109+ β βββ init .py
123110β βββ db_manager.py # SQLite CRUD + stats queries
124111β
125112βββ models/
126- β βββ __init__ .py
113+ β βββ init .py
127114β βββ prediction_model.py # GPAPredictor β Random Forest ensemble
128115β βββ training.py # Model training from CSV data
129116β
130117βββ chatbot/
131- β βββ __init__ .py
118+ β βββ init .py
132119β βββ chatbot_engine.py # NLP chatbot β reads live DB data
133120β
134121βββ analytics/
135- β βββ __init__ .py
122+ β βββ init .py
136123β βββ analytics_engine.py # Stats engine for dashboard
137124β
138125βββ recommender/
139- β βββ __init__ .py
126+ β βββ init .py
140127β βββ career_recommender.py # Career match scoring
141128β βββ study_planner.py # Weekly study plan generator
142129β
143130βββ ui/
144- β βββ __init__ .py
131+ β βββ init .py
145132β βββ main_window.py # Main app window + navigation
146133β βββ dashboard_page.py # Overview + metric cards
147134β βββ analytics_page.py # Charts + AI predictor
@@ -151,7 +138,7 @@ acadai-academic-system/
151138β βββ planner_page.py # Study planner
152139β βββ chatbot_page.py # AI chatbot interface
153140β βββ components/
154- β βββ __init__ .py
141+ β βββ init .py
155142β βββ cards.py # Reusable card widgets
156143β βββ charts.py # Matplotlib chart components
157144β βββ sidebar.py # Navigation sidebar
@@ -161,28 +148,27 @@ acadai-academic-system/
161148β βββ theme.py # Global QSS stylesheet
162149β
163150βββ datasets/
164- βββ student_data.csv # Auto-generated by generate_dataset.py
151+ βββ student_data.csv # Auto-generated by generate_dataset.py
165152```
166-
167153---
168154
169- ## π€ AI & ML Concepts Used
155+ ## AI & ML Concepts Used
170156
171157| Concept | Implementation |
172158| ---| ---|
173- | ** Random Forest** | GPA prediction model (` models/prediction_model.py ` ) |
174- | ** Ridge Regression** | Ensemble GPA prediction alongside Random Forest |
175- | ** Classification** | Student risk level detection (High / Medium / Low) |
176- | ** Recommendation System** | Career matching based on GPA + skills + interests |
177- | ** NLP (Keyword Matching)** | Chatbot intent detection and response generation |
178- | ** Data Analytics** | Performance trend analysis across semesters |
179- | ** Predictive Modeling** | Future GPA projection for next 2 semesters |
159+ | Random Forest | GPA prediction model (` models/prediction_model.py ` ) |
160+ | Ridge Regression | Ensemble GPA prediction alongside Random Forest |
161+ | Classification | Student risk level detection (High / Medium / Low) |
162+ | Recommendation System | Career matching based on GPA + skills + interests |
163+ | NLP (Keyword Matching) | Chatbot intent detection and response generation |
164+ | Data Analytics | Performance trend analysis across semesters |
165+ | Predictive Modeling | Future GPA projection for next 2 semesters |
180166
181167---
182168
183- ## π Dataset
169+ ## Dataset
184170
185- The included dataset generator (` generate_dataset.py ` ) creates realistic student records with:
171+ The dataset generator (` generate_dataset.py ` ) creates realistic student records with:
186172
187173| Column | Description |
188174| ---| ---|
@@ -194,68 +180,58 @@ The included dataset generator (`generate_dataset.py`) creates realistic student
194180| ` assignment ` | Assignment score (38β96/100) |
195181| ` midterm ` | Midterm exam score (32β95/100) |
196182| ` study_hours ` | Daily study hours (0.5β7.0) |
197- | ` gpa ` | Calculated GPA (0.0β4.0) |
183+ | ` gpa ` | Predicted GPA (0.0β4.0) |
198184| ` interest ` | Career interest area |
199185| ` skills ` | Current technical skills |
200186
201- ** GPA Formula:**
202- ```
203- GPA = (AttendanceΓ0.20 + QuizΓ0.20 + AssignmentΓ0.20 + MidtermΓ0.30 + StudyHoursΓ0.10) Γ 4.0
204- ```
205-
206187---
207188
208- ## π¬ Chatbot β How It Works
189+ ## Chatbot β How It Works
209190
210- The AI chatbot reads ** live data from the SQLite database** and generates dynamic responses. It is not hardcoded .
191+ The AI chatbot reads live data from the SQLite database and generates dynamic responses.
211192
212- ** Example questions you can ask:**
213- ```
214- "How can I improve my GPA?"
193+ Example questions:
194+ > "How can I improve my GPA?"
215195 "Who are the top students?"
216196"Which career suits me?"
217197"What skills should I learn for AI?"
218198"How many students are at risk?"
219199"Generate a study plan"
220200"What is the class average GPA?"
221- ```
222201
223202---
224203
225- ## π― Career Recommendation System
204+ ## Career Recommendation System
226205
227206Career matches are scored using a weighted algorithm:
228207
229208``` python
230209match_score = (
231- gpa_score Γ 0.40 + # Academic performance
232- skills_match Γ 0.35 + # Matching skills
233- interest_match Γ 0.25 # Career interest alignment
210+ gpa_score * 0.40 + # Academic performance
211+ skills_match * 0.35 + # Matching skills
212+ interest_match * 0.25 # Career interest alignment
234213)
235214```
236215
237216---
238217
239- ## π¨βπ» Author
218+ ## Authors
219+
220+ ** Faizan Ishfaq** (2k24_bsai_50) β BS Artificial Intelligence, Semester 4, NFC IET, Multan
240221
241- ** Ali Khan**
242- BS Artificial Intelligence β Semester 4
243- COMSATS University Islamabad
222+ ** Muawiya Amir** (2k24_bsai_72) β BS Artificial Intelligence, Semester 4, NFC IET, Multan
244223
245224---
246225
247- ## π License
226+ ## License
227+
228+ This project is licensed under the MIT License β free to use, modify, and distribute.
248229
249- This project is licensed under the ** MIT License** β feel free to use, modify, and distribute.
250230---
251- ## π Acknowledgements
231+
232+ ## Acknowledgements
252233
253234- [ scikit-learn] ( https://scikit-learn.org/ ) β Machine Learning library
254235- [ PyQt5] ( https://riverbankcomputing.com/software/pyqt/ ) β Desktop GUI framework
255236- [ Matplotlib] ( https://matplotlib.org/ ) β Data visualization
256- - [ Kaggle] ( https://kaggle.com/ ) β Dataset inspiration
257-
258- ---
259- <div align =" center " >
260- <b >β Star this repo if you found it helpful!</b >
261- </div >
237+ - [ Kaggle] ( https://kaggle.com/ ) β Dataset inspiration
0 commit comments