當前位置: 妍妍網 > 碼農

AI「導師」進哈佛!7x24小時輔導CS課程,RAG或成AI教育最後一塊拼圖

2024-02-04碼農

轉自:新智元

編輯: 拉燕

【新智元導讀】 哈佛大學將AI引入CS課程,學生的 個人化「導師」,學習效率拉滿!

去年,哈佛大學做了件大事。

他們在自己的CS50課程中引入了一整套AI工具,堪稱學生個人的個人化「導師」。

一開始,這套工具服務的物件是70來個上暑校的學生。後來逐漸開放,數千名線上學生也得以擁有屬於自己的學習導師。

到了秋季,AI工具又面向了幾百位本校學生開放,反響不可謂不強烈。

今天,我們透過一篇論文,來向全體讀者朋友詳細介紹這套AI工具的開發過程,相信每位同學都可以獲益匪淺。

哈佛個人AI導師

首先,不同於傳統學習過程中,學生們使用搜尋引擎直接獲得答案或是教學資料,這套工具的設計理念是,引導學生自主探索解決問題的方案,比較忌諱直接把答案擺出來。

這也是為什麽這套工具一經推廣,學生們都愛不釋手,並將它比作自己的個人化導師。

根據哈佛大學的研究,將人工智慧有策略地融入教學,可以給學生提供持續性的個人化支持,不僅能把整個學習過程包裝的引人入勝,還能幫助真正的老師們解決不少復雜的教學難題。

不過在詳細介紹之前,想必大家對AI如何改變了教育生態這個問題,了解的已經不少了。

說實話,就AI在教育領域下場這件事而言,負面的擔憂並不比正面的期待要少。

之前,學生們用生成式AI替自己寫作業、完成論文的事兒已經發生不少了。顯然,這和教學的基本目標相悖。因此,更多老師選擇的做法是,明令禁止用AI完成課程作業。

因此,為了規避這個問題,哈佛大學設定了一些防護措施,為的就是維護學術誠信,促進更有意義的學習過程。

他們還測試了專為CS50這門課開發的AI聊天機器人,以橡皮鴨的形象呈現,稱為CS50 Duck(或叫CS50.ai)。

哈佛大學表示,這個系統是為了實作他們的終極目標:1:1的師生比例。

開發過程

谷歌最初追求的是簡單的概念驗證功能,後來逐漸才演變出更多更加高級的計畫,最終目的當然是提供一套全面的工具,幫助學生學習CS50的課程。

目前,這些工具包括:

1)高亮程式碼解釋——用於快速、易懂的程式碼解釋

2) style50增強版——用於評估不同程式碼風格

3)CS50 Duck——一個透過多平台回答課程相關問題的聊天機器人。

所有這些工具都由統一網路應用程式CS50.ai提供支持。除了提供快速準確的AI生成的回復外,CS50.ai還內建了 一個叫「Pedagogical Guardrails」的東西,直譯過來就是「教學圍欄」,目的就是引導學生學習,而非直接提供答案。

高亮程式碼解釋這一塊,哈佛大學建立了一個VS Code的擴充套件,以此來模仿人類教師的行為,為學生提供某一程式碼片段的簡要解釋。

學生要做的很簡單,只要選中一行或者幾行程式碼即可。

這個東西和CS50現有的正確性測試工具Check50相輔相成,可以及時講明白程式碼語意相關的問題。

這樣一來,有了更加便捷和準確的程式碼解釋,學生就可以提高學習效率,更多把目光放在更高層次的問題上,比如如何設計程式碼。而不是像解釋程式碼這種稍低層次的問題。

而 style50程式碼風格分析,不僅可以檢查程式碼的風格,還可以幫學生改進程式碼。

在呈現上,最新版本的 style50會將學生的初始版本和改進的版本放在一起比較,讓學生更清晰地看出改在了哪裏,為什麽改,改完了哪兒好。

同時,學生還可以一鍵生成透過自然語言解釋的文本,一目了然,不用自己分析。

不得不說,從互動性上看,這套系統做得是真不錯。

上面提到,這套系統的後端都是由CS50.ai支持的,這樣不同部份之間就有了一致性。

同時,為了讓學生的體驗更好,哈佛模仿ChatGPT的形式,開發了一個CS50 Duck的獨立網站,一樣采用對話形式,學生可以和GPT-4直接互動,如下圖所示。

CS50 Duck可以透過CS50.ai的網站和單獨的VS Code擴充套件程式兩種方式使用,如下圖所示。

一直以來,哈佛都使用第三方平台Ed作為其CS課程的線上討論平台,提供教學輔助。

透過Ed,學生們可以提出問題,並接受來自工作人員和同時在學這門課的同學的指導,這樣做簡化了討論,最大限度地減少了重復問題的反復提出,還促進了同學間的合作。

為了進一步完善Ed的功能,新版本中,開發人員利用CS50 Duck的HTTP請求功能將其整合到平台中,如下圖所示。

聊天機器人CS50 Duck也會參與進來,並回答問題。透過在CS50.ai應用程式中為Ed上的CS50 Duck建立的一個專用API端點,開發人員就可以控制由GPT-4輸出的回答,確保CS50 Duck的輸出符合課程的設定和教學理念,而非簡單地直接回答學生的問題。

CS50 Duck的所有回答都設定為可由人類工作人員稽核,稽核員可以對答案進行修改或是刪除。

學生的提問首先會被轉發到 CS50.ai。其中,所有涉及個人身份的資訊都會被刪除。然後,提問會被進一步處理成結構化的問題,成為一個prompt。

