說明
最實用的一種利用大語言模型的方式是進行微調。預訓練模型與我們的使用場景一定會存在一些差異,而我們又不可能重頭訓練。
微調的原理并不復雜,載入模型,灌新的數(shù)據(jù),然后運行再訓練,保留checkpoints。但是不同項目的代碼真的不太一樣,每一個都要單獨去看的話比較費神。
本篇簡單討論一下用LLaMA-Factory微調模型的體驗。
內容
1 LLaMA-Factory
LLaMA-Factory(https://github.com/hiyouga/LLaMA-Factory)是零隙智能(SeamLessAI)開源的低代碼大模型訓練框架,它集成了業(yè)界最廣泛使用的微調方法和優(yōu)化技術,并支持業(yè)界眾多的開源模型的微調和二次訓練,開發(fā)者可以使用私域數(shù)據(jù)、基于有限算力完成領域大模型的定制開發(fā)。LLaMA-Factory還為開發(fā)者提供了可視化訓練、推理平臺,一鍵配置模型訓練,實現(xiàn)零代碼微調LLM。自2023年5月開源以來,成為社區(qū)內最受歡迎的微調框架,github星數(shù)已超9K。
github項目地址
從目前的開源三大系(LLaMA, ChatGLM, BLOOM )來看,數(shù)量上的確還是Lamma系的多。
2 部署環(huán)境
用仙宮云部署,價格比較實惠,且環(huán)境比較新。
注意,云盤默認掛在 /root/cloud下,所以文件可以存在這里。
3 拉取項目并啟動服務
由于環(huán)境基本已經適配好的,安裝過程也很快
git clone https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
pip3 install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
然后執(zhí)行web前端的啟動命令
python3 ./scr/train_web.py
就會喚起一個前端(因為服務已經關掉了,忘了截圖)
4 拉取模型文件
我使用chatglm3-6b-base進行測試。
由于hugging face有墻, modelscope就是比較好的選擇。
兩種方式:
包方式:事實證明不是那么好,模型包存放的位置還要靠grep找出來
pip install modelscope
from modelscope import snapshot_download
model_dir = snapshot_download("ZhipuAI/chatglm3-6b", revision = "v1.0.0")
git方式
git lfs install
git clone https://www.modelscope.cn/ZhipuAI/chatglm3-6b.git
5 在web端配置
本次是連通性測試,我就修改了一下模型所在的文件夾位置,然后選擇lora,別的都沒改,就開始跑了。
整個微調的時間大約在4小時,期間顯存慢慢上升到21G,總體上應該是可用的。
文章來源:http://www.zghlxwxcb.cn/news/detail-848702.html
今天主要就是調通,后續(xù)再更新。文章來源地址http://www.zghlxwxcb.cn/news/detail-848702.html
到了這里,關于Python - 深度學習系列30 - 使用LLaMA-Factory微調模型的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!