Challenge
Developing an intelligent tutoring system requires more than generating questions—it must personalize learning based on student performance, provide meaningful explanations, and preserve learning progress across sessions.
The challenge was to design a modular AI application capable of supporting multiple LLM providers, offline inference through GGUF models, adaptive assessments, and persistent learner analytics while remaining easy to configure and extend.
Complexity & Innovation
- The project combines LLM-powered question generation with a Bayesian knowledge tracing algorithm to estimate student mastery and dynamically adjust quiz difficulty. Its modular architecture separates tutoring, assessment, explanations, and storage into independent components for maintainability.
- Additionally, the platform supports both cloud APIs and offline inference using llama.cpp with GGUF models, enabling fully local AI tutoring without requiring internet connectivity or external API keys.
Process
- Accept the subject, topic, and quiz configuration from the user.
- Generate curriculum-based questions using the selected LLM.
- Evaluate responses and adapt question difficulty based on learner performance.
- Provide detailed explanations and save session progress for future learning.
Feature Inventory
- Adaptive Quiz Engine: The platform continuously adjusts question difficulty using a Bayesian knowledge tracing algorithm that considers student accuracy and response time. This creates a personalized learning experience where questions become progressively easier or more challenging based on the learner's demonstrated mastery.
- Document-Aware Learning: Students can upload PDF and DOCX study materials, which are converted into vector embeddings for context-aware question generation and explanations. This allows the tutor to generate quizzes directly from custom learning resources instead of relying solely on predefined curricula.
- Offline & Multi-Model AI Support: The application supports both cloud-based LLM providers and fully offline inference using GGUF models through llama.cpp. Users can switch between different models via configuration files, enabling flexible deployment in environments with or without internet connectivity.
Conclusion
Exam Tutor demonstrates the practical application of AI in personalized education by combining adaptive assessments, intelligent content generation, and flexible model deployment within a modular tutoring platform. It is designed for students preparing for examinations, educators building AI-assisted learning environments, and developers exploring intelligent educational systems powered by Large Language Models.