A LLM-based grading tool to help teachers grade assignments
This tool is a work in progress and should NOT be used in a production environment where the accuracy of the result is vital.
Vision-Enabled LLM Used - Qwen3-VL:8B
Ministral-3:14b and 8b versions in testing
A desktop or laptop computer with a dedicated graphics card with 12 or more gigabytes of VRAM is recommended.
This program should theoretically work with any Ollama supported GPU and operating system, but your mileage may vary.
This program has only been tested on Zorin OS 18 (Ubuntu 24.04 LTS) as well as Fedora 43 with an AMD RX 9060 XT (16gb), but is also confirmed working with an NVIDIA RTX 4080 under CachyOS (Arch Linux).
-
Install and confirm Ollama is running
Confirm Ollama is running
ollama status
-
Download the latest release
git clone https://github.com/epiccoder9163/grading-tool.git cd grading-tool -
Create a venv environment
python3 -m venv venv
-
Enter the venv environment
MacOS/Linux
source /venv/bin/activateWindows
venv/bin/activate
-
Install dependencies
pip install -r requirements.txt
-
Run the app
python3 ./gui.py
- Run gui.py
- Insert your file paths
- Save the assignment
- Wait for your results
- Export to CSV or TXT format (more formats coming soon!)
- Can grade handwritten assignments
- Can export to a file (CSV and TXT)
- Can explain incorrect answers
- Can only take image files (.png or .jpeg), no PDFs or other documents
- Can only accept multiple choice or simple numerical answers, no special math characters.
- Answers have to be boxed or highlighted for the LLM to find the answer correctly, otherwise it (probably) won't work
- This program needs ollama to run, you can install it at https://ollama.com
- May have limitations grading (particularly explaining) longer and more complex single-page assignments due to the simple grading pipeline
- There need to be the same number of pages in the homework and answer key. There also should be the same number of questions.
- Suggest new features and report bugs in the issues tab!
- Roadmap
- Ollama
- For the LLM backend
- Alibaba Cloud
- For the Qwen3-VL model used for text extraction
