RWKV

微调简介

为什么要微调 RWKV 模型?

目前开源发布的 RWKV 模型均为基底模型(base model ,又称预训练模型),基底模型在自然语言处理等领域的大规模数据集上进行了训练,具备较强的泛化能力和丰富的知识储备。

但为了保持泛化能力和通用性,RWKV 基底模型并未针对某一类任务作优化。因此,RWKV 模型在某些特定任务上的表现可能不够理想。

而对 RWKV 模型进行微调,通俗地说,是使用特定领域(如法律、文学、医学等)或任务(材料总结、小说续写等)的高质量数据集对 RWKV 模型进行再次训练。微调过的 RWKV 模型在对应任务的表现会更高质量且稳定。

相比于从头训练一个全新的模型,微调只需要调整预训练模型的参数就能达到满意的任务效果,需要的训练周期和计算资源更少。

综上所述,我们可以通过微调 RWKV 模型优化其在各种任务中的表现,从而快速构建基于 RWKV 模型的应用场景和落地应用。

我需要为微调训练准备什么?

要微调 RWKV 模型,你需要准备一个 Linux 系统、基础的 Linux 知识储备,和一张性能较强的 NVIDIA 显卡(例如 RTX 4090)。

其次,你需要为 Linux 系统配置训练 RWKV 模型需要的工具,例如 NVIDIA CUDA Toolkitconda 虚拟环境PyTorch 等软件包

最后,你需要准备用于微调训练的数据集

消费级显卡可以微调什么模型?

以下是 RWKV-PEFT 各类微调方法搭配不同训练精度的显存需求,我们的测试基于 24GB 显存的 4090 显卡。

RWKV-7 模型微调显存需求

RWKV-7 模型进行 State tuning 的显存需求:

模型参数bf16int8 量化nf4 量化
RWKV7-0.1B2.6GB GPU2.4GB GPU2.5GB GPU
RWKV7-0.4B3.1GB GPU2.9GB GPU2.8GB GPU
RWKV7-1.5B5.3GB GPU4.1GB GPU3.7GB GPU
RWKV7-2.9B8.2GB GPU5.7GB GPU4.7GB GPU

RWKV-7 模型进行 LoRA 微调 的显存需求:

模型参数bf16int8 量化nf4 量化
RWKV7-0.1B2.7GB GPU2.5GB GPU2.4GB GPU
RWKV7-0.4B3.4GB GPU2.9GB GPU2.7GB GPU
RWKV7-1.5B5.6GB GPU4.6GB GPU3.9GB GPU
RWKV7-2.9B8.8GB GPU6.7GB GPU5.7GB GPU

RWKV-7 模型进行 MiSS 微调 的显存需求:

模型参数bf16int8 量化nf4 量化
RWKV7-0.1B2.7GB GPU2.5GB GPU2.4GB GPU
RWKV7-0.4B3.1GB GPU2.9GB GPU2.7GB GPU
RWKV7-1.5B5.6GB GPU4.5GB GPU3.9GB GPU
RWKV7-2.9B8.8GB GPU6.7GB GPU5.7GB GPU

RWKV-7 模型进行 PiSSA 微调 的显存需求:

模型参数bf16int8 量化nf4 量化
RWKV7-0.1B2.6GB GPU2.5GB GPU2.4GB GPU
RWKV7-0.4B3.4GB GPU3.0GB GPU2.7GB GPU
RWKV7-1.5B5.6GB GPU4.6GB GPU3.9GB GPU
RWKV7-2.9B8.8GB GPU6.7GB GPU5.7GB GPU

RWKV-6 模型微调显存需求

RWKV-6 模型微调的显存需求比 RWKV-7 略高,以下显存需求仅供参考:

模型尺寸全参微调MiSS/LoRA/PISSAQLoRA/QPissaState tuning
RWKV6-1.6B爆显存7.4GB GPU5.6GB GPU6.4GB GPU
RWKV6-3B爆显存12.1GB GPU8.2GB GPU9.4GB GPU
RWKV6-7B爆显存23.7GB GPU(bsz 8 爆显存)14.9GB GPU(bsz 8 需要 19.5GB)18.1GB GPU

这份文档对您有帮助吗?