大数跨境

RISC-V 跑大模型(三):LLaMA中文扩展

RISC-V 跑大模型(三):LLaMA中文扩展 RVBoards
2023-07-14
2
导读:这是RISC-V跑大模型系列的第三篇文章,主要教大家在RISC-V平台进行LLaMA的中文扩展。

这是RISC-V跑大模型系列的第三篇文章,前面我们为大家介绍了如何在RISC-V下运行LLaMA,本篇我们将会介绍如何为LLaMA提供中文支持。

1.模型扩充

以下步骤X86下进行:

1.1准备工作

安装最新版本的python和以下依赖库。

pip install protobuf==3.20.0

结构化数据存储格式

pip install transformers

把原版模型转换为HF格式

pip install sentencepiece

无监督的文本标记器和去标记器

pip install peft

使用LoRA的工具

1.2模型下载

下载LLaMA原版模型和中文扩充

LLaMA原版模型:

https://ipfs.io/ipfs/Qmb9y5GCkTG7ZzbBWMu2BXwMkzyCKcUjtEKPpgdZ7GEFKm/
中文扩充:
https://huggingface.co/ziqingyang/chinese-alpaca-lora-7b
下载后的目录如下:

1.3合并模型

(1) 将LLaMA原版模型转换为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

请执行以下命令:

python convert_llama_weights_to_hf.py --input_dir path_to_original_llama_root_dir --model_size 7B --output_dir path_to_original_llama_hf_dir

命令解释:将原版LLaMA的tokenizer.model放在--input_dir指定的目录,其余文件放在${input_dir}/${model_size}下。执行以下命令后,--output_dir中将存放转换好的Huggingface版权重。

(2) 合并LoRA权重,生成Huggingface全量模型,这一步需要借助:merge_llama_with_chinese_lora.py。
下载链接:
https://github.com/ymcui/Chinese-LLaMA-Alpaca/blob/main/scripts/merge_llama_with_chinese_lora.py

执行命令:

python merge_llama_with_chinese_lora.py --base_model path_to_original_llama_hf_dir --lora_model chinese-alpaca-lora-7b --output_dir path_to_output_dir
命令解释:这一步的参数可以参照上一步。

2.移植模型

在完成前面的步骤后会得到一个path_to_output_dir的目录,目录内容如下:

将目录下的consolidate.00.path和params.json上传到RISC-V中的llama.cpp/models目录下,这一步可以借助scp来实现:scp “源文件路径” 账户@地址:目的路径。之后的步骤可以参本系列的第二篇文章链接如下:RISC-V 跑大模型(二):LLaMA零基础移植教程

最后的运行效果:

4.结语

我们也为大家准备好已经扩展了中文的LLaMA供大家使用,只要扫描下面的二维码,进群即可获得下载地址。之后我们还会对LLaMA进行优化加速,敬请期待。

另外,RISC -V跑大模型系列文章计划分为四期:

1. RISC -V跑大模型(一)

2. RISC-V 跑大模型(二):LLaMA零基础移植教程

3. RISC-V跑大模型(三):LLaMA中文扩充(本篇)

4. 更多性能优化策略。(计划)

如果有朋友在移植过程中遇到了问题,欢迎加群一起交流,一起搞大模型。
想尝试自己移植又没有RISC-V平台的小伙伴可以看看最近澎峰科技推出的“0元GO”活动,可以免费试用RISC-V,详情和快速使用指南可以在下面的文章链接里了解。
  1. 加入微信讨论群:加iYuta-R2为好友后可拉入群。
  2. 加入QQ讨论群:906962594(RVBoards·Only RISC-V)

扫描二维码加群👇

【声明】内容源于网络
0
0
RVBoards
内容 0
粉丝 0
RVBoards
总阅读0
粉丝0
内容0