Skip to content

Epiccoder9163/grading-tool

Repository files navigation

LLM Grading Tool

A LLM-based grading tool to help teachers grade assignments

A screenshot of the program

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

System Requirements

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).

How to install

  1. Install and confirm Ollama is running

    Download Ollama

    Confirm Ollama is running

    ollama status
  2. Download the latest release

    git clone https://github.com/epiccoder9163/grading-tool.git
    cd grading-tool
  3. Create a venv environment

    python3 -m venv venv
  4. Enter the venv environment

    MacOS/Linux

    source /venv/bin/activate

    Windows

    venv/bin/activate
  5. Install dependencies

    pip install -r requirements.txt
  6. Run the app

    python3 ./gui.py

Usage

  1. Run gui.py
  2. Insert your file paths
  3. Save the assignment
  4. Wait for your results
  5. Export to CSV or TXT format (more formats coming soon!)

Features

  • Can grade handwritten assignments
  • Can export to a file (CSV and TXT)
  • Can explain incorrect answers

Limitations

  • 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.

To Do

  • Suggest new features and report bugs in the issues tab!
  • Roadmap

Credits

  • Ollama
    • For the LLM backend
  • Alibaba Cloud
    • For the Qwen3-VL model used for text extraction

Star History Chart

About

A LLM-based grading tool to help teachers grade math and science tests and quizzes

Topics

Resources

License

Stars

2 stars

Watchers

2 watching

Forks

Contributors

Languages