- 收藏
- 加入书签
基于大语言模型的计算机编程教学改革探索
摘要:随着人工智能技术,特别是自然语言处理技术的迅速发展,传统的编程教育模式面临着新的机遇与挑战。为了提升学生的编程能力和学习效果,本研究设计并实现了一个基于大语言模型的编程教学系统。该系统通过自动化代码生成、代码分析、错误检测、个性化学习建议及习题推荐、做题训练等功能,帮助学生克服编程学习中的难题,增强了学习效果和学生参与度。同时,教师端通过智能数据分析与自动评分功能,优化了教学管理,提供了针对性的教学支持。通过实际应用验证,系统有效地提升了学生的编程能力,并推动了编程教育的改革和创新。未来,随着技术的进一步发展,系统功能将得到扩展,以更好地满足教学需求,推动编程教育的智能化与个性化。
关键词:大语言模型,编程教育,智能教学,个性化学习,教育改革
引言
2022年,教育部发布《人工智能促进教育变革创新》,提出要加快推动人才培养模式和教学方法改革,深度融合人工智能与教育,推动教育变革创新[1]。高校教师在此过程中发挥重要作用,通过应用智能技术,提升课堂互动性和参与度,并根据学生的学习情况提供个性化辅导。
计算机编程是现代高等教育的重要内容,不仅教授代码编写,还培养学生的逻辑思维、问题解决能力和创新意识。然而,传统编程教学面临挑战,学生参与度低,编程学习的抽象性和复杂性使得学生容易感到困惑,并影响学习兴趣。教师难以及时了解学生的学习状态,作业反馈滞后,影响学生及时纠正错误,降低学习效果[2]。近年来,人工智能和自然语言处理技术的进展,尤其是大语言模型(如GPT、BERT等),大大提升了机器对自然语言的理解和生成能力。这些模型在编程教育中具有广泛应用,能够实现代码生成与补全、即时反馈与纠错、个性化学习支持等功能,推动教育方法和教学模式的创新[3]。
本文主要探索大语言模型在高校计算机编程课程中的应用,开发了基于大语言模型的编程教学系统[4],用于提升学生在高校计算机编程课程中的学习效果,增强学生的参与度,并推动编程教育的改革与创新。
1.基于大语言模型的编程教学系统设计
1.1系统整体框架
基于大语言模型的编程教学系统通过大语言模型来支持教师和学生的互动,同时收集和分析学生的学习行为,以提供个性化的学习支持,系统分为前端设计和后端设计两个部分,后端通过与前端的接口交互,确保学生和教师能够实时获取必要的反馈和建议。后端将学生的学习数据和大语言模型的处理结果通过API接口传递到前端,展示给学生和教师,系统框图如图1所示。
1.2前端部分
前端部分主要涉及教师和学生的交互界面,学生端功能包括以下功能:
(1)代码生成:当学生遇到难以实现的功能时,系统根据自然语言描述自动生成参考代码,帮助学生理解编程实现[5]。
(2)代码分析:系统自动为每行代码添加注释,帮助学生理解每个代码块的功能,特别是复杂算法和逻辑。
(3)错误检测:系统通过智能化检测,帮助学生识别并修正代码中的语法和常见错误,从而提升编程能力。
(4)个性化学习建议:系统根据学生的错误记录和编程任务,识别学生的薄弱环节,提供相应的练习和学习资源[6]。
(5)习题推荐:系统根据学生的学习进展和错误记录,推荐针对性习题,帮助学生解决弱点,提升技能[7]。
(6)做题训练:学生可根据推荐选择不同难度习题进行训练,强化薄弱环节,逐步提高编程水平。
教师端为教师提供全面的教学管理和评估工具。通过智能化的数据分析和自动化评分,教师能够更加高效地管理学生的学习进度,评估学生的编程能力,并根据分析结果进行个性化指导,教师端功能如下:
(1)代码完成时间:系统记录学生每个任务的完成时间,帮助教师了解学生在各编程阶段的进展,及时发现学习瓶颈。
(2)实验代码评分[8]:系统基于预设评分标准(如代码正确性、效率、结构)自动评分,教师可快速查看学生得分,节省批改时间[9]。
(3)单个学生样本分析:教师能查看学生作业,系统自动标记问题并提供错误类型与位置,帮助教师有针对性地反馈。
(4)多学生样本分析:系统对比多个学生的作业,生成数据可视化报告,帮助教师了解整体学习状况和薄弱环节,从而优化教学策略。
1.3后端部分
后端是整个计算机编程教学系统的重要组成部分,主要负责数据存储、逻辑处理、大语言模型的调用、试题数据库的管理与支持前端功能的实现。后端通过处理学生的学习数据和与大语言模型进行推理的交互,提供必要的数据支持,帮助学生和教师更好地追踪学习进度、优化教学效果,并提供个性化的学习建议。
(1)百度千帆大语言模型:该模型是系统核心技术,支持自然语言理解和编程代码生成、优化。通过API接口与学生的自然语言请求互动,生成代码或提供修正建议。
(2)数据库:数据库存储各种编程、算法、数据结构题目,涵盖不同难度。系统根据学生的学习进度和薄弱环节,自动从题库中抽题,帮助学生巩固知识。
(3)学习行为:系统记录学生的编程任务、代码内容、错误类型及频率。通过分析学生的错误模式,提供有针对性的学习支持。
(4)学情分析:学情分析模块通过收集学生学习数据,识别薄弱环节和学习瓶颈,为学生提供个性化建议,并为教师提供详细报告,帮助优化教学策略。
技术实现
本系统的开发环境与工具提供高效、灵活的编程教学体验,确保系统的稳定性和可扩展性。
(1)开发环境:本系统基于Windows操作系统,使用Visual Studio Code(VSCode)作为集成开发环境,提供插件支持、智能代码补全和调试功能,提升开发效率。
(2)前端开发:前端部分采用Vite构建工具,结合TypeScript和Vue框架进行开发,具备良好的兼容性和可扩展性,适应现代前端应用需求。
(3)数据库:系统使用SQL Server 2019进行数据存储和管理,支持高效的数据处理与持久化,记录学生学习行为、编程任务和习题数据,并提供实时数据分析支持。
(4)大语言模型与API调用:系统核心功能依赖百度千帆大语言模型。通过API调用,系统实现自然语言输入与编程代码的生成、优化和分析,提供实时反馈与个性化建议。
(5)推理服务选择:学生端使用千帆大语言模型ERNIE-Lite-Pro,教师端使用ERNIE-Speed-Pro。两者结合提升了系统的运行效率,确保稳定性。
(6)Prompt工程:通过设计精确的Prompt模板,系统在API调用时根据任务需求处理输入,确保大语言模型能有效理解并生成编程代码、优化逻辑、提供修正与建议。
2.系统在教学中的应用
系统的代码生成、代码分析、错误检测、个性化学习建议和习题推荐等功能均已完美实现,并充分满足了设计需求。尽管由于篇幅限制,我们未能逐一展示系统的所有反馈结果,但每项功能都经过精心设计,确保了学生在学习编程过程中能够得到及时、精准的支持。为了更好地展示系统的实际效果,我们特别选取了实验代码评分功能和多学生样本分析功能,详细呈现了系统的反馈结果。这两项功能在提升教学效率和优化学习体验方面发挥了关键作用,具体的反馈结果将进一步验证系统在智能化教育中的卓越表现。
2.1实验代码评分验证
教师利用系统的自动评分功能,快速对学生提交的编程作业或实验报告进行评分,系统根据代码的正确性、优化性、结构等标准自动生成评分结果,节省教师批改作业的时间。
2.2多个学生样本分析验证
教师可以通过系统对多个学生的作业进行分析,了解学生在编程任务中的表现差异,针对性地调整教学策略。
通过实验代码评分和多学生样本分析功能的验证,我们可以看出,系统不仅能有效减轻教师批改作业的负担,还能精确分析学生的学习情况,为教师提供数据支持,帮助优化教学策略。实验代码评分功能能够准确评估学生编写代码的质量和细节,而多学生样本分析功能则让教师能够清晰了解学生在同一任务中的表现差异,从而有针对性地进行指导和改进。通过这些功能,系统大大提升了教学效率,并为学生提供了更具个性化的学习体验,推动了编程教育的智能化进程。
总结
本研究设计并实现了一个基于大语言模型的编程教学系统,涵盖了代码生成、代码分析、错误检测、个性化学习建议和习题推荐等功能,有效帮助学生克服编程难题,提高编程能力。同时,教师端的智能数据分析和自动评分功能提高了教学管理效率,为学生提供了更具针对性的指导。通过实际应用验证,系统帮助学生更清晰地理解编程逻辑,及时修正错误,并根据薄弱环节提供个性化学习资源。教师端则通过评估学生进度和编程能力,优化教学策略,提升了教学效果。总体来看,该系统在提升学生学习效果、增强参与度和实现个性化教育方面具有显著优势,推动了编程教育的改革与创新,未来将进一步扩展,以满足学生和教师的需求。
参考文献
[1]教育部.(2022年).《人工智能促进教育变革创新》.教育部. https://www.moe.gov.cn/jyb_xwfb/s5148/202212/t20221222_1035689.html?utm_source=chatgpt.com
[2]向程冠,王英,王东.智能教育背景下编程教学的困境、策略与趋势分析[J].电脑知识与技术,2023,19(15): 7-10
[3]郝玉锋,赵雪琴.智慧教学背景下基于LLM的计算机编程类课程教学改革探索[J].河南财政税务高等专科学校学报,2024,38(2): 85-87
[4]厉旭杰,顾雨辰,姚持恩.集成AI大语言模型的在线编程实验平台设计与实现[J].实验技术与管理,2024,41(8): 215-221
[5]薄钧戈,乔亚男,齐琪,刘虎军,黄鑫.探索AIGC技术在高校编程课程中的应用潜力与挑战[J].计算机技术与发展,2024,34(6): 214-220
[6]李汉博.AI大模型在数据库编程教学中的实践与应用探究[J].艺术科技,2024,37(15): 63-65
[7]王宇轩,徐文浩,于浩淼,吕双羽,宋友.生成式AI为C语言编程教学带来的挑战和机遇[J].计算机教育,2024,(8): 133-141,145
[8]徐慧,鞠小林,王皓晨.大模型下编程教学面临的挑战与应对[J].计算机教育,2023,(11): 60-64
[9]鞠小林,张艳梅,王皓晨,徐慧.基于大语言模型辅助教学的Python编程课程教学探索[J].计算机教育,2024,(9): 33-37
作者简介:赵艳妮,1984,女,汉,研究生,副教授,人工智能、故障诊断,上海师范大学天华学院,201815



京公网安备 11011302003690号