CBIT-AiExam-plus  by reneverland

AI examination platform for schools and enterprises

Created 3 months ago
271 stars

Top 95.1% on SourcePulse

GitHubView on GitHub
Project Summary

This AI-powered examination platform offers a general-purpose solution for schools, training providers, enterprises, and online programs, addressing the need for scalable, personalized, and secure assessments. It delivers multi-disciplinary item generation, adaptive difficulty, semantic scoring, in-depth analytics, and robust security/proctoring features, all within a fully brandable and configurable system designed to empower education with AI.

How It Works

The system leverages Large Language Models (LLMs) and advanced evaluation algorithms to automate and enhance the examination process. Its core approach involves multi-disciplinary item generation across various difficulty tiers and cognitive levels, supporting contextual and randomized question types. For scoring, it combines rule-based evaluation with AI semantic matching and keyword checks, extending to coding tasks validated by test cases. A key advantage is its multi-model AI support, featuring a unified API interface compatible with OpenAI, Claude, and OpenRouter, allowing for dynamic switching, smart degradation to manual modes, and cost optimization based on question difficulty.

Quick Start & Requirements

  • Docker Deployment:
    1. Clone the repository: git clone https://github.com/reneverland/CBIT-AiExam-plus.git
    2. Navigate to the directory: cd CBIT-AiExam-plus
    3. Start with Docker Compose: docker-compose up -d
    4. Access the system: Homepage at http://localhost:8080, Admin Dashboard at http://localhost:8080/admin/dashboard.
    5. Default Admin Credentials: admin / imbagogo.
  • Local Development:
    1. Clone and navigate as above.
    2. Install dependencies: pip install -r requirements.txt
    3. Initialize database: python database/init_db.py
    4. Start the application: python run.py
    5. Access the system: Same URLs and credentials as Docker.
  • Prerequisites: Python 3.11+ (recommended), Docker, docker-compose.

Highlighted Details

  • AI Item Generation: Supports diverse disciplines (e.g., Statistics, CS, Physics) and sub-disciplines, with adjustable difficulty tiers (High-school to PhD) and cognitive levels aligned with frameworks like Bloom's.
  • Security & Integrity: Features identity verification (including SSO), device/network binding, IP/device binding, single-session control, re-entry prevention, tab-switch detection, audit logs, and optional webcam/face proctoring.
  • Auto-Grading: Handles multiple-choice, short-answer, and coding questions using a hybrid approach of rules, AI semantic matching, and test case validation. Offers instant results and detailed feedback.
  • Multi-Model AI Support: Unified API interface for OpenAI, Claude, OpenRouter, etc., with dynamic switching, smart degradation, and cost optimization.
  • Internationalization: Real-time Chinese-English language switching and full multilingual support across all interfaces and the admin backend.
  • Zero-Configuration Deployment: Enables configuration of all parameters, API keys, and branding via a web interface post-startup, with automatic fallback to manual modes if AI is unconfigured.

Maintenance & Community

The project is maintained by Reneverland, with contact available via renshi@cuhk.edu.cn. Community interaction and issue reporting are managed through GitHub Issues and Discussions. The latest version noted is v1.11.0 (2025-09-24).

Licensing & Compatibility

This project is licensed under the MIT License, which is permissive and allows for commercial use, modification, and distribution, including integration into closed-source applications.

Limitations & Caveats

The platform's advanced AI features are dependent on external LLM API services, potentially incurring costs and subject to third-party availability and rate limits. While robust security features are included, advanced proctoring (webcam/face) is noted as optional and may require additional integration or setup. The "general-purpose" nature implies that highly specialized domain configurations might necessitate significant customization.

Health Check
Last Commit

3 months ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
111 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.