RWKV首頁:https://www.rwkv.com
ChatRWKV 與 ChatGPT 類似,但由我的 RWKV(100% RNN)語言模型提供支持,這是迄今為止唯一可以在質量和縮放方面與 Transformer 相匹配的 RNN,同時速度更快並節省 VRAM。訓練由 Stability EleutherAI 贊助:)
我們的最新版本是RWKV-6 https://arxiv.org/abs/2404.05892 (預覽模式:https://huggingface.co/BlinkDL/temp )
RWKV-6 3B示範:https://huggingface.co/spaces/BlinkDL/RWKV-Gradio-1
RWKV-6 7B示範:https://huggingface.co/spaces/BlinkDL/RWKV-Gradio-2
RWKV-LM 主要倉庫:https://github.com/BlinkDL/RWKV-LM(解釋、微調、訓練等)
開發人員的聊天示範:https://github.com/BlinkDL/ChatRWKV/blob/main/API_DEMO_CHAT.py
推特:https://twitter.com/BlinkDL_AI
首頁:https://www.rwkv.com/
原始尖端 RWKV 權重: https://huggingface.co/BlinkDL
相容 HF 的 RWKV 配重: https://huggingface.co/RWKV
使用 v2/convert_model.py 將模型轉換為策略,以加快載入速度並節省 CPU RAM。
注意 RWKV_CUDA_ON 將建置 CUDA 核心(速度更快並節省 VRAM)。以下是建構它的方法(首先“pip install ninja”):
# How to build in Linux: set these and run v2/chat.py
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
# How to build in win:
Install VS2022 build tools (https://aka.ms/vs/17/release/vs_BuildTools.exe select Desktop C++). Reinstall CUDA 11.7 (install VC++ extensions). Run v2/chat.py in "x64 native tools command prompt".
RWKV pip 套件:https://pypi.org/project/rwkv/ (請務必檢查最新版本並升級)
https://github.com/cgisky1980/ai00_rwkv_server 使用 vulkan 最快的 GPU 推理 API(適用於 nvidia/amd/intel)
https://github.com/cryscan/web-rwkv ai00_rwkv_server 後端
https://github.com/saharNooby/rwkv.cpp 快速 CPU/cuBLAS/CLBlast 推理:int4/int8/fp16/fp32
https://github.com/JL-er/RWKV-PEFT lora/pissa/Qlora/Qpissa/state 調整
https://github.com/RWKV/RWKV-infctx-trainer Infctx 訓練器
世界示範腳本: https://github.com/BlinkDL/ChatRWKV/blob/main/API_DEMO_WORLD.py
Raven 問答示範腳本: https://github.com/BlinkDL/ChatRWKV/blob/main/v2/benchmark_more.py
RWKV 150 行(模型、推理、文字產生):https://github.com/BlinkDL/ChatRWKV/blob/main/RWKV_in_150_lines.py
RWKV v5 250 行(也附有分詞器):https://github.com/BlinkDL/ChatRWKV/blob/main/RWKV_v5_demo.py
建立您自己的 RWKV 推理引擎:從https://github.com/BlinkDL/ChatRWKV/blob/main/src/model_run.py 開始,它更容易理解(由https://github.com/BlinkDL/ChatRWKV/使用) blob/main/chat.py)。
RWKV 預印本https://arxiv.org/abs/2305.13048
RWKV v6 圖解:
酷社區 RWKV 計畫:
https://github.com/saharNooby/rwkv.cpp 使用 ggml 進行快速 i4 i8 fp16 fp32 CPU 推理
https://github.com/harrisonvanderbyl/rwkv-cpp-cuda 快速 windows/linux 和 cuda/rocm/vulkan GPU 推理(不需要 python 和 pytorch)
https://github.com/Blealtan/RWKV-LM-LoRA LoRA 微調
https://github.com/josStorer/RWKV-Runner 酷炫 GUI
更多 RWKV 專案:https://github.com/search?o=desc&q=rwkv&s=updated&type=Repositories
ChatRWKV v2:具有「流」和「拆分」策略以及 INT8。 3G VRAM 足以運行 RWKV 14B :) https://github.com/BlinkDL/ChatRWKV/tree/main/v2
os . environ [ "RWKV_JIT_ON" ] = '1'
os . environ [ "RWKV_CUDA_ON" ] = '0' # if '1' then use CUDA kernel for seq mode (much faster)
from rwkv . model import RWKV # pip install rwkv
model = RWKV ( model = '/fsx/BlinkDL/HF-MODEL/rwkv-4-pile-1b5/RWKV-4-Pile-1B5-20220903-8040' , strategy = 'cuda fp16' )
out , state = model . forward ([ 187 , 510 , 1563 , 310 , 247 ], None ) # use 20B_tokenizer.json
print ( out . detach (). cpu (). numpy ()) # get logits
out , state = model . forward ([ 187 , 510 ], None )
out , state = model . forward ([ 1563 ], state ) # RNN has state (use deepcopy if you want to clone it)
out , state = model . forward ([ 310 , 247 ], state )
print ( out . detach (). cpu (). numpy ()) # same result as above
這是 https://huggingface.co/BlinkDL/rwkv-4-raven/blob/main/RWKV-4-Raven-14B-v7-Eng-20230404-ctx4096.pth 的實際應用:
當您建立 RWKV 聊天機器人時,請務必檢查與狀態相對應的文本,以防止錯誤。
(對於 v4-raven 模型,使用 Bob/Alice。對於 v4/v5/v6-world 模型,使用 User/Assistant)
Bob: xxxxxxxxxxxxxxxxxxnnAlice: xxxxxxxxxxxxxnnBob: xxxxxxxxxxxxxxxxnnAlice:
xxxxx = xxxxx.strip().replace('rn','n').replace('nn','n')
如果您正在建立自己的RWKV 推理引擎,請從https://github.com/BlinkDL/ChatRWKV/blob/main/src/model_run.py 開始,它更容易理解(由https://github.com/BlinkDL使用/ChatRWKV/blob/main/chat.py)
最新的「Raven」系列羊駝風格調校的RWKV 14B和7B模型非常好(幾乎像ChatGPT一樣,也擅長多輪聊天)。下載:https://huggingface.co/BlinkDL/rwkv-4-raven
以前的舊模型結果:
QQ群553456870(加入時請簡單自我介紹)。
中文使用教學:https://zhuanlan.zhihu.com/p/618011122 https://zhuanlan.zhihu.com/p/616351661
UI推薦:https://github.com/l15y/wenda