ChatRWKV

对标 ChatGPT 的开源项目
授权协议 Apache-2.0
开发语言 C/C++ Python
所属分类 神经网络/人工智能、 机器学习/深度学习
软件类型 开源软件
地区 国产
投 递 者 罗毅
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

ChatRWKV 类似于 ChatGPT,但由 RWKV(100% RNN)语言模型提供支持,并且是开源的。希望做“大规模语言模型的 Stable Diffusion”。

目前 RWKV 有大量模型,对应各种场景、各种语言:

  • Raven 模型:适合直接聊天,适合 +i 指令。有很多种语言的版本,看清楚用哪个。适合聊天、完成任务、写代码。可以作为任务去写文稿、大纲、故事、诗歌等等,但文笔不如 testNovel 系列模型。
  • Novel-ChnEng 模型:中英文小说模型,可以用 +gen 生成世界设定(如果会写 prompt,可以控制下文剧情和人物),可以写科幻奇幻。不适合聊天,不适合 +i 指令。
  • Novel-Chn 模型:纯中文网文模型,只能用 +gen 续写网文(不能生成世界设定等等),但是写网文写得更好(也更小白文,适合写男频女频)。不适合聊天,不适合 +i 指令。
  • Novel-ChnEng-ChnPro 模型:将 ChnEng-ChnPro 在高质量作品微调(名著,科幻,奇幻,古典,翻译,等等)。

HuggingFace Gradio Demo (14B ctx8192):https://huggingface.co/spaces/BlinkDL/ChatRWKV-gradio

Raven (7B 在 Alpaca 等上微调) Demo:https://huggingface.co/spaces/BlinkDL/Raven-RWKV-7B

RWKV pip package:https://pypi.org/project/rwkv/ 

更新 ChatRWKV v2 和 pip rwkv 包(0.7.3):

使用 v2/convert_model.py 将模型转换为策略,以加快加载速度并节省 CPU 内存。

### Note RWKV_CUDA_ON will build a CUDA kernel ("pip install ninja" first).
### 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-4 权重: https://huggingface.co/BlinkDL使用 RWKV-4 模型。勿使用 RWKV-4a 和 RWKV-4b 模型。)

RWKV Discord https://discord.gg/bDSBUMeFpc

Twitter: https://twitter.com/BlinkDL_AI

RWKV LM: https://github.com/BlinkDL/RWKV-LM (解释、微调、训练等)

RWKV in 150 lines (模型、推理、文本生成): https://github.com/BlinkDL/ChatRWKV/blob/main/RWKV_in_150_lines.py

ChatRWKV v2:具有 "stream" 和 "split" 策略,以及 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

  • ChatRWKV是对标ChatGPT的开源项目,希望做大规模语言模型的Stable Diffusion,测试很一段时间确实很像ChatGPT,从使用方法和内容结果上都很相似,但是还有一些差异。 准备工作 下载源码 BlinkDL/ChatRWKV,下载完毕之后获取对应的模型Hugging BlinkDL 模型地址。自己根据自己的实际情况下载对应的模型文件,最后-数字都是该模型的参数。

 相关资料
  • 本章介绍 Docker 开源的项目。随着 Docker 功能的越来越多,Docker 也加快了开源的步伐,Docker 未来会将引擎拆分为更多开放组件,对用于组装 Docker 产品的各种新型工具与组件进行开源并供技术社区使用。

  • LTalk聊天室 LTalk 是一个网页版在线聊天网站,主要功能有:加好友,处理好友请求,与好友聊天,创建群组,群组聊天,世界聊天等等,界面借鉴微信相关布局与配色,对用户友好,使用简单。 https://github.com/octopuszy/LTalk-swoole 微信小程序 抢红包问题 聊天室开发

  • 人们出于不同的目的来创建开源项目,可不论目的是什么,过程都是一样的。 首先,我们需要为我们的项目取一个名字。 然后,为我们的开源项目选择一个合适的 LICENSE 然后再去创建项目 取一个好的名字 取名字,从来就不是一件容易的事。 因此,我就长话短说,一般就是取一个有意义的名字,当然没有意义也没有任何问题。 通常而言,如果自己计划有一系列的开源项目,那么我们可以保持一定的命名规则。 挑选好 LIC

  • 谁知道这是哪个开源项目搭建的 项目技术 Vue3+elementPULS java端也有的 去找过 但是没找 有知道的告诉一下

  • 我已经看到了JDK发行版可以运行`javac-source1.6-target1.5`的编译选项。我理解来源和目标的单独选项。我不明白为什么源版本比目标版本高。为旧目标编译代码是有意义的。但是在这种情况下,为什么我们不使用我们希望能够运行的最古老目标的-source

  • 本文向大家介绍学习php开源项目的源码指南,包括了学习php开源项目的源码指南的使用技巧和注意事项,需要的朋友参考一下 一。先把源代码安装起来,结合它的文档和手册,熟悉其功能和它的应用方式。 二。浏览源代码的目录结构,了解各个目录的功能。 三。经过以上两步后相信你对这个开源的产品有了一个初步的了解了,那现在就开始分析它的源码吧。这一步我们开始分析源代码框架。例如入口方式是单入口还是多入口,页面之间