EduTwin is an AI-powered system that creates a Digital Twin of a student using a dynamic Live Learner Profile (LLP) built from real user data. It leverages Large Language Models (LLMs) to simulate student behavior, diagnose weaknesses, predict performance, and generate personalized learning content.
Most education systems treat students uniformly despite differences in:
- Learning pace
- Background knowledge
- Study habits
- Cognitive preferences
EduTwin addresses this by building a personalized AI twin for each student, enabling adaptive and intelligent learning.
- Secure login/signup
- Password hashing and session handling
- Stores real student data (no synthetic data)
- Persistent and updatable learner profiles
- Dynamic representation of student state
- Includes academic, behavioral, and self-reported data
- Identifies weak topics using LLM reasoning
- Tailored explanations based on student profile
- Predicts future performance (High / Medium / Low)
- Simulates how a student would answer exam questions
EduTwin/
├── data/
│ ├── generate_data.py
│ └── raw/
├── core/
│ ├── profile_builder.py
│ └── llp_updater.py
├── twin/
│ ├── prompt_engine.py
│ ├── weakness_diagnoser.py
│ ├── explainer.py
│ ├── predictor.py
│ ├── exam_simulator.py
│ └── twin_engine.py
├── database/
│ ├── db.py
│ └── crud.py
├── auth/
│ └── auth.py
├── ui/
│ ├── app.py
│ └── views/
│ ├── student_view.py
│ ├── teacher_view.py
│ └── profile_form.py
├── setup.py
├── requirements.txt
└── README.md
- LLM: Groq API
- Backend: Python
- Frontend/UI: Streamlit
- Database: SQLite
- Auth: Custom authentication with hashed passwords
-
User Authentication
- Student signs up / logs in
-
Profile Creation
-
Student inputs:
- Academic scores
- Study habits
- Confidence levels
-
-
Database Storage
- Data stored and managed via CRUD operations
-
LLP Generation
- Profile Builder creates structured learner profile
-
LLM Twin Engine
-
Uses LLP for:
- Weakness detection
- Explanation generation
- Prediction
- Simulation
-
git clone https://github.com/suryanshdeo/Edu-Twin.git
cd EduTwinpython -m venv venvActivate:
- Windows:
venv\Scripts\activate- Mac/Linux:
source venv/bin/activatepip install -r requirements.txtCreate a .env file:
GROQ_API_KEY=your_api_key_here
The app loads this .env automatically at startup.
For cloud deployments, set GROQ_API_KEY in the platform's environment-variable settings.
streamlit run ui/app.py-
Sign up / Log in
-
Fill profile form
-
Generate learner profile
-
Use:
- Weakness diagnosis
- Topic explanation
- Performance prediction
- Exam simulation
- View all students
- Analyze class trends
- Identify weak learners
| Capability | Metric |
|---|---|
| Weakness Diagnosis | Precision / Recall |
| Prediction | Accuracy / F1 |
| Explanation | Human Rating |
| Simulation | Behavioral Similarity |
- Password hashing (bcrypt)
- Environment variable usage for API keys
- No sensitive data stored in repo
- 📅 Temporal tracking of student progress
- 🔁 Counterfactual analysis
- 👥 Student clustering
- 🌐 Deployment (Streamlit Cloud)
- 📊 Advanced analytics dashboard