柚子快報邀請碼778899分享:LLaMa大模型微調(diào)
柚子快報邀請碼778899分享:LLaMa大模型微調(diào)
1. 模型的微調(diào)
1.1 大模型LLaMa下載
先下載一個完整版本的LLaMa模型,官網(wǎng)的或別人下載微調(diào)過的中文版本的。
1.2 指令微調(diào)
執(zhí)行run_clm_sft_with_peft
1.3 合并LORA
大模型的原始參數(shù)和微調(diào)后的參數(shù)合并到一起
執(zhí)行如下腳本:
scripts/merge_llama3_with_chinese_lora_low_mem.py
--base_model? 原始預訓練模型的路徑
--lora_model 微調(diào)后的lora的路徑
--output_dir 參數(shù)合并的輸出目錄
merge后的格式是safetensors
model-00001-of-00004.safetensors? ? 4.63G
model-00002-of-00004.safetensors? ??4.63G
model-00003-of-00004.safetensors? ??4.63G
model-00004-of-00004.safetensors? ?4.63G
2. 量化
2.1 llama.cpp
llama.cpp鏈接:https://gitcode.com/ggerganov/llama.cpp/overview
需要先安裝好CMAKE:https://cmake.org/download/
然后,
git clone?https://gitcode.com/ggerganov/llama.cpp
cd? llama.cpp
pip install -r?requirements/requirements-convert-hf-to-gguf.txt
cmake -B build
cmake --build build --config Release
編譯后,會在llama.cpp根目錄下的build\bin\Release的目錄下生成一系列exe文件,其中包含quantize.exe文件,這個可執(zhí)行文件可以用來做量化。
2.2 格式轉(zhuǎn)換
HF格式(huggingface的個數(shù),比如model-00001-of-00004.safetensors)需要先轉(zhuǎn)換成GG格式(llama.cpp可以處理的格式)
llama.cpp/convert-hf-to-gguf.py? ? ? xxx\llama3-lora-merge[參數(shù)merge后的路徑]? ? ? --outtype? f16? ?--outfile? xxx\my_llama3.guff[轉(zhuǎn)換后的輸出路徑]
轉(zhuǎn)換后的my_llama3.guff文件有14.9G
2.3 量化
python?quantize.exe? xxx\my_llama3.guff? ?xxxx\quantize_model.gguf[量化后的輸出目錄]? ? q4_0
需要量化為8bit時,可以將“q4_0”換成“q8_0”
量化后的quantize_model.gguf為4.34G,作為后續(xù)推理使用的模型。
3. 部署
3.1 ollama部署
啟動ollama,進入量化后的模型文件目錄,運行如下命令
ollama? create? my_llama_q4[自定義服務名]? -f? Makefile
加載模型,將模型部署成一個服務??梢酝ㄟ^“ollama list”查看目前的安裝的模型。使用“ollama run?my_llama_q4”將模型啟動起來。
ollama部署的默認端口號是:11434.
柚子快報邀請碼778899分享:LLaMa大模型微調(diào)
參考閱讀
本文內(nèi)容根據(jù)網(wǎng)絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉(zhuǎn)載請注明,如有侵權,聯(lián)系刪除。