Try   HackMD

可生成摘要與輔助教學的 Chatbot 及高效學習平台 (Advanced Learning Video Platform Integrating Automated Summary Generation and Tutoring Chatbot Support)

參考:大學科系探索共創平台簡介簡報;結合智能合約之遊戲驅動室友媒合系統影片

指導教授:郭耀煌
專題成員:潘駿諺、吳仲倫、臣韞儒、曾奕程
開發工具:React, FastAPI, SQLite, llama_index, tloen/alpaca-lora, OpenAI API, lm-sys/FastChat, OpenAI Whisper
測試環境:Linux Ubuntu 20.04.6 LTS x86_64

Coursera 參考資料參考2

Coursera 統計出 2016 年至 2021 年使用此平台學習的人數從 21M ~ 92M (TODO: 找普及率,避免被ㄉㄧㄤ「不可或缺」題目的價值就會出來)

簡介就是動機 > 痛點
目的 > 解決到什麼程度
量化指標 (大海報上) 會看目的有沒有達到 給證據 不要被說「結果跟目標又不一樣」

canva 簡報

ㄧ、簡介

近年來,隨著像 Coursera、Udemy 等線上教學平台如的蓬勃發展,以及網路基礎建設的持續升級,線上學習已成為現代人不可或缺的學習方式。Coursera 統計出 2016 年至 2021 年使用此平台學習的人數從 21M 成長到 92M。然而,學生在使用線上教學平台時常面臨資料查找效率低下沒有助教可以討論遺忘影片內容等問題,導致浪費寶貴時間。為此,我們利用 AI 技術打造一個專門解決上述問題的影音學習平台,主要包括以下的改進:

  1. 資料查找效率提升
    由於語言模型先天的 token 限制,我們用長文本摘要方法來濃縮課程影片精華;並在搜尋時提供基於 RAG (Retrieval-Augmented Generation) 的文字摘要以及關鍵字;最後,用模糊搜尋來尋找課程,搜尋結果標記出與關鍵字相關的時間戳記,讓學生能夠立即找到所需內容。
  2. 數位化助教服務以及遺忘內容補充
    利用 OpenAI whisper 將所有課程語音轉文字,透過 OpenAI 的 API 使用 Prompt engineering 技術自動產生問答集資料,將資料透過 LoRA (Low-Rank Adaptation) 方法微調,如此一來就能在本地端用低成本為每個課程訓練專屬模型 (Adapter),讓學生在遇到問題時能夠提問;並紀錄學生最後一次觀看影片的時間戳記,並摘要先前的學習內容,加快複習腳步、提高學習效果。

以下為功能架構圖、資料處理流程長文本摘要流程圖:

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

二、測試結果

TODO: 提供平台使用截圖

  1. 學生搜尋關鍵字,看到 RAG 檢索結果。
  2. 直接從與關鍵字相關之時間戳記進入課程觀看影片。
  3. 在影片課程右下角開啟聊天泡泡,向課程助教模型問問題 (同問題不同回覆)。

當天報告 Demo 的準備

ChatBot demo

在聊天室輸入「生產者是什麼?」。同樣的問題交給公民助教與生物助教會得到截然不同的答案,這部分可以驗證微調的效果,以及前端介面的操作流暢度。由於使用 Adapter 的速度會比較快,效果會很好,一定要講到這部分。

公民助教的回覆

image

生物助教的回覆

截圖 2024-05-11 上午1.45.07

關於 LoRA

LoRA 的目的是在不改變大模型大部分參數的情況下,通過引入少量的新參數來實現模型的微調。這樣可以大大減少訓練所需的計算資源和時間。

低秩近似:

想像我們有一個巨大的表格,這個表格記錄了模型中的所有參數。
LoRA 的方法是用兩個較小的表格(矩陣)來近似這個大的表格。這兩個小表格相乘後,結果接近於原始的大表格。
這樣的分解方式稱為「低秩近似」,因為這兩個小表格的維度要遠小於原始的大表格。

訓練小表格:

在微調過程中,我們只訓練這兩個小表格的參數,而不是整個大表格的參數。
這樣可以保證大部分原始模型的知識保留,只是通過調整這兩個小表格來適應新的任務。

整合到大模型中:

在實際應用時,這兩個小表格會與原始模型的參數一起使用,最終的輸出結果就像我們直接訓練了整個大模型一樣,但計算效率大大提高。

遇到的困難

  • TODO

未來期待

  • 更好的評估方式
  • 自動調整超參數
  • etc.

比賽紀錄

說比賽有進決賽,簡單的東東就有了,很厲害,應該要得獎