
1. 项目概述当AI成为“助教”我们看到了什么去年我的一位在大学任教的朋友给我发来一份作业反馈截图问我“你觉得这是学生自己写的还是AI写的” 我扫了一眼那流畅的论述、标准的学术用语以及一丝不易察觉的“模板感”让我心里大概有了数。这已经不是个例。随着ChatGPT等生成式AI工具的普及高校课堂里正悄然发生一场静默的革命。学生们开始用AI辅助完成编程作业、撰写报告甚至进行初步的代码调试和逻辑梳理。而教师们则站在了一个全新的十字路口是将其视为洪水猛兽严加禁止还是探索将其转化为教学助力的新路径这个项目正是源于对这场变革的近距离观察。它并非一个技术开发项目而是一项聚焦于“人”与“技术”互动关系的教育实证研究。核心目标是双重的一方面深入理解学生们在完成编程类作业时对ChatGPT等工具的真实使用偏好、依赖程度及其背后的动机另一方面探讨这种新兴技术如何在高等教育特别是实践性强的编程教育中找到其合理、有效且负责任的“应用锚点”。简单说我们想弄明白学生们到底是怎么用AI的以及老师们又该如何“聪明地”利用它而不是被它牵着鼻子走这项研究的意义早已超出了单纯的学术好奇。它关乎教育公平是否所有学生都能平等、有效地利用这类工具、关乎学术诚信如何界定合理使用与学术不端、更关乎未来人才培养的核心能力定义当记忆和简单复现变得廉价什么才是教育应该聚焦的。如果你是一位教育工作者、课程设计者或是一位对教育技术趋势敏感的学生那么这项研究中的发现与思考或许能为你打开一扇新的窗户。2. 研究设计与方法如何捕捉“人机协作”的微妙瞬间要研究像“使用AI完成作业”这样既普遍又敏感的行为传统单一的问卷调查往往力有不逮。学生们可能出于各种顾虑如担心被批评为“作弊”而在问卷中隐瞒或美化自己的行为。因此我们的研究采用了混合方法试图从多个维度交叉验证勾勒出一幅更接近真实的图景。2.1 多维数据采集框架我们的数据采集围绕三个核心层面展开像一个三角测量相互印证。第一层定量问卷——描绘行为轮廓。我们设计了一份匿名在线问卷面向计算机科学、软件工程及相关专业的大学生发放。问卷的核心不是直接问“你用不用ChatGPT”而是通过一系列情境化的问题来探测行为。例如“在完成编程作业时你遇到‘无法理解题目要求’的情况通常首先寻求哪种帮助A. 查阅教材和课件 B. 询问同学 C. 使用搜索引擎 D. 询问ChatGPT等AI工具 E. 其他”“请估算在最近一次包含代码编写的作业中你最终提交的代码里大约有多大比例最初来源于AI生成包括直接生成、生成后修改、生成思路等0% 1-25% 26-50% 51-75% 76-100%”“你使用AI辅助编程时最常让它完成哪些具体任务多选生成基础代码框架、解释错误信息、优化代码性能、生成注释和文档、学习新概念/库函数等”这些问题旨在量化使用的频率、场景和程度避免是非题带来的粗糙判断。我们共回收了超过500份有效问卷样本覆盖了不同年级和院校层次。第二层深度访谈——挖掘动机与困境。在问卷基础上我们招募了20名学生志愿者进行半结构化访谈。这是获取“为什么”的关键。访谈在轻松、保密的环境中进行我们鼓励学生分享具体的故事。例如一位大二学生告诉我们“那次作业要求用Python实现一个简单的图形界面我完全没学过Tkinter。我先让ChatGPT生成了一个带按钮和文本框的窗口代码然后对照着代码一行行去查官方文档弄懂了每个参数的意思。最后我不仅完成了作业还真的学会了这个库的基本用法。” 这个案例揭示了AI作为“即时脚手架”和“个性化教程”的潜力。相反也有学生坦言“有时候 deadline 太紧就直接把题目丢给AI复制粘贴稍微改改就交了心里知道这样学不到东西但为了分数也没办法。” 这又指向了时间压力、评估方式等外部因素对使用模式的影响。第三层作业文本分析——寻找“数字指纹”。在征得教师和学生同意后我们匿名收集了约200份编程作业的最终提交文本包括代码和报告。我们并不试图开发一个“AI检测器”这本身是个复杂且有争议的领域而是进行特征分析。例如我们关注代码注释的规律性AI生成的注释往往异常详尽、格式统一而学生自己写的注释可能更随意有时甚至没有。错误处理的完备性学生代码可能只处理主流情况而AI生成的代码有时会包含对边缘情况的过度防御。报告文本的“平均句长”和“词汇复杂度”在特定段落出现显著高于学生平均水平的学术化表达。 这些特征不能作为“证据”但可以作为理解AI介入程度和模式的辅助参考与问卷和访谈数据相互对照。2.2 核心研究问题拆解整个研究围绕四个核心问题展开偏好与模式学生在编程学习的不同阶段如理解需求、设计算法、编写代码、调试、文档化中分别偏好如何使用AI工具是否存在典型的“人机协作”工作流感知与态度学生如何看待AI辅助学习的价值与风险他们是否意识到不同使用方式如直接复制 vs. 作为学习伙伴对长期学习效果的影响差异影响因素哪些因素显著影响学生对AI工具的使用深度和方式是个人因素如先验知识、学习动机课程因素如作业难度、考核方式还是工具因素如AI的输出质量、交互体验教育应用启示基于以上发现从课程设计、教学法和学术规范的角度可以提炼出哪些关于生成式AI教育应用的务实建议注意伦理考量是此类研究的生命线。我们所有数据收集均严格遵守知情同意和匿名化原则。问卷和访谈均明确告知研究目的并保证数据仅用于整体分析绝不关联到具体个人。作业文本分析完全在去标识化后进行。我们坚信只有建立在信任和伦理基础上的研究才能获得真实的数据和深刻的见解。3. 核心发现学生偏好背后的“理性”与“无奈”通过对多维数据的交叉分析一些清晰且有时令人惊讶的模式浮现出来。学生的行为远非“用或不用”那么简单而是一套高度情境化、充满策略性的复杂选择。3.1 五大典型使用场景与偏好排序数据显示学生使用ChatGPT等工具辅助编程作业主要集中在以下五个场景并按偏好程度大致排序“解释者”与“调试助手”最高频超过85%的受访学生将“解释错误信息”和“解释我不理解的代码/概念”列为首要用例。一位学生的话很有代表性“编译器报错信息有时候像天书特别是涉及一些底层库的时候。把错误信息扔给ChatGPT它不仅能翻译成人话还能给出可能的原因和修复步骤效率提升十倍。” 这揭示了传统教学中的一个痛点错误反馈的“可读性”和“可教学性”不足而AI充当了出色的即时翻译和辅导角色。“代码片段生成器”约70%的学生会用它来生成特定功能的代码片段例如“用Python连接MySQL数据库并执行查询”、“用JavaScript实现一个轮播图”。关键在于多数学生根据访谈并非直接照搬而是将其作为学习起点和参考模板。“我先让它生成一个基础版本然后我会问它‘每一行是什么意思’、‘如果我想增加XX功能该怎么改’在这个过程中我反而学得更主动。” 这种“生成-追问-修改”的交互模式形成了一种新型的主动学习循环。“算法思路启发器”面对一个复杂的算法题约50%的学生会先让AI提供几种可能的解决思路或伪代码以此打破自己的思维定式。“有时候卡住了不是不会写代码而是根本不知道从哪入手。AI给的思路哪怕不直接可用也常常能点亮一盏灯让我知道该往哪个方向搜索和学习。”“文档与注释撰写员”约40%的学生会利用AI为已写好的代码生成注释或为整个项目撰写说明文档。这通常发生在作业的最后阶段被视为一种“繁琐任务的自动化”。“我知道写注释很重要但有时候就是懒得写或者词穷。AI能快速生成一个结构清晰、描述准确的初稿我在此基础上修改润色省时省力。”“完整解题者”低频但存在约15%的学生承认在时间极度紧张或遇到完全超出能力的题目时曾尝试让AI生成完整或近乎完整的解决方案。但访谈显示即使在这种情况下多数学生也会进行一定程度的修改和重组以“看起来更像自己的作业”。这直接指向了学术诚信的灰色地带和评估方式的挑战。3.2 影响使用模式的三大关键因素学生的使用偏好并非随机而是受到以下因素的显著影响1. 任务类型与认知层级我们将编程作业任务按认知复杂度分为事实性/程序性任务如“写出冒泡排序代码”和概念性/设计性任务如“设计一个满足XX需求的校园选课系统”。研究发现学生对AI的依赖在前者中显著高于后者。对于低阶的、有标准答案的任务AI被视为高效的“执行工具”而对于需要高阶思维、系统设计和权衡取舍的任务学生更倾向于将AI作为“讨论伙伴”或“灵感来源”而非直接的问题解决者。2. 学生的元认知与自我调节能力这是最具启发性的发现之一。具有较强元认知能力即对自己学习过程有清晰认知和调控能力的学生更倾向于策略性、批判性地使用AI。他们会明确设定使用目标“我是来学概念的不是来要答案的”会交叉验证AI提供的信息“我去官方文档再核对一下”并能有意识地将AI的输出整合进自己的知识体系。相反元认知能力较弱的学生更容易陷入“复制-粘贴”的被动模式将AI视为减轻认知负担的“捷径”而非学习工具。3. 课程评估与教学环境如果一门课程的考核 heavily relies on 死记硬背的语法或最终输出结果而忽视过程、设计和理解那么学生使用AI“走捷径”的动机就会大大增强。一位受访者直言“如果老师只看代码能不能跑通那用AI生成是最优解。但如果作业要求我们提交设计思路、迭代日志并会在答辩中追问每个细节那我就会更谨慎地使用AI更多地把它用在思路拓展和难点攻克上。” 这强烈表明教学设计和评估方式直接塑造了学生使用技术的伦理边界和行为模式。4. 生成式AI教育应用的务实框架与策略基于上述发现我们认为将生成式AI简单地挡在教室门外既不现实也无必要。更建设性的思路是主动将其纳入教学生态系统进行“有设计的整合”。以下是一个从“防御”到“赋能”的四层应用框架。4.1 第一层重构学术诚信公约——从“禁止”到“规范”与其发布一纸空泛的禁令不如与学生共同制定清晰、可操作的“AI使用公约”。这份公约应具体到不同作业类型“绿色”任务鼓励甚至要求使用AI。例如用于解释概念、生成文档模板、提供调试建议。重点评估学生与AI交互的过程记录如对话日志和基于AI输出的再创造。“黄色”任务限制性使用AI。例如允许使用AI生成部分代码片段但必须明确标注出处并附上自己对这段代码的理解和修改说明。评估重点在于整合与创新能力。“红色”任务禁止使用AI。通常是用于考核核心概念掌握程度的基础练习或闭卷考试。明确告知学生其目的。 这种分层规范将模糊的“作弊”边界转化为清晰的行为指南减少了学生的试探和教师的裁决负担。4.2 第二层设计“AI增强型”学习任务教学设计的核心应从“产出答案”转向“设计过程”。我们可以创造一些必须与AI协作才能更好完成且能凸显人类独特价值的任务“AI审计师”任务给学生一段由AI生成的、存在潜在缺陷或非最优解的代码要求他们进行审查、测试、找出问题并提出优化方案。这培养了批判性思维和代码审查能力。“提示工程”挑战给定一个编程问题不直接评估最终代码而是评估学生为AI编写的提示词的质量。要求学生迭代优化提示词以获得更精准、更高效的代码输出。这本身就是一项未来至关重要的高阶技能。“人机对比分析”报告要求学生独立完成一个编程任务同时让AI完成同一个任务。然后提交一份报告对比两种解决方案在效率、可读性、健壮性等方面的优劣并分析原因。这深化了学生对问题本质和解决方案多样性的理解。4.3 第三层培养关键的“人机协作”素养我们需要在课程中 explicit teaching 一些与AI协作的核心素养精准提问的能力教会学生如何向AI清晰、具体地描述问题。这本质上是问题分析和分解能力的训练。信息验证与交叉检验的习惯强调AI可能“一本正经地胡说八道”产生幻觉。必须培养学生对AI输出保持怀疑并利用官方文档、教科书、搜索引擎等其他信源进行交叉验证的习惯。元认知与自我监控引导学生定期反思“我使用AI是为了逃避思考还是为了深化理解”“我是否过度依赖AI导致某些基础技能生疏了” 可以通过学习日志、反思报告等形式固化这一过程。4.4 第四层革新评估方式指向高阶能力评估是指挥棒。当AI能轻松完成低阶任务时评估必须上移重视过程性评估增加设计文档、思路草图、迭代日志、调试记录、AI交互历史等过程产物的权重。采用“答辩”与“代码走查”通过面对面的问答可以迅速判断学生对代码的理解是肤浅的还是深入的。问几个“为什么选择这个数据结构”“如果需求变成XX你会如何修改”之类的问题远比检查代码是否运行正确更能评估真实水平。引入同伴评审让学生相互评审代码和报告重点关注逻辑清晰度、创新性和文档质量。这不仅能减轻教师负担还能促进学生之间的深度学习。5. 教师工具箱实操建议与常见问题应对对于一线教师而言理论框架需要转化为具体行动。以下是一些可直接上手的建议和常见困境的应对思路。5.1 如何设计一份“AI友好”又“防作弊”的编程作业关键在于增加语境依赖和个性化元素。语境依赖将编程问题嵌入到一个独特的、具体的场景中。例如不要出“实现一个链表”而是出“为我校图书馆的特定借阅规则此处详细描述你校的真实或虚构的独特规则设计一个图书管理系统的核心数据结构”。AI很难生成完全贴合你校独特情境的完美代码。个性化在作业中引入学生个人的元素。例如“使用你本学期选修的另一门课程如经济学中的一个核心概念设计一个程序来演示该概念”。或者让学生分析一段他们自己过去写的有缺陷的代码并使用AI辅助进行重构和优化并说明改进之处。过程可视化要求学生在提交最终代码的同时提交一份简短的视频录屏或屏幕截图时间线展示他们从零开始编写、调试的关键步骤。这虽然不能完全杜绝作弊但大大增加了作弊的成本和难度。5.2 课堂上如何引导学生讨论AI的伦理使用不要进行说教而是组织案例研讨。可以提供一个真实的、有争议的简短案例例如“学生A在完成一个数据结构作业时卡在了平衡二叉树的旋转操作上。他将其在教材中的描述输入ChatGPT请求一个详细的解释和可视化步骤。ChatGPT给出了文字解释和一段伪代码。学生A仔细阅读了这些内容并基于此自己用C实现了该操作。他在作业报告中注明了‘在理解旋转操作时参考了与ChatGPT的对话’。请问这是否属于学术不端为什么”让学生分组讨论并陈述理由。教师最后进行总结引导学生认识到使用工具获取理解和帮助是学习的一部分关键在于是否通过了自身的思考、理解和转化以及是否进行了透明的说明。这种讨论比任何规章制度都更能内化伦理意识。5.3 怀疑学生作业由AI代劳怎么办首先避免依赖不靠谱的“AI检测工具”它们的误报率很高且容易引发争议。建议采取“基于关心的探究”流程私下邀请谈话以平和、好奇而非质问的语气联系学生。“我对你作业中XX部分的解决方案很感兴趣思路非常清晰。能约个时间和我聊聊你是如何想到这个方法的吗我想了解更多你的思考过程。”聚焦过程细节在谈话中询问具体的、过程性的问题。例如“在这个函数里你最初为什么选择用哈希表而不用数组中间遇到过什么性能问题吗”“我看到你这里处理了一个很特别的边界情况当时是怎么发现这个情况的”评估理解深度通过学生的回答判断其是对代码有深刻理解还是只能进行表面化的复述。真正理解的学生能够流畅地解释设计权衡、替代方案和调试经历。明确规则与提供支持如果确认存在不当依赖应依据事先公布的“AI使用公约”进行处理。同时将其视为一个教育契机了解学生是否因为学习困难、时间管理问题而求助AI并为其提供相应的学术支持。5.4 教师自身如何利用AI提升教学效率教师同样可以是AI的受益者。例如生成多样化的例题与变体让AI基于一个核心知识点生成难度不同、场景各异的练习题用于课堂练习或作业库。快速创建教学材料输入一个复杂概念如“分布式事务”让AI生成一份面向初学者的讲解大纲、一个类比生活中的例子、以及一份常见误解清单教师可在此基础上修改和完善。辅助作业批改与反馈对于编程作业可以先将学生代码匿名化后交给AI进行初步分析让其生成关于代码风格、潜在bug、复杂度等方面的初步评论。教师可以在此基础上聚焦于AI无法评估的设计思想、创新性等层面给出更具深度和个性化的反馈极大提升反馈效率和针对性。生成式AI涌入教育领域带来的不是简单的“便利”或“威胁”而是一次对教育本质的深层叩问。当机器能够轻易完成知识的复现和组合时教育的价值必须更多地转向培养批判性思维、复杂问题解决、创造力以及人机协作的智慧。这项研究揭示的学生偏好正是这场转型的微观缩影。对于教育者而言挑战不在于如何筑起更高的墙而在于如何设计更聪明的桥——连接学生的需求与技术的潜力引导他们从“技术的消费者”成长为“技术的驾驭者”。这条路没有现成地图但每一步探索都关乎我们将培养出怎样面对未来世界的建设者。