中文

新手如何在自定进度学习环境中使用基于LLM的代码生成器解决CS1编程任务

人机交互 2023-09-26 v1

摘要

随着大语言模型(LLMs)日益流行,理解新手程序员如何使用它们十分重要。我们呈现了对 33 名 10-17 岁学习者独立通过 45 项代码编写任务使用基于 LLM 的代码生成器 Codex 学习 Python 的主题分析。我们探讨与学习者如何使用这些代码生成器相关的若干问题,并分析所写提示与生成代码的属性。具体而言,我们探究(A)学习者使用 Codex 的情境,(B)学习者向 Codex 所求为何,(C)其提示相对于任务描述、语言与清晰度的属性,以及提示构建模式,和(D)AI 生成代码的正确性、复杂度与准确度,以及(E)学习者如何利用 AI 生成代码(就放置、验证与手动修改而言)。此外,我们的分析揭示了使用 AI 代码生成器编写代码时的四种不同编程方式:AI 单次提示,即学习者仅提示 Codex 一次以生成任务的整体解;AI 逐步,即学习者将问题拆分并分别用 Codex 生成各部分;混合,即学习者自行编写部分代码并用 Codex 生成其余部分;以及手动编码,即学习者自行编写代码。AI 单次提示方式在代码编写任务上取得最高正确率,但在训练期间后续代码修改任务上正确率最低。我们的结果初步揭示了新手学习者如何使用 AI 代码生成器,以及将其整合进自定进度学习环境所带来的挑战与机遇。我们以各种过度依赖与自我调控的迹象,以及课程与工具开发的机遇作结。

关键词

引用

@article{arxiv.2309.14049,
  title  = {How Novices Use LLM-Based Code Generators to Solve CS1 Coding Tasks in a Self-Paced Learning Environment},
  author = {Majeed Kazemitabaar and Xinying Hou and Austin Henley and Barbara J. Ericson and David Weintrop and Tovi Grossman},
  journal= {arXiv preprint arXiv:2309.14049},
  year   = {2023}
}

备注

12 pages, Peer-Reviewed, Accepted for publication in the proceedings of the 2023 ACM Koli Calling International Conference on Computing Education Research