Deployed internally at ASU
PhysicsGrader / Graviton
395 students, one grader that doesn't get tired
The problem
Grading experimental physics lab reports well takes real judgment — checking a student's error analysis, not just their final number — but doing that consistently for hundreds of students across ten lab sections is a lot of TA hours, and consistency between graders is hard to guarantee.
What I built
PhysicsGrader (internally, Graviton) is a production LLM-based autograder integrated directly with Canvas via its LMS API, built on LangChain with a Next.js front end. It serves 395 students across 10 lab courses.
Because this grades real coursework that affects real grades, correctness and trust mattered as much as the ML itself: the system runs hallucination and factuality checks on its own output before it reaches a student, and enforces role-based access control, multi-factor authentication, and data encryption to meet ASU's compliance requirements.
Impact
In practice, it cut grading time by 60% while improving feedback consistency across sections — the same rubric applied the same way to every submission, with TAs able to spend their remaining time on the students who actually need help rather than repetitive scoring.