RWKV state tuning 微调教程

🌟 State 微调是什么?

RWKV 是纯 RNN,因此可以做 transformer 难以做到的事情。例如,作为 RNN 有固定大小的 state,所以,微调 RWKV 的初始 state,就相当于最彻底的 prompt tuning,甚至可以用于 alignment,因为迁移能力很强。

本文的 State tuning 方法来自 RWKV 社区微调项目 RWKV-PEFT

开始之前,请确保你拥有一个 Linux 工作区,以及支持 CUDA 的 NVIDIA 显卡,具体显存可参考下表:

模型参数 State tuning 需要的显存
RWKV6-1.6B 6.4GB GPU
RWKV6-3B 9.4GB GPU
RWKV6-7B 18.1GB GPU

收集训练数据

你需要使用收集更适合训练 RWKV 的 binidx 数据,具体方法可参考:https://rwkv.cn/RWKV-Fine-Tuning/FT-Dateset

需要注意的是,训练 state 的 JSONL 数据集需要先用 make_data.py脚本重复生成 10 遍,再转成 binidx 数据:

python make_data.py novel.jsonl 10 512

在这条命令中,novel.jsonl 需要改成你的 JSONL 数据文件路径,10 则是数据重复的次数,512 则是你训练的 CXT 长度。

💡 Tips: 在社区的实验中,State tuning 的 cxt 应当尽可能小,建议从 512 开始尝试。

配置训练环境

要训练 RWKV 模型,首先要配置训练环境。

1. 配置虚拟环境(conda)

RWKV 默认训练虚拟环境为 conda ,以下是一个简单的Miniconda的安装方法:

# 下载最新的 MiniConda 安装包
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# 运行 MiniConda 安装包的安装脚本# 安装期间一定要注意进度,及时输入 yes  !
sh Miniconda3-latest-Linux-x86_64.sh -u
# 重启环境变量~/.bashrc

2. 安装 state tuning 所需的软件

要获得 RWKV 模型的最佳训练性能ÿ

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值