Repolode
BlinkDL

BlinkDL/RWKV-LM

RWKV 官方训练与参考代码,一种可像 GPT 一样并行训练的 RNN 式大语言模型架构。

Star
14,757
Fork
1,025
未关闭 Issue
159
最近提交
23天前

这是什么?

RWKV-LM 是 RWKV 的主要训练与参考代码仓库。RWKV 是一种 RNN 结构的语言模型,但训练时可以像 Transformer 一样并行计算。项目目前的版本是 RWKV-7 "Goose"。按 README 的描述,它不使用注意力机制,推理时间与序列长度呈线性关系,内存占用恒定,没有 KV cache,因此上下文长度增加时显存不会随之增长。

仓库包含 RWKV-7 的参考训练实现(train_temp)、高性能 CUDA 内核,以及 GPT 模式、RNN 模式和混合模式的示例脚本,同时保留了 RWKV-4、5、6 的旧版代码。文档还涵盖从 jsonl 生成 binidx 数据、基于 DeepSpeed 和 PyTorch Lightning 的训练配置,以及保证训练稳定的参数初始化和权重衰减规则。

生态方面,相关项目包括 RWKV 的 pip 包、GGUF 权重、移动端与 WebGPU 推理工具,以及由社区维护的 PEFT、RLHF 等微调实现。

核心功能

  • 01训练时可并行计算,推理时以 RNN 方式运行并保持显存恒定。
  • 02提供 RWKV-7 参考训练实现和 CUDA 内核。
  • 03包含 GPT 模式、RNN 模式和混合模式的示例脚本。
  • 04说明了从 jsonl 生成 binidx 数据并基于 DeepSpeed 训练的流程。
  • 05给出参数初始化与权重衰减的规则,便于从零训练时保持稳定。

适用场景

  • 研究无注意力或线性时间复杂度的序列模型。
  • 用参考代码在单张 GPU 上训练自定义 RWKV 语言模型。
  • 在长上下文推理中避免 KV cache 带来的显存压力。
  • 探索适用于边缘或端侧部署的 RNN 类 Transformer 替代方案。

快速上手

  1. 1

    安装支持 CUDA 12.1 的 PyTorch

    pip install torch --upgrade --extra-index-url https://download.pytorch.org/whl/cu121
  2. 2

    安装训练依赖(保持 pytorch-lightning 为 1.9.5)

    pip install pytorch-lightning==1.9.5 deepspeed wandb ninja --upgrade
  3. 3

    进入 RWKV-7 参考训练目录

    cd RWKV-v7/train_temp/
  4. 4

    将 MiniPile 数据下载到 train_temp/data,然后运行准备脚本

    sh ./demo-training-prepare.sh

使用前须知

  • 训练需要 NVIDIA CUDA GPU,默认配置约需 7 GB 显存。
  • 参考训练代码将 pytorch-lightning 固定在 1.9.5,并依赖 DeepSpeed 与 CUDA 内核。
  • README 称 FLA 版 RWKV-7 实现与参考实现不一致且效果更差,也没有可直接替换使用的简单 RWKV-7 层。

标签

常见问题

RWKV-LM 是什么?
RWKV 官方训练与参考代码,一种可像 GPT 一样并行训练的 RNN 式大语言模型架构。 RWKV-LM 是 RWKV 的主要训练与参考代码仓库。RWKV 是一种 RNN 结构的语言模型,但训练时可以像 Transformer 一样并行计算。项目目前的版本是 RWKV-7 "Goose"。按 README 的描述,它不使用注意力机制,推理时间与序列长度呈线性关系,内存占用恒定,没有 KV cache,因此上下文长度增加时显存不会随之增长。
RWKV-LM 可以免费使用吗?用的什么许可证?
RWKV-LM 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
RWKV-LM 还在维护吗?
活跃维护中。RWKV-LM 最近一次提交是在 2026年9月28日。
RWKV-LM 适合用来做什么?
研究无注意力或线性时间复杂度的序列模型。 用参考代码在单张 GPU 上训练自定义 RWKV 语言模型。 在长上下文推理中避免 KV cache 带来的显存压力。 探索适用于边缘或端侧部署的 RNN 类 Transformer 替代方案。
RWKV-LM 怎么安装和运行?
安装支持 CUDA 12.1 的 PyTorch: pip install torch --upgrade --extra-index-url https://download.pytorch.org/whl/cu121 安装训练依赖(保持 pytorch-lightning 为 1.9.5): pip install pytorch-lightning==1.9.5 deepspeed wandb ninja --upgrade 进入 RWKV-7 参考训练目录: cd RWKV-v7/train_temp/ 将 MiniPile 数据下载到 train_temp/data,然后运行准备脚本: sh ./demo-training-prepare.sh
在哪里获取 RWKV-LM?
源代码和安装说明在 GitHub 上:https://github.com/BlinkDL/RWKV-LM

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目