今天我們就來整理資料吧!
打開我們昨天寫好的工具,使用指令 poetry shell
進到虛擬環境裡面,然後讓那個 Python 檔給跑起來。就會看到如下圖的 UI 了。
我們可以在這個 UI 裡,手動填入資料,這裡我們給的 System Prompt 是:「你是一個電子元件設計專家,能夠幫助用戶了解各種電子元件,包括其規格、應用和設計建議。」
你可以針對不同的使用情境,來設定不同的 System Prompt。一般來說都會要函蓋每個可能的情境問題。所以建議從既有的客服系統的紀錄裡面找出來問題來進一步設計。
接著 User Prompt 我們就放使用者可能會提問的問題,例如說:「什麼是數位轉類比轉換器(DAC)的解析度?」
在該問題的答案裡,也就是 assistant prompt,就把該問題的答案給放上去。這裡我放上:「DAC的解析度指的是其輸出類比信號的細膩程度,通常以位數表示。解析度越高,輸出信號越精細。我推薦使用 DACPro DP6000,具備24位高解析度,適合高精度音頻和控制應用。」
值得注意一點是,我們在答案裡不只放上了針對問題的回答,同時還放上了推薦的產品的名稱,讓使用者在問問題時,同時可以推薦產品。這就是 Fine Tune 很重要的意義,輸出你要的格式,以及自定義語氣等。可以參考前幾天我們在討論 Fine Tune Chat completion 的場景。
最後,我們再點選 Export to JSONL ,就可以把 JOSNL 下載下來了!
也是可以用 ChatGPT 來產生假資料,不過這系列的文章是希望提供讀者更能貼近企業在 AI 落地的應用場景。實際上你在企業端導入生成式 AI 時,你要取得 Fine Tune 的資料,就要用類似的手法來準備好資料。
當然如果你已經有大量的已經格式化好的問答實例和紀錄的話(例如說資料庫裡),那麼就可以用這類的資料,來寫一個 Data Pineline ,轉換成 Fine Tune 時所需要的格式。
到此為止,資料都已經準備好了,那麼明天我們就正式在 Azure Machine Learning 上 Fine Tune Llama 3.1 吧!