摘要:在編程實驗教學(xué)中,以ChatGPT為代表的大模型的引入帶來了新的教學(xué)資源和工具,但同時也存在學(xué)生過度依賴大模型的潛在風(fēng)險。為應(yīng)對大模型帶來的挑戰(zhàn)和機(jī)遇,提出了基于大模型的編程實驗教學(xué)的AI助教設(shè)計方案,覆蓋課前、課中和課后教學(xué)全過程。實際教學(xué)效果表明,AI助教能夠優(yōu)化教學(xué)效果并提升學(xué)生的學(xué)習(xí)體驗。
關(guān)鍵詞:大模型;編程實驗教學(xué);AI助教;個性化教學(xué);智能評測
中圖分類號:G42" " " 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2025)23-0027-04
開放科學(xué)(資源服務(wù)) 標(biāo)識碼(OSID)
0 引言
編程類課程是大學(xué)計算機(jī)基礎(chǔ)教學(xué)的重要組成部分,其核心目標(biāo)是培養(yǎng)學(xué)生的計算思維能力和程序設(shè)計技能。其中,編程實驗教學(xué)通過上機(jī)實驗和課后作業(yè),對培養(yǎng)學(xué)生的編程技能、邏輯思維和創(chuàng)新能力具有重要意義[1]。以ChatGPT為代表的大模型技術(shù)憑借其海量數(shù)據(jù)處理能力,為編程實驗教學(xué)提供了精準(zhǔn)的數(shù)據(jù)分析和預(yù)測,推動了教學(xué)方式和課程內(nèi)容的數(shù)字化與智能化改革。然而,大模型的“代碼生成”“代碼檢查”等能力也給傳統(tǒng)課堂教學(xué)帶來了挑戰(zhàn)。例如,過度依賴大模型可能會降低學(xué)生的獨立思考能力[2]。當(dāng)學(xué)生習(xí)慣于通過大模型快速獲取答案時,他們可能會逐漸失去對編程學(xué)習(xí)的熱情和探索精神。這種潛在風(fēng)險和擔(dān)憂,給編程實驗教學(xué)帶來了極大的困惑和挑戰(zhàn)。
針對這些問題,提出了一種基于大模型的編程實驗教學(xué)AI助教設(shè)計。該設(shè)計通過引入大模型,實現(xiàn)了針對“教”與“學(xué)”的課前、課中和課后的全方位教學(xué)支持。在課前,AI助教可以幫助教師設(shè)計教學(xué)案例,并為學(xué)生提供個性化的學(xué)習(xí)資源和建議;在課中,AI助教為教師的分層教學(xué)提供精準(zhǔn)的數(shù)據(jù),同時為學(xué)生提供真實的編程場景和編程答疑指導(dǎo);在課后,AI助教可以輔助教師進(jìn)行自動化批改作業(yè)與查重、生成學(xué)情報告,并根據(jù)學(xué)生的學(xué)習(xí)成果提供針對性的復(fù)習(xí)和鞏固練習(xí)。
實際教學(xué)效果表明,基于大模型的編程實驗教學(xué)AI助教設(shè)計可以有效應(yīng)對大模型技術(shù)在編程實驗教學(xué)中帶來的挑戰(zhàn),并充分利用其帶來的機(jī)遇。該設(shè)計覆蓋教學(xué)全過程,以其高效、個性化和實踐性強(qiáng)的特點,不僅能夠優(yōu)化教學(xué)效果,還能夠提升學(xué)生的學(xué)習(xí)體驗。學(xué)生可以在更加便捷、高效的環(huán)境中進(jìn)行編程實驗學(xué)習(xí),從而更好地掌握編程技能,提高自身的綜合素質(zhì)。
1 大模型下編程實驗教學(xué)面臨的機(jī)遇和挑戰(zhàn)
1.1 大模型帶來的機(jī)遇
大模型的崛起,以其強(qiáng)大的語言理解、代碼生成與邏輯推理能力,為編程實驗教學(xué)帶來了前所未有的機(jī)遇:
1) 輔助教師進(jìn)行教學(xué)設(shè)計和內(nèi)容創(chuàng)作[3]:通過分析大量教育數(shù)據(jù),包括教材、教案和習(xí)題庫資源,大模型能夠幫助教師策劃課程內(nèi)容、制作多媒體課件以及設(shè)計編程習(xí)題。這種智能化的內(nèi)容生成工具不僅提高了教師的工作效率,還使教學(xué)內(nèi)容更加豐富。
2) 提供個性化學(xué)習(xí)方案:根據(jù)學(xué)生的學(xué)習(xí)數(shù)據(jù)和行為,為每位學(xué)生量身定制學(xué)習(xí)計劃和教學(xué)內(nèi)容[4]。例如,在編程課程中,大模型可以根據(jù)學(xué)生的學(xué)習(xí)進(jìn)度和能力,提供不同難度的編程任務(wù)和問題,幫助學(xué)生逐步掌握編程技能。
3) 智能評測和即時反饋:大模型可以對學(xué)生提交的編程作業(yè)進(jìn)行自動編譯并給出智能評測和即時反饋。這種即時反饋機(jī)制有利于學(xué)生及時獲得反饋,了解學(xué)習(xí)上的不足之處,從而快速調(diào)整學(xué)習(xí)策略。
1.2 大模型在編程實驗教學(xué)中的應(yīng)用
目前,大模型已經(jīng)開始應(yīng)用于編程教學(xué),以提高教學(xué)質(zhì)量和效率[5]。在編程實驗教學(xué)內(nèi)容的應(yīng)用中,利用ChatGPT等大模型,可以為教師組織教學(xué)內(nèi)容、編寫編程實驗和設(shè)計編程習(xí)題等。在南通大學(xué)的編程緒論教學(xué)中,利用大模型強(qiáng)大的信息收集功能,豐富了教學(xué)內(nèi)容,將編程相關(guān)的要事、杰出貢獻(xiàn)人物、軟件的作用、趣事、發(fā)展歷史等各種事件融合在一起[6]。借助大模型強(qiáng)大的信息集成和分析能力,教師可以從更宏觀和多維度的角度組織教學(xué)內(nèi)容。
在編程實驗教學(xué)方法的應(yīng)用中,可以根據(jù)學(xué)生特點,實現(xiàn)對學(xué)生的“個性化教學(xué)”。南京郵電大學(xué)針對留學(xué)生群體普遍存在的編程能力薄弱和語言障礙等問題,設(shè)計了不同的Prompt模板,輔導(dǎo)留學(xué)生從大模型中獲取個性化的解決方案,以克服語言障礙[7]。
大模型的智能編程助手和代碼生成功能,能夠提供自動代碼生成功能,并實時進(jìn)行語法檢查、錯誤提示和優(yōu)化建議[8]。表1呈現(xiàn)了大模型所具備的智能編碼功能。這些智能編程功能有助于學(xué)生在編寫代碼時及時發(fā)現(xiàn)問題并進(jìn)行修正,從而提高編程效率和質(zhì)量。2023年,北京郵電大學(xué)基于訊飛星火大模型,開發(fā)了“碼上”編程教學(xué)平臺,率先在編程教學(xué)中開展大模型的教學(xué)研究[9]。在智能編程助手和代碼生成領(lǐng)域,許多企業(yè)的應(yīng)用也不斷涌現(xiàn)。例如,訊飛基于星火大模型開發(fā)的iFlyCode,能夠幫助開發(fā)者提高代碼質(zhì)量和開發(fā)效率;GitHub與OpenAI合作開發(fā)的GitHub Copilot,利用OpenAI的Codex模型,提供代碼自動補(bǔ)全和根據(jù)注釋生成代碼等功能。
1.3 大模型帶來的挑戰(zhàn)
大模型如同一把雙刃劍,既帶來了巨大的機(jī)遇和美好前景,也可能導(dǎo)致學(xué)生降低自主學(xué)習(xí)能力的風(fēng)險。目前,ChatGPT能夠提供代碼生成,使得完成學(xué)業(yè)任務(wù)變得“多快好省”;然而,過度依賴ChatGPT等工具可能削弱學(xué)生自主解決問題的能力。大模型在編程實驗教學(xué)中帶來的挑戰(zhàn)主要包括以下幾方面。
1) 學(xué)生缺乏理解和思考:學(xué)生借助ChatGPT等大模型獲取代碼后,往往不去探究代碼的實現(xiàn)路徑與內(nèi)在邏輯。這容易使學(xué)生滋生依賴心理,輕視對編程原理與邏輯的深入理解。這種依賴會削弱學(xué)生獨立思考與問題解決的能力,使其在編程學(xué)習(xí)中陷入被動。
2) 學(xué)生缺乏實踐經(jīng)驗:盡管通過ChatGPT等大模型能夠幫助學(xué)生完成作業(yè),但它無法替代實際編碼的實踐鍛煉。使用大模型會使學(xué)生錯失編寫與調(diào)試代碼的真實體驗,進(jìn)而影響編程技能的積累。
3) 不利于學(xué)生創(chuàng)新能力的培養(yǎng):大模型的一鍵生成代碼特性,容易使學(xué)生失去深入思考和鉆研探索的動力。過度依賴大模型會使學(xué)生習(xí)慣于走捷徑,不愿意花費時間和精力去嘗試新的算法、探索未知領(lǐng)域,從而不利于創(chuàng)新能力的培養(yǎng)與提升,限制了學(xué)生在編程領(lǐng)域的發(fā)展?jié)摿Α?/p>
2" 基于大模型的AI助教設(shè)計
面對大模型技術(shù)帶來的機(jī)遇與挑戰(zhàn),如何充分利用其優(yōu)勢成為當(dāng)前教學(xué)改革的重要課題。教師需要創(chuàng)新教學(xué)模式,直面大模型所帶來的挑戰(zhàn),利用大模型賦能有效地編程教學(xué),實現(xiàn)“物為我所用”。因此,設(shè)計了基于大模型的AI助教方案,利用大模型解決教師和學(xué)生的實際需求,為教師和學(xué)生提供更加高效、全方位的教學(xué)支持。
2.1" 需求分析
2.1.1 教師需求
1) 減輕教學(xué)負(fù)擔(dān):教師在日常教學(xué)中面臨備課、批改作業(yè)等重復(fù)性勞動的繁重負(fù)擔(dān)。通過引入智能化的教學(xué)工具,教師可以節(jié)省大量時間和精力,從而更專注于教學(xué)內(nèi)容的創(chuàng)新和對學(xué)生的個性化指導(dǎo)。
2) 提升課堂互動性:現(xiàn)代教育強(qiáng)調(diào)學(xué)生的主動參與和互動,因此教師希望提高實驗課堂的互動性,增強(qiáng)學(xué)習(xí)的趣味性。通過引入虛擬教學(xué)助手、在線討論平臺等技術(shù)手段,教師可以創(chuàng)造更加生動有趣的課堂氛圍,激發(fā)學(xué)生的學(xué)習(xí)熱情,提高教學(xué)效果。
3) 獲取學(xué)生學(xué)習(xí)數(shù)據(jù):為了更好地了解學(xué)生的學(xué)習(xí)情況和需求,教師需要獲取學(xué)生的學(xué)習(xí)數(shù)據(jù)。這些數(shù)據(jù)可以幫助教師分析學(xué)生的學(xué)習(xí)進(jìn)度、掌握程度及存在的問題,從而優(yōu)化教學(xué)策略和方法。通過數(shù)據(jù)分析,教師可以更有針對性地制訂教學(xué)計劃,提高教學(xué)質(zhì)量。
4) 輔助作業(yè)批改:作業(yè)批改是教師工作中的一項重要任務(wù),但傳統(tǒng)的人工批改方式耗時耗力且易出錯。因此,教師希望AI助教能夠輔助進(jìn)行作業(yè)批改和反饋。通過大模型自動識別學(xué)生的錯誤并提供相應(yīng)的修改建議,減輕教師的工作負(fù)擔(dān),提高批改效率。
2.1.2 學(xué)生需求
1) 個性化學(xué)習(xí)資源推薦:每個學(xué)生的學(xué)習(xí)能力各不相同,因此學(xué)生期望根據(jù)自身的水平和興趣選擇合適的學(xué)習(xí)資源。通過分析學(xué)生的學(xué)習(xí)歷史、錯題率和易錯點,AI助教可以為學(xué)生提供個性化的學(xué)習(xí)資源。
2) 實時學(xué)習(xí)指導(dǎo):在學(xué)習(xí)過程中,學(xué)生常常會遇到各種問題和困惑。為了及時解決這些問題,學(xué)生需要實時的學(xué)習(xí)指導(dǎo)和答疑解惑。通過在線問答平臺、智能助教等方式,學(xué)生可以隨時提問并獲得及時的解答,從而提高學(xué)習(xí)效果。
3) 編程輔導(dǎo):對于編程類課程而言,除了運(yùn)行結(jié)果的正確性,代碼的可讀性、執(zhí)行效率及代碼缺陷等都是衡量代碼質(zhì)量的重要指標(biāo)。學(xué)生在編寫代碼過程中需要專業(yè)的編程輔導(dǎo),以及時了解代碼缺陷并進(jìn)行優(yōu)化,從而更直觀地理解編程原理和技巧,并在實踐中加強(qiáng)對知識的掌握和應(yīng)用能力。
2.2 功能設(shè)計
如圖1所示,設(shè)計了一個面向教師和學(xué)生的AI助教系統(tǒng),該系統(tǒng)全面覆蓋課前、課中和課后各個環(huán)節(jié),旨在提高教學(xué)質(zhì)量和學(xué)習(xí)效率。
2.2.1 教師側(cè)功能設(shè)計
1) 課前階段
備課助手:AI助教提供備課助手功能,大模型能夠依據(jù)教學(xué)目標(biāo)和課程標(biāo)準(zhǔn),迅速生成詳細(xì)且結(jié)構(gòu)化的教學(xué)大綱,從而減輕教師的備課負(fù)擔(dān)。
推薦教學(xué)資源:提供教學(xué)資源推薦功能,根據(jù)課程內(nèi)容和學(xué)生特點,為教師推薦適合的教學(xué)資料,包括教學(xué)大綱、編程實驗教案和隨堂作業(yè)設(shè)計。
2) 課中階段
學(xué)情評估:根據(jù)學(xué)情評估結(jié)果,提供分層教學(xué)建議,教師可以將學(xué)生劃分為不同層次或小組進(jìn)行針對性實驗教學(xué)。
分層精準(zhǔn)化教學(xué)方案:對于基礎(chǔ)較弱的學(xué)生,AI助教可以提供更多的輔導(dǎo)和支持,包括代碼示例和運(yùn)行結(jié)果展示,以輔助教師進(jìn)行編程教學(xué);而對于基礎(chǔ)較好的學(xué)生,AI助教則可以提供更高階的編程任務(wù),設(shè)置更高的挑戰(zhàn)和目標(biāo)。
3) 課后階段
作業(yè)自動化批改:在課后階段,AI助教提供作業(yè)批改輔助功能,能夠自動評測學(xué)生提交的作業(yè),并給出評分和反饋意見,從而減輕教師的負(fù)擔(dān)。通過對作業(yè)文本進(jìn)行相似度分析,降低學(xué)生對大模型“代碼生成”等功能的依賴,進(jìn)而提升學(xué)生的獨立思考和編程實踐能力。
交互式答疑輔學(xué):AI助教能夠?qū)崟r解答學(xué)生在編程過程中遇到的問題,助力編程實驗教學(xué)。
2.2.2 學(xué)生側(cè)功能設(shè)計
1) 課前階段
預(yù)習(xí)指導(dǎo):AI助教提供課程預(yù)習(xí)指南,幫助學(xué)生了解即將學(xué)習(xí)的內(nèi)容和目標(biāo)。這些指南可以包括對課程主題的簡要介紹、編程重要概念的解釋,以及編程實踐中易錯點的補(bǔ)充,使學(xué)生能夠在編程實驗課堂上更有針對性地參與。
個性化學(xué)習(xí)資源推薦:基于學(xué)生的學(xué)習(xí)歷史和基礎(chǔ),AI助教推薦適合的學(xué)習(xí)資料和練習(xí)題,為學(xué)生提供量身定制的學(xué)習(xí)材料,以幫助他們更好地準(zhǔn)備即將到來的課程內(nèi)容。
2) 課中階段
實際編程場景模擬:通過模擬真實的編程環(huán)境和場景,讓學(xué)生能夠在虛擬平臺上進(jìn)行實踐操作,從而幫助學(xué)生更好地理解和應(yīng)用編程知識,提高他們的實際操作能力。
代碼實時評分和答疑:通過對學(xué)生編寫的代碼進(jìn)行實時評分和評估,依據(jù)代碼的邏輯、效率和正確性等因素,AI助教能夠給予相應(yīng)的評分和反饋,幫助學(xué)生及時發(fā)現(xiàn)問題并進(jìn)行改進(jìn)。
多人競技比賽:利用多人編程競技比賽,提供一個競爭性的環(huán)境,以激發(fā)學(xué)生的學(xué)習(xí)興趣和動力。學(xué)生可以在比賽中與其他同學(xué)進(jìn)行比拼,展示自己的編程能力和創(chuàng)造力,同時也可以相互學(xué)習(xí)和交流經(jīng)驗。
3) 課后階段
生成學(xué)習(xí)報告:通過收集和分析學(xué)生的學(xué)習(xí)數(shù)據(jù),AI助教可以自動生成詳細(xì)的學(xué)習(xí)報告。這些報告包括學(xué)生的學(xué)習(xí)進(jìn)度、成績、優(yōu)點和需要改進(jìn)的地方等,有助于學(xué)生了解自己的學(xué)習(xí)情況。
進(jìn)階復(fù)習(xí)建議:根據(jù)學(xué)生的學(xué)習(xí)進(jìn)度和掌握程度,AI助教可以為學(xué)生提供個性化的復(fù)習(xí)建議。這些建議有助于學(xué)生鞏固已學(xué)知識,提高學(xué)習(xí)效果,同時也能激發(fā)學(xué)生的學(xué)習(xí)興趣和動力。
深度提升能力編程練習(xí):針對不同層次的學(xué)生,AI助教可以提供相應(yīng)的編程練習(xí)題目。這些題目旨在幫助學(xué)生提高編程能力,培養(yǎng)問題解決能力。同時,AI助教還可以根據(jù)學(xué)生的答題情況實時調(diào)整題目難度,確保學(xué)生能夠在挑戰(zhàn)中不斷進(jìn)步。
3" 基于大模型的AI助教實踐
在2024—2025年度的深度學(xué)習(xí)實踐課程中,基于“星火大模型”設(shè)計了AI助教平臺。星火大模型作為一款先進(jìn)的認(rèn)知智能模型,具備強(qiáng)大的語言理解和生成能力,為設(shè)計AI助教提供了堅實的基礎(chǔ),其提供的豐富接口易于集成在AI助教平臺中。
利用AI助教平臺設(shè)計了Python編程實踐題庫,題庫包括Python基礎(chǔ)編程、Python進(jìn)階編程、卷積神經(jīng)網(wǎng)絡(luò)實現(xiàn)、圖像分類、圖像識別等多類題型。每一類型的實驗題目涵蓋從基礎(chǔ)到進(jìn)階的多種題型。在平臺登記學(xué)生后,學(xué)生可以登錄平臺,自主完成實驗并獲取編譯結(jié)果。同時,通過平臺提供的課前小練習(xí)和作業(yè)回顧,學(xué)生能夠更好地掌握編程方法。教師在后臺可登錄實時查看學(xué)生的完成情況和查重結(jié)果,并在易錯題型處給予額外的習(xí)題輔導(dǎo)。
本課程共有61位同學(xué)參與了編程實驗,據(jù)統(tǒng)計,超過80%的學(xué)生表示對編程有了更深入的理解和興趣。教師通過平臺的后臺數(shù)據(jù)監(jiān)控系統(tǒng),能夠?qū)崟r了解學(xué)生的學(xué)習(xí)情況和需求,認(rèn)為這種基于數(shù)據(jù)的教學(xué)方式更加科學(xué)和有效。
實驗教學(xué)效果表明,本設(shè)計中AI助教能夠幫助教師設(shè)計教學(xué)案例,自動批改作業(yè),減輕教學(xué)負(fù)擔(dān);同時,根據(jù)學(xué)生的學(xué)習(xí)情況提供個性化的學(xué)習(xí)建議和資源推薦,提升學(xué)習(xí)效果。通過智能算法,AI助教能夠顯著提升教學(xué)質(zhì)量和學(xué)習(xí)效率。
4 結(jié)束語
本研究深入探討了大模型在編程實驗教學(xué)中的應(yīng)用與挑戰(zhàn)。針對編程實驗教學(xué)所面臨的多方面挑戰(zhàn),提出了基于大模型的編程實驗教學(xué)AI助教設(shè)計方案,旨在為教師和學(xué)生在課前、課中、課后全過程提供服務(wù)。實驗效果表明,AI助教不僅減輕了教師的負(fù)擔(dān),還通過個性化教學(xué)建議和資源推薦,顯著提高了教學(xué)質(zhì)量和效率。盡管當(dāng)前設(shè)計在提升教學(xué)效率方面取得了顯著成效,但仍需關(guān)注數(shù)據(jù)安全問題,確保AI助教平臺的安全可靠運(yùn)行,為編程實驗教學(xué)提供更加科學(xué)、高效、個性化的支持。
參考文獻(xiàn):
[1] 王雷,唐建,白雪飛.面向差異化能力培養(yǎng)的計算機(jī)程序設(shè)計實驗體系[J].高教學(xué)刊,2022(16):47-49,53.
[2] 劉小麗,古天龍.ChatGPT對計算機(jī)教育的影響及對策[J].計算機(jī)教育,2023(11):38-44.
[3] 宋友.面向大類工科專業(yè)的程序設(shè)計課程教學(xué)改革[J].中國大學(xué)教學(xué),2018(11):47-50.
[4] 沈超.ChatGPT:助力高等教育變革與創(chuàng)新型人才培養(yǎng)[J].國家教育行政學(xué)院學(xué)報,2023(3):13-16.
[5] 姜春茂,段瑩.ChatGPT背景下的計算機(jī)實踐類課程改革初探[J].實驗技術(shù)與管理,2023,40(12):1-7,23.
[6] 徐慧,鞠小林,王皓晨.大模型下編程教學(xué)面臨的挑戰(zhàn)與應(yīng)對[J].計算機(jī)教育,2023(11):60-64.
[7] 徐康,蔣凌云,黃海平,等.基于ChatGPT的留學(xué)生編譯原理課程實踐方法[J].軟件導(dǎo)刊,2023,22(9):227-231.
[8] 張紅卓,周小寶,許玉煥,等.生成式人工智能賦能計算機(jī)程序設(shè)計類課程教學(xué)創(chuàng)新[J].計算機(jī)教育,2024(7):44-48.
[9] 張冠華.北京郵電大學(xué):“碼上” 出發(fā)用AI改變教學(xué)模式[J].在線學(xué)習(xí),2024(8):43.
【通聯(lián)編輯:張薇】