Домашняя страница RWKV: https://www.rwkv.com.
ChatRWKV похож на ChatGPT, но основан на моей языковой модели RWKV (100% RNN), которая является единственной 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
ВЧ-совместимые гири RWKV: https://huggingface.co/RWKV
Используйте v2/convert_model.py, чтобы преобразовать модель для стратегии, для более быстрой загрузки и экономии оперативной памяти процессора.
Примечание. 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 Самый быстрый API вывода графического процессора с помощью vulkan (подходит для nvidia/amd/intel)
https://github.com/cryscan/web-rwkv серверная часть для ai00_rwkv_server
https://github.com/saharNooby/rwkv.cpp Вывод по быстрому процессору/cuBLAS/CLBlast: int4/int8/fp16/fp32
https://github.com/JL-er/RWKV-PEFT lora/pissa/Qlora/Qpissa/state Tuning
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 быстрый вывод процессора i4 i8 fp16 fp32 с использованием ggml
https://github.com/harrisonvanderbyl/rwkv-cpp-cuda быстрый вывод окон/linux и cuda/rocm/vulkan из графического процессора (нет необходимости в Python и pytorch)
https://github.com/Blealtan/RWKV-LM-LoRA Тонкая настройка LoRA
https://github.com/josStorer/RWKV-Runner классный графический интерфейс
Другие проекты 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)
Последние модели RWKV 14B и 7B из серии «Raven», настроенные в стиле Альпаки, очень хороши (почти как ChatGPT, а также хороши в многораундовом чате). Скачать: https://huggingface.co/BlinkDL/rwkv-4-raven
Предыдущие результаты старой модели:
QQ: 553456870 (入时请简单自我介绍)).
中文使用教程: https://zhuanlan.zhihu.com/p/618011122 https://zhuanlan.zhihu.com/p/616351661
Интерфейс пользовательского интерфейса: https://github.com/l15y/wenda