随心玩玩(十五)LLM 浅玩一下RWKV模型

2024-04-22 07:12

本文主要是介绍随心玩玩(十五)LLM 浅玩一下RWKV模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写在前面:无聊又来玩玩LLM了,这次玩玩RWKV,因为我看到hugging face上有个roleplay的模型,遂心动。

【烧显存注意!】需要16G显存的样子


介绍

(随便cv的,见谅,有空单独写一篇博客看看RWKV的源码吧…)

2024 年 1 月 28 日,RWKV 开源基金会宣布开源 RWKV-5-World 7B 模型。

RWKV 是一种创新的深度学习网络架构,它将 Transformer 与 RNN 各自的优点相结合,同时实现高度并行化训练与高效推理,时间复杂度为线性复杂度,在长序列推理场景下具有优于 Transformer 的性能潜力。

RWKV-v5 架构模型能力指标接近 Llama2,但推理成本降低 2~10 倍,训练成本降低 2~3 倍。

官方介绍称,在相同参数大小(7B)的模型独立基准测试中,RWKV 是世界上最环保、最节能的人工智能模型 / 架构(以每个 token 输出为基础)

RWKV 架构的能源效率源自线性 Transformer 架构的 2~10 倍计算效率与 Transformer 架构的二次缩放。随着模型规模的扩大,RWKV 架构的节能特性会越发明显。

RWKV-5-World 7B 模型在线 Demo:https://huggingface.co/spaces/BlinkDL/RWKV-Gradio-2

RWKV-5-World 7B 模型下载地址:

Hugging Face:https://huggingface.co/BlinkDL/rwkv-5-world/blob/main/RWKV-5-World-7B-v2-20240128-ctx4096.pth

wisemodel:https://wisemodel.cn/models/rwk

RWKV Runner

先安装WebUI
参考安装:https://github.com/josStorer/RWKV-Runner/blob/master/README_ZH.md

官方的Simple Deploy Example

git clone https://github.com/josStorer/RWKV-Runnercd RWKV-Runner
python ./backend-python/main.py #后端推理服务已启动, 调用/switch-model载入模型, 参考API文档: http://127.0.0.1:8000/docs# 或者
cd RWKV-Runner/frontend
npm ci
npm run build #编译前端
cd ..
python ./backend-python/webui_server.py #单独启动前端服务
# 或者
python ./backend-python/main.py --webui #同时启动前后端服务# 帮助参数
python ./backend-python/main.py -h

先clone一下项目
git clone https://github.com/josStorer/RWKV-Runner
进入后端目录
cd RWKV-Runner/backend-python
新建一个conda环境
(下面是全凭回忆写的,有错的话…(你已经是个成熟的coder了,要学会自己debug()
conda create -n RWKV python=3.10
安装环境
pip install -r requirment.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

安装前端环境,npm
先装一下nvm,把nvm理解成anaconda就行了,是npm的环境管理工具

nvm地址:https://github.com/nvm-sh/nvm

安装nvm:
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
设置环境变量
source ~/.bashrc
检验nvm安装完成
command -v nvm

安装node和npm,这里装的是16.13.0版本
nvm install 16.13.0
设置npm镜像
npm config set registry https://registry.npmmirror.com

从项目根目录进入前端目录,编译前端

cd RWKV-Runner/frontend
npm ci
npm run build #编译前端

(少女泡茶中…)

npm ci卡了我好久…

记得npm run build
(继续泡茶…)

回到项目根目录,同时启动前后端,
python ./backend-python/main.py --webui --port 2777

用ssh架一个隧道到服务器
ssh -L 2777:localhost:2777 root@172.31.224.191 -p 22

访问http://127.0.0.1:2777/
在这里插入图片描述

下载模型

hugging face上很多了,我主要是想来玩roleplay模型,遂下载之。
https://huggingface.co/xiaol/RWKV-v5.2-7B-Role-play-16k

(RWKV模型挺好的就是只用下一个pth文件就好)

在UI看了半天不知道怎么改模型,直接用API改好了…
看了下文档里面有写:调用/switch-model载入模型, 参考API文档: http://127.0.0.1:8000/docs
(我这里port是2777,自行修改即可)

文档里找到switch-model的文档说明
在这里插入图片描述

点try it out修改request body,将路径改成自己的路径,execute即可
在这里插入图片描述

烧显存注意,大约需要16G显存

等模型加载进显存

回复你好测试,ok
在这里插入图片描述

关于roleplay

看了下社区的作者说是claude的格式,我也不知道claude的格式是啥…到时候再说吧… 结束!
(有空看看别人的roleplay项目实现吧…)在这里插入图片描述
roleplay prompt参考:
https://tieba.baidu.com/p/8455687480

这篇关于随心玩玩(十五)LLM 浅玩一下RWKV模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/925116

相关文章

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

如何在本地部署 DeepSeek Janus Pro 文生图大模型

《如何在本地部署DeepSeekJanusPro文生图大模型》DeepSeekJanusPro模型在本地成功部署,支持图片理解和文生图功能,通过Gradio界面进行交互,展示了其强大的多模态处... 目录什么是 Janus Pro1. 安装 conda2. 创建 python 虚拟环境3. 克隆 janus

本地私有化部署DeepSeek模型的详细教程

《本地私有化部署DeepSeek模型的详细教程》DeepSeek模型是一种强大的语言模型,本地私有化部署可以让用户在自己的环境中安全、高效地使用该模型,避免数据传输到外部带来的安全风险,同时也能根据自... 目录一、引言二、环境准备(一)硬件要求(二)软件要求(三)创建虚拟环境三、安装依赖库四、获取 Dee

DeepSeek模型本地部署的详细教程

《DeepSeek模型本地部署的详细教程》DeepSeek作为一款开源且性能强大的大语言模型,提供了灵活的本地部署方案,让用户能够在本地环境中高效运行模型,同时保护数据隐私,在本地成功部署DeepSe... 目录一、环境准备(一)硬件需求(二)软件依赖二、安装Ollama三、下载并部署DeepSeek模型选

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行