多年來,AI 社群一直處在一個廣為接受的假設之下:Transformer 架構——在里程碑式的「Attention Is All You Need」論文中首次提出——是建構大型語言模型的唯一可行途徑。遞歸神經網路(RNN)被認為已經過時——訓練太慢、太容易出現梯度消失、無法在規模上匹配 Transformer 的品質。RWKV 打破了這個假設。
由開發者 Bo Peng(暱稱 BlinkDL)創建,RWKV 是一種 100% RNN 架構,在達到 Transformer 可比品質的同時,提供快得多的推論速度和更低的記憶體消耗。ChatRWKV 是該模型的聊天導向介面,提供可在消費級硬體上執行的開源 ChatGPT 替代方案。
該專案代表了開源 AI 領域中最具創新性的架構進展之一——重新構想遞歸架構以適應現代時代,證明了 Transformer 並非唯一的發展道路。
RWKV 架構的革命性之處在哪裡?
RWKV 的核心創新在於其線性注意力機制,它將 Transformer 的二次自注意力重新構想為遞歸計算。RWKV 這個名稱代表了模型中的四種基本操作:Receptance(R)、Weight(W)、Key(K)和 Value(V)。
| 面向 | Transformer | RWKV (RNN) |
|---|---|---|
| 注意力複雜度 | O(n^2) 二次 | O(n) 線性 |
| 推論時記憶體 | KV 快取隨序列增長 | 恆定狀態向量 |
| 訓練並行化 | 完整序列並行 | 需要序列性重構 |
| 上下文視窗限制 | 依架構而定,有限 | 理論上無限 |
| 每 Token 生成速度 | 隨上下文長度變慢 | 恆定速度 |
這張表凸顯了決定性的優勢:當 Transformer 的生成時間隨著對話變長而增加時,RWKV 無論之前說了多少內容,都能保持恆定的速度和記憶體使用量。
RWKV 如何達到 Transformer 品質的結果?
祕訣在於Time-Mix 和 Channel-Mix 層,它們取代了 Transformer 中傳統的多頭注意力和前饋網路。
graph TD
A[輸入 Token] --> B[Time-Mix 層]
A --> C[Channel-Mix 層]
B --> D[RNN 狀態更新]
C --> E[特徵轉換]
D --> F[下一個 Token Logits]
E --> F
F --> G[輸出 Token]
H[先前狀態] --> B
I[學習衰減曲線] --> BTime-Mix 層使用可學習的衰減機制計算隨時間變化的注意力,有效地衡量過去 Token 的重要性,而無需明確儲存它們。這在數學上等同於一種線性注意力形式,但以純 RNN 實現,使其每層每個 Token 的記憶體複雜度為 O(1)。
Channel-Mix 處理每個時間步內的互動,類似於 Transformer 的前饋網路,但帶有額外的遞歸連接。
RWKV 模型家族在各版本之間如何比較?
RWKV 專案經歷了多個主要版本的演進,每個版本都帶來了實質性的改進。
| 模型版本 | 參數量 | 上下文長度 | 關鍵創新 |
|---|---|---|---|
| RWKV-4 | 169M - 14B | 2048 tokens | 初始生產版本 |
| RWKV-5 (Eagle) | 1.5B - 7B | 4096 tokens | 改進的狀態追蹤 |
| RWKV-6 (Finch) | 1.5B - 14B | 8192 tokens | 資料相關衰減、2D GC |
RWKV-6 引入了資料相關的時間衰減,允許模型為不同的 Token 和不同的通道學習不同的遺忘率。這是一項突破,使 RWKV 的長距離依賴處理更接近——在某些任務上甚至超越了——Transformer 的能力。
實際表現如何?
實際基準測試證明 RWKV 不僅是理論上的新奇事物——它確實能提供有競爭力的結果。
| 基準 | RWKV-6 14B | LLaMA-2 13B | 效能差異 |
|---|---|---|---|
| MMLU (5-shot) | 55.8% | 54.8% | +1.0% |
| HellaSwag (10-shot) | 74.5% | 76.6% | -2.1% |
| ARC-C (25-shot) | 52.1% | 53.2% | -1.1% |
| PIQA (0-shot) | 80.5% | 80.1% | +0.4% |
| 生成速度 (7B) | ~85 tok/s | ~45 tok/s | +89% |
生成速度的優勢尤其突出——RWKV 的文本生成速度幾乎是可比較 Transformer 的兩倍,且延遲不受序列長度影響,保持一致性。
如何開始使用 ChatRWKV?
開始使用 ChatRWKV 非常簡單,有多種部署選項可用。
# 安裝 RWKV pip 套件
pip install rwkv
# 執行聊天介面
python chat.py --model path/to/RWKV-6-7B.pth
對於偏好更精緻體驗的使用者,有多種社群介面提供網頁 UI,包括 RWKV-Runner,它在 Windows、macOS 和 Linux 上提供一鍵安裝。
from rwkv.model import RWKV
from rwkv.utils import PIPELINE, PIPELINE_ARGS
model = RWKV(model="RWKV-6-7B.pth", strategy="cuda fp16")
pipeline = PIPELINE(model, "rwkv_vocab_v20230424")
輕量級的部署足跡使 ChatRWKV 成為自託管 AI 助手、邊緣 AI 應用和注重隱私部署(資料永不離開使用者機器)的極佳選擇。
RWKV 和遞歸 LLM 的未來是什麼?
RWKV 的成功激發了人們對語言模型遞歸架構的重新關注。隨後出現了幾個後續專案,包括 Mamba(結構化狀態空間模型)、xLSTM 和 Griffin,每個都探索了次二次語言建模的不同方法。
gantt
title 遞歸 LLM 架構演進
dateFormat YYYY-MM
axisFormat %Y-%m
section RWKV
RWKV-4 發布 :done, 2023-07, 2024-01
RWKV-5 Eagle :done, 2024-03, 2024-06
RWKV-6 Finch :done, 2024-08, 2025-03
section 競爭者
Mamba 論文 :done, 2023-12, 2024-06
xLSTM 論文 :done, 2024-05, 2024-08
Griffin (Google) :done, 2024-03, 2024-09
section 未來
RWKV-7 :active, 2025-06, 2026-04
混合架構 :active, 2025-09, 2026-12目前正在開發中的 RWKV-7,承諾進一步提升訓練效率和長上下文處理能力,可能擴展到 64K+ Token 上下文,且無額外記憶體開銷。
常見問題
什麼是 ChatRWKV? ChatRWKV 是一個由 RWKV 語言模型架構驅動的開源聊天 AI 系統。RWKV 是一種 100% RNN(遞歸神經網路)模型,結合了 Transformer 的高效訓練與 RNN 快速、恆定記憶體的推論特性。它由開發者 Bo Peng(BlinkDL)創建,並已發展成一個社群驅動的生態系統。
RWKV 與基於 Transformer 的 LLM 有何不同? 與使用二次自注意力機制的 Transformer 不同,RWKV 使用基於新型 Time-Mix 和 Channel-Mix 公式的線性注意力機制。這使其具有 O(n) 的推論複雜度而不是 O(n^2),意味著在長序列上記憶體使用量和生成速度都大幅優化。RWKV 是第一個在規模上達到 Transformer 品質的 100% RNN 模型。
有哪些可用的 RWKV 模型大小? RWKV 模型系列從小型的 RWKV-4 169M 到前沿規模的 RWKV-6 14B,中間包括 430M、1.5B、3B 和 7B 等多個尺寸。RWKV-6 架構引入了比早期版本顯著的改進,包括增強的狀態追蹤和更穩定的訓練。
ChatRWKV 適合生產使用嗎? 是的,ChatRWKV 在許多用例上已達到生產就緒狀態。其恆定記憶體推論特性使其特別適合部署在邊緣裝置、行動平台和 GPU 記憶體有限的環境中。模型的快速生成速度也使其成為即時聊天應用的理想選擇。
如何執行 ChatRWKV? ChatRWKV 可以使用提供的 Python 腳本在本機執行,透過 RWKV pip 套件安裝,或透過各種社群建立的介面包括網頁 UI、Discord 機器人和行動應用程式來執行。它對硬體要求不高——即使是 7B 模型也能在 8GB VRAM 的消費級 GPU 上執行。
延伸閱讀
- ChatRWKV GitHub 倉庫 – 官方原始碼、模型權重和聊天介面
- RWKV GitHub 倉庫 – 核心 RWKV 架構實作和訓練程式碼
- RWKV-6 技術論文 (arXiv) – 詳細說明 RWKV-6 架構的研究論文
- RWKV Wiki – 社群文件、指南和部署教學