獲星1.9k,LLM微調神器Lamini上演速度與激情,免費可用
LLM 微調從一件復雜的事情,已經通過不斷的技術改進變得易上手起來。
這不,免費且迅速的 LLM 微調已經可以實現了。
4 月底,斯坦福的一群開發者發布了 Lamini,號稱可以為每個開發人員提供從 GPT-3 帶到 ChatGPT 的超能力。
近日,Lamini 推出了全新的 Alpha 公測版,讓微調上演「速度與激情」。現在只需十分鐘、三至五行代碼就能實現微調,更重要的是 0 費用。
目前,4 億參數以內的 LLM 微調完全免費。這只是一個開始。
圖片
項目地址:https://github.com/lamini-ai/lamini
Lamini 的優勢
先來一起看看 Lamini 有哪些優勢。
圖片
- 免費,適用于小型 LLM;
- 迅速,10-15 分鐘;
- 很大,無限大小的 prompt,比最大的 prompt 多 1000 倍以上的空間;
- 學習,檢索增強生成,它不僅是在已知的基礎上試圖理解內容,還在學習新東西。
并且,在 Lamini 的項目地址中有著
- 1400 個問答數據集(這是關于 Lamini 的內部工程文檔,你也可以將其自定義);
- 在此數據集上運行 LLM 微調的代碼;
- 回答問題的開源微調 LLM(例如關于 Lamini,或其他你想問的)。
Lamini 使用教程
使用示例
Lamini 真的有這么神嗎?這里由一份示例請你查收。
首先,有一個需要微調的 LLM。示例中是一個關于 Lamini 內部工程文檔的問答式 LLM。
圖片
該模型提供了一個聊天界面,它使用了一個 410M 參數的 Pythia 模型作為基礎。
這個 410M 參數 LLM 的性能看起來并不令人滿意。當詢問:「我如何向 Lamini 添加數據?」時,它給出的答案并不靠譜。
圖片
你還可以給它輸入數據。對于本例,你有一個關于 Lamini 的 1400 個問題和答案的數據集。雖然它看起來很小,但它比目前最大的 Prompt 大小要大得多 (約 120K)。
以下是準備數據的專業建議:質量非常重要。只要 100 個高質量的例子就能讓你走上正確的道路。那么什么是高質量?
- 高質量:連貫、清晰、準確的示例。
- 多樣化:涵蓋廣泛的主題和數據范圍,應避免虛假關聯和數據偏差。
- 真實:實際的用戶數據或人為創建的示例,而不是 LLM 生成的虛假示例,以捕捉人機交互的細微差別,并改進模型,使其超越現有的生成能力。
然后,只需將這些數據加載到模型中,并告訴它進行訓練:
圖片
只需要 10-15 分鐘,你就可以運行這個 LLM 了。
讓我們再次問同樣的問題,「我如何向 Lamini 添加數據?」,內容如下:
這次的答案是正確的了,看來微調發揮了顯著的效果。
如何使用 Lamini 訓練 LLM
1、使用 Lamini Types 定義 LLM 接口。你想讓它成為一個聊天機器人?接口就是問進答出。你想讓它成為代碼 copilot?接口就是程序輸入,更多程序輸出。使用你的類型運行一般的 LLM(基本模型或基礎模型)。
2、查找相關數據并創建 Lamini Types。哪些數據對執行任務的人類專家有用?獲取該數據并創建與其模式相匹配的(附加)Lamini Types。它可以是支持性文檔,如你的文檔中的函數,用于你的代碼聊天機器人,也可以是向你的機器人提出的示例問題。
3、使用 Lamini 將數據加載到 Types 中,并將 Types 加載到 LLM 中。這將你的數據轉換為 Types 格式,以便 LLM 能夠最好地從中學習。
4、獲取與你的 LLM 接口相匹配的數據。如果沒有?也沒問題。這就是數據生成的目的,其中利用 LLM 管道。首先,使用 Lamini LLM Engine 運行數據生成,以獲得更多正確的 Lamini Types(任何一種)數據。然后使用 Lamini 過濾器或你自己的腳本過濾數據,以獲得高質量數據。
5. 通過優化訓練使通用 LLM 專業化。使用 Lamini 庫,針對所有數據訓練你自己的 LLM。