论文
教语言模型像学习者一样编程:面向学生模拟的对话式序列化
Teaching Language Models How to Code Like Learners: Conversational Serialization for Student Simulation
摘要
模拟学习者在教育系统中如何行动和反应的人工模型是大规模评估辅导策略和反馈机制的有前途的工具。然而,编程教育中的许多现有方法依赖于促进大型专有语言模型,引发了对隐私、成本和依赖性的担忧。在这项工作中,我们提出了一种使用真实的学生过程数据来训练开放权重人工编程学习者的方法。我们的方法将时间日志跟踪序列化为对话格式,将每个学生的问题解决过程表示为学习者与其自动评估系统之间的对话。学生代码提交和环境反馈(例如测试结果、成绩和错误跟踪)形成交替的对话轮流,使模型能够从迭代调试过程中学习。我们还引入了一个训练管道,将监督微调与偏好优化相结合,以使模型与真实的学生调试行为保持一致。我们通过在真实学生提交的 Python 编程作业的大规模数据集上训练 4B 和 8B 规模的 Qwen 模型来评估我们的框架。我们的结果表明,纳入环境反馈增强了模型复制学生调试行为的能力,比之前的纯代码方法有所改进,并促进了功能对齐和代码相似性方面的大语言模型基线。我们发布代码以支持可重复性。