Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

REFINE: Real-world Exploration of Interactive Feedback and Student Behaviour

Access Online appendix: Appendix.pdf

Abstract

Formative feedback is central to effective learning, yet providing timely, individualized feedback at scale remains a persistent challenge. While recent work has explored the use of large language models (LLMs) to automate feedback, most existing systems still conceptualize feedback as a static, one-way artifact, offering limited support for interpretation, clarification, or follow-up. In this work, we introduce REFINE, a locally deployable, multi-agent feedback system built on small, open-source LLMs that treats feedback as an interactive process. REFINE combines a pedagogically grounded feedback generation agent with an LLM-as-a-judge–guided regeneration loop using a human-aligned judge, and a self-reflective tool-calling interactive agent that supports student follow-up questions with context-aware, actionable responses. We evaluate REFINE through controlled experiments and an authentic classroom deployment in an undergraduate computer science course. Automatic evaluations show that judge-guided regeneration significantly improves feedback quality, and that the interactive agent produces efficient, high-quality responses comparable to a state-of-the-art closed-source model. Analysis of real student interactions further reveals distinct engagement patterns and indicates that system-generated feedback systematically steers subsequent student inquiry. Our findings demonstrate the feasibility and effectiveness of multi-agent, tool-augmented feedback systems for scalable, interactive feedback.

Repository structure

  • web/: Next.js (React) frontend. Dependencies and scripts live in web/package.json.
  • core/: Python backend and agents. Python dependencies live in core/requirements.txt.

Web app

REFINE includes a web application (web/) backed by a Python service (core/).

Install dependencies

Frontend (Node/Next.js):

cd web
npm install

Backend (Python):

python3 -m venv .venv
source .venv/bin/activate
pip install -r core/requirements.txt

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages