RISC-V 跑大模型(三):LLaMA中文擴(kuò)展
這是RISC-V跑大模型系列的第三篇文章,前面我們?yōu)榇蠹医榻B了如何在RISC-V下運(yùn)行LLaMA,本篇我們將會(huì)介紹如何為L(zhǎng)LaMA提供中文支持。
1.模型擴(kuò)充
以下步驟在X86下進(jìn)行:
1.1準(zhǔn)備工作

1.2模型下載
下載LLaMA原版模型和中文擴(kuò)充
LLaMA原版模型:
https://ipfs.io/ipfs/Qmb9y5GCkTG7ZzbBWMu2BXwMkzyCKcUjtEKPpgdZ7GEFKm/
中文擴(kuò)充:
https://huggingface.co/ziqingyang/chinese-alpaca-lora-7b
下載后的目錄如下:


1.3合并模型
(1) 將LLaMA原版模型轉(zhuǎn)換為Huggingface格式。這一步需要借助transformers提供的腳本convert_llama_weights_to_hf.py。
下載鏈接:https://github.com/huggingface/transformers/blob/main/src/transformers/models/llama/convert_llama_weights_to_hf.py
請(qǐng)執(zhí)行以下命令:
命令解釋:將原版LLaMA的tokenizer.model放在--input_dir指定的目錄,其余文件放在${input_dir}/${model_size}下。執(zhí)行以下命令后,--output_dir中將存放轉(zhuǎn)換好的Huggingface版權(quán)重。
(2) 合并LoRA權(quán)重,生成Huggingface全量模型,這一步需要借助:merge_llama_with_chinese_lora.py。
下載鏈接:https://github.com/ymcui/Chinese-LLaMA-Alpaca/blob/main/scripts/merge_llama_with_chinese_lora.py
執(zhí)行命令:
命令解釋:這一步的參數(shù)可以參照上一步。
2.移植模型
在完成前面的步驟后會(huì)得到一個(gè)path_to_output_dir的目錄,目錄內(nèi)容如下:

將目錄下的consolidate.00.path和params.json上傳到RISC-V中的llama.cpp/models目錄下,這一步可以借助scp來(lái)實(shí)現(xiàn):scp “源文件路徑” 賬戶@地址:目的路徑。之后的步驟可以參考本系列的第二篇文章。鏈接如下:RISC-V 跑大模型(二):LLaMA零基礎(chǔ)移植教程
最后的運(yùn)行效果:

4.結(jié)語(yǔ)
我們也為大家準(zhǔn)備好已經(jīng)擴(kuò)展了中文的LLaMA供大家使用,只要掃描下面的二維碼,進(jìn)群即可獲得下載地址。之后我們還會(huì)對(duì)LLaMA進(jìn)行優(yōu)化加速,敬請(qǐng)期待。
另外,RISC -V跑大模型系列文章計(jì)劃分為四期:
2.RISC-V 跑大模型(二):LLaMA零基礎(chǔ)移植教程
3. RISC-V跑大模型(三):LLaMA中文擴(kuò)充(本篇)
4. 更多性能優(yōu)化策略。(計(jì)劃)
如果有朋友在移植過(guò)程中遇到了問(wèn)題,歡迎加群一起交流,一起搞大模型。
想嘗試自己移植又沒(méi)有RISC-V平臺(tái)的小伙伴可以看看最近澎峰科技推出的“0元GO”活動(dòng),可以免費(fèi)試用RISC-V,詳情和快速使用指南可以在下面的文章鏈接里了解。
加入微信討論群:加iYuta-R2為好友后可拉入群。
加入QQ討論群:906962594(RVBoards·Only RISC-V