Spaces:
Running
Running
A newer version of the Gradio SDK is available:
6.6.0
metadata
title: AutoGrader
emoji: 🧠
colorFrom: indigo
colorTo: purple
sdk: gradio
sdk_version: 6.3.0
app_file: app.py
pinned: false
AutoGrader
AutoGrader is a CPU-only, LLM-based academic grading system that evaluates student submissions using a provided question paper and rubric, while also awarding marks for logically correct alternative solutions.
Key Features
- Runs entirely on CPU (Hugging Face Spaces compatible)
- Rubric-aware grading with flexibility for alternative correct answers
- Prompt-controlled evaluation (e.g. grade only Q2, grade Q2 & Q4, custom marks)
- Multiple model options (user-selectable)
- Less deterministic grading via controlled sampling
- Structured JSON output for reliable parsing
- Works via Hugging Face API (can be called from Kaggle or other platforms)
Supported Models
- Phi-3-mini (fast, CPU-friendly)
- Mistral-7B-Instruct (higher quality, slower on CPU)
Model weights are not stored in this repository and are automatically downloaded from the Hugging Face Hub at runtime.
How It Works
- The student submission is first analyzed to extract key ideas.
- A second evaluation step grades the answer using the rubric and grading instructions.
- Marks are assigned fairly, even for solutions not explicitly listed in the rubric.
- Output is returned as strict JSON.
Input Fields
- Question Paper
- Rubric
- Grading Instruction
Example:Grade only Question 2 out of 20 marks - Student Submission
Output
A structured JSON containing:
- Total marks
- Per-question marks
- Short justification
Limitations
- CPU-only inference means higher latency for larger models
- LLM-based grading is not fully deterministic
- Designed for academic assistance, not high-stakes automated grading without review
License & Usage
This project uses open-source models from the Hugging Face Hub.
Please ensure model licenses are respected when deploying or redistributing.
Built for flexible, research-oriented automated assessment.