首页    新闻    小组    威客    人才    下载    博客    代码贴    在线编程    论坛
RWKV-7 论文即将发布,推理模型 G1 系列训练中!国外社区发布 72B 模型
2025年2月28日 18:45 | 阅读 37 次

其实 RWKV-7 是训练一个模型,使其可以自动训练模型中的模型。每个 RWKV-7 内有多个小模型,RWKV-7 在推理时会自动训练这些小模型。RWKV-7 的 state 就是这些小模型的参数。

例如 RWKV-7 7B 有 32 层,每层有 64 个小模型,每个小模型有 64×64 个参数。所以 RWKV-7 7B 内共有 32×64 = 2048 个小模型。

那么 RWKV-7 7B 的 state 是 2048×64×64 = 8388608 维。RWKV-7 7B 每推理一步,这 2048 个小模型都自动学习一步,更新 state 的 8388608 个参数。

因此 RWKV-7 是个很强的架构,它比 attention 更强,更优美。

下图是 RWKV-7 每个小模型的 state 更新机制。图中 4×4 的 state 仅为演示,实际每个小模型的 state 矩阵是 64×64。

下图是 attention 和 RWKV 的对比:

有关 RWKV-7 的更详细设计思路(公式、伪代码等),请查看文章:RWKV-7 as a meta-in-context learner,从第一性原理真正理解

训练更强的 RWKV7-G1 系列推理模型

此前我们发布了 RWKV-7 "Goose" 系列基底模型,包括 0.1B/0.4B/1.6B/2.9B 四种参数规模,基于 3.1T tokens 的 World v3 数据集训练。

现在,我们准备了更多网页、数学、代码和 reasoning 数据,构建了 World v3.5 数据集,总数据为 5.16T tokens。

我们正在基于 World v3.5 数据集继续训练 RWKV-7 "Goose" 系列模型(0.1B/0.4B/1.6B/2.9B),并命名为 RWKV7-G1("GooseOne")系列推理模型。据测试,最小的 G1 0.1B 就已能实现推理过程。

G1 系列模型的发布计划:

模型 发布计划
G1 0.1B 3 月 8 日
G1 0.4B 3 月下旬
G1 1.6B 4月
G1 2.9B 5月

我们将观察 World v3.5 数据集的效果,同时准备更大更优的数据集 World v3.7,用于 G1 7B 训练。

基于新数据集的 G1 系列,目标是全面超越 Qwen 2.5 和 Llama 3.x 系列。

RWKV-7 论文即将发布

RWKV-7 架构的论文正在由全球 RWKV 社区快速撰写中,我们计划在 3 月初发布 arxiv 预印本

我们欢迎所有感兴趣的朋友参与 RWKV-7 论文的撰写、修改和校对。参与方式:在 EleutherAI 的 Discord 搜索加入 RWKV-papers 频道。

纯 numpy 实现 RWKV-7 推理

RWKV-LM 现已更新一段代码,只需 100 行 numpy 代码,即可实现 RWKV-7 推理https://github.com/BlinkDL/RWKV-LM/blob/main/RWKV-v7/rwkv_v7_numpy.py

其中,RWKV-7 模型在 numpy 写完只需 50 行代码:

使用 RWKV-LM 体验预训练 RWKV-7 模型

我们准备了使用 RWKV-LM 仓库 + Minipile 数据体验预训练 RWKV-7 模型的快速教程。

提前准备:

  • Linux 或 WSL2 系统
  • 支持 CUDA 的 NVIDIA 显卡(建议最少 8G 显存)
  • 可选:提前注册一个 WandB 账号,查看此教程

在你的 Linux 工作区依次运行以下代码:

# 克隆 RWKV-LM 仓库
git clone https://github.com/BlinkDL/RWKV-LM
# 安装 CUDA 版本的 pytorch(如果你已经安装 pytorch,可跳过这步)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126  
# 安装其他 RWKV 训练所需的软件
pip install pytorch-lightning==1.9.5 deepspeed wandb ninja --upgrade
# 进入 RWKV-LM/RWKV-v5 目录
cd RWKV-LM/RWKV-v5
# 创建一个 data 文件夹
mkdir -p data
# 下载 binidx 格式的 minipile 数据集
wget --continue -O data/minipile.idx https://huggingface.co/datasets/BlinkDL/minipile-tokenized/resolve/main/rwkv_vocab_v20230424/minipile.idx
wget --continue -O data/minipile.bin https://huggingface.co/datasets/BlinkDL/minipile-tokenized/resolve/main/rwkv_vocab_v20230424/minipile.bin
# 运行初始化脚本,初始化 RWKV 模型
sh demo-training-prepare.sh 
# 运行训练脚本,使用 minipile 数据集预训练 RWKV-7 0.1B 模型
sh demo-training-run.sh

如果你此前未曾登录 WandB,运行训练脚本时 WandB 可能会提示你选择一项:

  • 选择 1:现场创建一个 WandB 账号(不推荐)
  • 选择 2:用一个提前在 Web 端注册的 WandB 账号登录(推荐)
  • 选择 3:跳过登录,放弃图形化记录这次训练

成功开始训练后应该如下图一般,命令行显示 Epoch训练步数进度条(41/2520),以及时间、loss 等信息。WandB 会出现 loss 曲线等可视化图形:

Qwerky 72B:从 Qwen 2.5 迁移到 RWKV-7

从 Qwen 2.5 迁移到 RWKV-7 的 Qwerky-72B 现已由海外 RWKV 社区开源:https://huggingface.co/featherless-ai/Qwerky-72B-Preview

Qwerky-72B 基于海外 RWKV 社区提出的新颖模型迁移方法,可将使用 softmax attention (如 Qwen 和 LLaMA)的大模型用极低的成本(例如在单台 H800 训练几天)快速微调为 RWKV 模型,而无需从头开始预训练。

加入 RWKV 社区

欢迎大家加入 RWKV 社区,可以从 RWKV 中文官网了解 RWKV 模型,也可以加入我们的 QQ 频道和群聊,一起探讨 RWKV 模型。

(文/开源中国)    




评论 (0)
游客请输入验证码
最新评论
0
0
收藏