Kernkonzepte
雖然大型語言模型 (LLM) 在程式碼生成方面取得了顯著的進展,但初學者在使用 LLM 編寫程式碼時經常遇到困難,因為他們難以選擇和組織 LLM 理解和執行任務所需的必要資訊。
這篇研究論文探討了初學者在利用大型語言模型 (LLM) 進行程式碼生成時所面臨的挑戰。儘管 LLM 已被證明可以提高專業程式設計師的生產力,但先前的研究表明,初學者在提示 LLM 執行文字到程式碼的任務時會遇到困難。
研究問題
本研究旨在探討造成學生與 LLM 之間溝通障礙的兩個主要假設:
技術詞彙的缺乏: 學生可能缺乏編寫有效提示所需的技術詞彙。
資訊內容的選擇: 學生可能不了解 LLM 解決程式碼生成任務所需的資訊範圍。
研究方法
為了驗證這些假設,研究人員對 80 名學生編寫的 1,749 個提示的資料集進行了兩組實驗:
詞彙替換實驗: 系統地將學生使用的技術詞彙替換為近義詞,以隔離詞彙變化的影響。
提示軌跡分析: 分析學生如何編輯提示以及他們遇到的不同錯誤類型,以了解資訊內容的影響。
研究結果
研究結果表明,資訊內容比風格更重要。
缺乏技術詞彙與提示失敗僅僅是相關性,而非因果關係。
提示的資訊內容是預測成功的關鍵因素。
學生經常因為進行瑣碎的編輯而陷入困境,而不是改變資訊內容。
結論和意義
這些發現對於在程式設計教育中使用 LLM 具有重要意義,特別是在利用 LLM 提高程式設計可及性方面。
教師和教育工作者應該專注於教導學生如何選擇和組織 LLM 理解和執行任務所需的必要資訊。
未來開發 LLM 輔助程式設計工具時,應考慮到初學者的特殊需求,例如提供更清晰的指引和回饋。
研究限制和未來方向
本研究的樣本量相對較小,且僅限於美國的大學生。
未來研究可以進一步探討不同 LLM 模型、程式設計語言和教育環境的影響。
Statistiken
學生在最終提示中包含所有線索時,成功機率為 86%。
當最終提示中缺少至少一個線索時,成功機率降至 40%。
在導致所有測試通過的節點(oOK)的所有邊中,28% 是添加細節到現有線索 (m),11% 是瑣碎的重寫 (0),只有 4% 是從現有線索中刪除細節 (l)。
當提示包含不到問題線索的一半時,僅通過調整措辭就能成功的機率只有 11%。
在包含循環的提示軌跡中,最終成功的可能性為 30%,而沒有循環的則為 72%。
當循環超過三個邊時,成功機率降至 14%。
在循環中,90% 的編輯都涉及缺少線索。
在循環編輯中,75% 僅僅是重寫 (l、m 或 0);其中 54% 沒有改變任何線索的細節程度 (0)。
在 44 個成功跳出循環的提示軌跡中,只有 7 個是通過瑣碎的編輯實現的。大多數是通過添加新線索 (13) 或向現有線索添加細節 (20) 來實現的。