這些prompt根據特定課程的設計和指南建立,目的是為了引導 GPT-4以更高的精度生成回答,做到上下文理解「滿分」。

此外,對於來自Ed平台的提問,CS50.ai在生成回復時使用了一種叫做檢索增強生成(retrieval-augmented generation,RAG)的技術。

RAG利用從外部來源獲取的資訊和知識,提高LLM生成內容的準確性和可靠性,減少幻覺的發生。

然後,相關資訊被添加到prompt中,使GPT-4能夠生成更加準確且符合上下文的回答。

這麽來看,CS50.ai和GPT-4相互配合,能夠快速為學生提供正確而有效的回答。

還有一個非常有意思的點,值得一提。

細心的讀者應該已經註意到了,上面的聊天界面的小鴨子旁邊有五個小心心,其中一個還只有一半了。

有沒有很熟悉,就像玩兒那種遊戲的時候,人物角色旁邊會出現的生命計數。

這也是這套系統的創新點之一。

CS50.ai透過視覺化小心心來實作一個節流機制,每個學生一開始有10個小心心(其實是5個完整的,10個一半的),每三分鐘恢復一個。

與CS50 Duck的每次互動都會消耗一個小心心,為的就是防止大量頻繁的垃圾輸入的行為。

從成本角度來看,這有助於降低CS50.ai的執行成本,畢竟給GPT-4發一次訊息就得付一次錢嘛,買過的朋友肯定都清楚這一點。

其次,對學生來說,這套機制也是具有寶貴教學意義的。有了發送資訊數量的限制,學生就得在提問之前仔細考慮自己的問題,讓自己和CS50 Duck之間的互動效率和品質更高。

根本目的還是在於培養學生獨立解決問題的能力和精準提出關鍵問題的能力,這對學習本身至關重要。

而且還能讓部份學得上頭的同學,停一步,慢下來好好看看自己之前學習的過程,強制性的復盤並休息一小下。

RAG是消除幻覺的關鍵

有關這個RAG,咱們再多說幾句。

LLM有時候會產生幻覺,這個大家都知道。

之所以會出現這種情況,是因為AI模型是在大量文本數據的基礎上訓練出來的,因此它們學會了流暢地生成文本,而不一定重視事實的正確性。

此外,LLM有時會有一個所謂的知識截斷點,這使得它們的資訊僅限於在最近一次訓練之前所學到的知識,而無法獲得即時更新,或那次訓練後新出現的內容。

而RAG就可以很好地解決這個問題。哈佛大學的開發人員利用OpenAI的嵌入式應用程式介面(Embeddings API)為CS50建立文本嵌入,從而形成一個真實的外部資料來源。

這些嵌入是向量表示的(即數值),可以為機器學習演算法捕捉語意,從而更有效地解釋和利用數據。

整個數據準備過程包括將課程講座的英文字幕分割成30秒的短小獨立片段,然後利用OpenAI的text-embedding-ada-002模型為這些片段建立嵌入,並將結果儲存在ChromaDB向量資料庫中。

之後,開發人員還會為每個輸入進來的來自學生的提問建立一個新的嵌入,並在向量資料庫中執行嵌入搜尋,以檢索按相關性排序的內容。

如此一來,就最大程度地規避了幻覺的出現。

學生反饋集準確率

從使用過的學生們的反饋來看,這套系統不可謂不成功。

有同學表示,他們很喜歡人工智慧機器人回答問題時的直接,既不會有包含個人情緒的評價,也不會有覺得你問題太笨蛋的優越。即使是最愚蠢的問題,它也會一視同仁地回答。

還有同學表示,在AI時代,ChatGPT不可避免的會讓自己在學習的過程中偷懶。而有了個人化客製的CS50.ai,就可以既使用AI又規避過度依賴AI的問題。

而在兩次校內的調查中,哈佛大學采訪了差不多五百位同學,看看他們使用CS50ai的頻率和使用感受。

結果顯示,17%的學生每周使用這些工具十次以上,32%的學生每周使用5-10次,26%的學生每周使用2-5次,25%的學生每周使用少於兩次。

此外,大多數學生認為課程的AI工具是有幫助的。從數據來看,47%的學生認為其非常有用,26%的學生認為有用,21%的學生認為有點用。不過,還有6%的學生認為沒用。他們有可能還沒習慣,或者是本身已經非常優秀了,不需要AI來協助自己學習。

還有不少用過的學生將CS50 Duck擬人化,把這個小動物當作自己的好朋友。哈佛大學表示,這就符合他們設計這套系統和這個形象的初衷了。

不過,上面提到的節流的小心心,有些學生還是持反對意見,覺得不受限制的提問更好一點。但哈佛大學虞姬還是不會對這個部份進行改動。

而為了評估CS50 Duck在Ed上的表現,開發人員邀請了一位不在團隊中的資深開發者來審查CS50.ai生成的回復。

CS50 Duck在暑假期間,一共在Ed上釋出了64條回答,其中25條與課程內容相關,其余39條與行政相關。

25個和課程內容相關的問題的回答中有22個(88%)是準確的,39個和行政問題相關的回答中有30個(77%)是準確的。

而著時間的推移,CS50這門課的教學大綱也在不斷變化,這就導致了GPT-4與課程的最新變化不同步。

未來RAG會更大程度的派上用場,這套CS50.ai的系統應該也會不斷進行最佳化。

參考資料:

https://cs.harvard.edu/malan/publications/V1fp0567-liu.pdf