文章摘要
模型及安装包下载链接
这篇文章中,我们深入探索Vicuna模型。
这是一个由UC Berkeley,CMU,Stanford和UC San Diego的团队开发的开源聊天机器人。这个模型的性能之强大,令人瞩目。在许多标准测试中,Vicuna都已证明其表现号称能达到GPT-4的90%性能,使其成为开源大模型领域的翘楚。
本教程的目标是让大家能够在Linux和Windows操作系统下自己部署Vicuna模型。我将提供详细的安装步骤和全部所需的安装包下载链接,以便您可以轻松完成模型的部署。构建你自己的聊天机器人。
一、Vicuna简介
1. Vicuna模型定义
Vicuna模型是一种开源的聊天机器人模型,它诞生于一次在ShareGPT平台上的大规模对话微调训练中。作为一种基于Transformer架构的自回归语言模型,Vicuna在2023年春季(3月至4月)经过精心的训练后,正式亮相。
2. Vicuna模型的应用场景
Vicuna作为一个强大的大型语言模型和聊天机器人,被广大的自然语言处理、机器学习和人工智能研究者和爱好者用于学术研究和实际应用。
3. Vicuna模型的训练数据
Vicuna模型依托于从ShareGPT.com收集的70K的丰富对话数据进行训练。为了衡量模型的品质,还特意设计了80个多样化的问题,由GPT-4来评判Vicuna模型的输出。
4. Vicuna模型的版本
Vicuna模型的发展经历了多个版本,从最初的原始版本,到后续的一系列改进版本。在网络上我们可以找到一些用户对于不同版本的Vicuna的反馈:
-
原始Vicuna版本:部分用户在使用过程中未发现自我审查的问题,但偶尔会遭遇“失控”现象,即模型自我对话,误认为自己是用户。
-
Vicuna-7B-1.1-GPTQ-4bit-128g:此版本获得了许多用户的好评,被视为目前的最佳选择之一。
-
Uncensored Vicuna(未经审查的Vicuna):对于这个版本,用户的反馈各不相同,一些人认为它有时会过度“说教”。
-
Vicuna 1.1:Vicuna 1.1:与Vicuna 1.0相比,Vicuna 1.1解决了一些格式问题,因此有些用户更偏爱它。
“13b"和"7b"是表示模型参数数量的标记。如“b”是"billion”(十亿)的缩写,"13b"代表模型具有130亿个参数,"7b"代表模型具有70亿个参数。UC伯克利学者联手CMU、斯坦福等推出的全新模型70亿/130亿参数的Vicuna,俗称「小羊驼」(骆马)。小羊驼号称能达到GPT-4的90%性能,我们接下来进行部署。
5. 性能评估
在Vicuna与GPT-4的比较中,GPT-4在90%的问题上更倾向于Vicuna的回答。相对于其他开源模型(如LLaMA和Alpaca),Vicuna表现出色,并且与专有模型(如ChatGPT和Bard)的竞争力也不容忽视。在45%的问题中,GPT-4认为Vicuna的回答至少与ChatGPT的同等或更优。根据GPT-4对每个回答的定量评分(满分为10),我们可以计算出每个模型在80个问题中获得的总分。在这个比较中,Vicuna的总分达到了ChatGPT的92%。
二、linux 操作系统下部署
1. 环境介绍
- CentOS Linux release 7.9.2009(core)
- 可以正常使用yum源
- 可以连通互联网
2. 安装Python3.10.7
2.1 下载Python3.10.7安装包
在官网下载:https://www.python.org/ftp/python/3.10.7/Python-3.10.7.tgz
2.2 安装gcc编译器
gcc有些系统版本已经默认安装,通过 gcc --version 查看
![在这里插入图片描述](https://img-blog.csdnimg.cn/b77e1b85330a430caeecdcd5d06fc39f.png)
没安装的先安装gcc,yum -y install gcc
2.3 安装依赖包
不要缺少,否则有可能安装python出错,python3.7以下的版本可不装 libffi-devel ,我们所需要的是Python3.10.X版本
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
2.4 升级openssl版本
![在这里插入图片描述](https://img-blog.csdnimg.cn/45a475a241a74353a73fab61d365e0b9.png)
此处有个坑,在此版本的openssl下编译安装Python3.10.7后,会出现报错 No module named ‘_ssl‘的情况,所以需要先手动将openssl升级3.05
2.4.1 安装perl-CPAN模块
openssl 3.0使用perl代码,需要提前安装IPC/Cmd.pm模块。
yum install -y perl-CPAN
yum install perl-IPC-Cmd
进入CPAN的shell模式,首次进入需要配置shell,按照提示操作,一般选择默认配置,当提示中有sudo选项时,一定要选择sudo,然后其他选默认,出现 cpan[1]>提示符后,键入安装模块命令,安装后再键入退出命令。
cpan[1]> install IPC/Cmd.pm
cpan[2]> quit
在无互联网的内网环境下,可以去https://metacpan.org网站下载模块,不使用CPAN的shell模式,直接以命令行形式安装。执行perl语句时,如提示某模块未安装,到官网查找下载后,依次安装。
yum install wget
wget https://cpan.metacpan.org/authors/id/B/BI/BINGOS/IPC-Cmd-1.04.tar.gz
tar -zxvf IPC-Cmd-1.04.tar.gz
cd IPC-Cmd-1.04.tar.gz
perl Makefile.PL
make
make install
2.4.2 编译安装openssl3.0.5
在https://www.openssl.org的download中,根据需要下载3.0.5版本的压缩包
在服务器上创建存放安装包的目录:
mkdir /usr/local/openssl3
在服务器使用wget命令下载安装包
# 进入安装目录
cd /usr/local/openssl3
# 使用wget下载,如果下载不了,就本地下载通过FTP上传进行解压
wget --no-check-certificate https://www.openssl.org/source/openssl-3.0.5.tar.gz
安装
# 解压安装包
tar xf openssl-3.0.5.tar.gz
# 进入解压后目录
cd /usr/local/openssl3/openssl-3.0.5
使用共享库安装,检查zlib库是否存在
whereis zlib
![在这里插入图片描述](https://img-blog.csdnimg.cn/053aae98e6614d4faae5dea76d54094e.png)
没有的话,安装:
yum install -y zlib
安装openssl到 /usr/local/openssl 目录
# 进入安装目录:
cd /usr/local/openssl3/openssl-3.0.5
# 执行配置命令,prefix默认路径/usr/local:
./config --prefix=/usr/local/openssl
![在这里插入图片描述](https://img-blog.csdnimg.cn/612833adecd142f7953e43df9ba99c41.png)
编译安装:
make && make install
执行可能很慢,耐心等待执行结束。
执行到此,openssl还不能使用,libssl.so.3文件在/usr/local/openssl/lib64目录下面,需要配置到共享库中
# 换行添加/usr/local/openssl/lib64
vim /etc/ld.so.conf
# 加载生效
ldconfig
![在这里插入图片描述](https://img-blog.csdnimg.cn/418835e008a247baacc4d24fefc5bdc2.png)
# 再次进入/usr/local/openssl/bin目录下执行命令已经成功了
[root@node0 bin]# ./openssl version
OpenSSL 3.0.5 5 Jul 2022 (Library: OpenSSL 3.0.5 5 Jul 2022)
2.5 编译安装python3.10.7
2.5.1 修改配置文件
通过FTP或者wget下载得到Python-3.10.7.tgz软件包
# 解压
tar xf Python-3.10.7.tgz
cd Python-3.10.7
在进行编译安装前,Python3.10和openssl3.0.5的版本配置文件跟以前有点区别,python3.10的版本OPENSSL不再是/usr/local/ssl 的默认路径,变成了/path/to/openssl/directory,而openssl3.0.5目录里面没有lib这个文件夹,变成了lib64,注意这个变化,在建立软链接的时候一定要写lib64不能写成lib.
解决办法:
进入解压后的Python3.10.7文件目录,打开Python-3.10.7/Modules/目录下的Setup文件
vim /Modules/Setup
把下面5句代码的注释取消,还有两个地方的路径要修改。
- OPENSSL后面的路径改成你自己的openssl目录,我的是/urs/local/openssl,这里原本是OPENSSL=/path/to/openssl/directory。
- 二是蓝色框里面的要改成lib64,其它的不要动保存。我的openssl版本是3.0.5
![在这里插入图片描述](https://img-blog.csdnimg.cn/c1e050bac80d41cc8c487cddaaea14e8.png)
最后保存退出
2.5.2 编译安装Python3.10.7
cd Python-3.10.7
./configure --prefix=/usr/local/python3
make clean
make
make install
建立软连接:
ln -s /usr/local/python3/bin/python3.10 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.10 /usr/bin/pip3
测试是否能正常导入_ssl,不报错即正常
![在这里插入图片描述](https://img-blog.csdnimg.cn/20a5a21006654f388e192640447eee43.png)
3. 配置Fastchat
GitHub项目源地址:https://github.com/lm-sys/FastChat
先进行依赖包安装
pip3 install fschat
下载项目到本地,慢的话可以自己下载好通过FTP上传到服务器
git clone https://github.com/lm-sys/FastChat.git
cd FastChat
安装依赖包
# 如果你是严格按照上面的过程做的,请这样升级pip3
/usr/local/python3/bin/python3.10 -m pip install --upgrade pip
# 否则的话使用这种方式,不升级pip会报错
#pip3 install --upgrade pip # enable PEP 660 support
pip3 install -e .
4. 模型下载
模型下载链接:
cd FastChat && mkdir vicuna
下载后将victuna-13b和vicuna-7b两个模型放在FastChat/vicuna文件中
5. cli测试
下面的命令对于Vicuna-13B需要约28GB的GPU内存,对于Vicuna-7B需要约14GB的GPU内存。根据自己的设备情况自行测试最佳的运行方式
# 启动vicuna-7b模型
python3 -m fastchat.serve.cli --model-path vicuna/vicuna-7b-v1.1
# 启动/vicuna-13b-v1.1 --load-8bit, 13B需要28G显存,无法直接使用,可以使用--load-8bit
python3 -m fastchat.serve.cli --model-path vicuna_data/vicuna-13b-v1.1 --load-8bit
# 加载多块GPU
python3 -m fastchat.serve.cli --model-path vicuna_data/vicuna-7b-v1.1 --num-gpus 2
# 这将仅在CPU上运行,不需要GPU。对于Vicuna-13B需要约60GB的CPU内存,对于Vicuna-7B需要约30GB的CPU内存。
python3 -m fastchat.serve.cli --model-path vicuna_data/vicuna-7b-v1.1 --device cpu
![图1](https://img-blog.csdnimg.cn/46e9cffbe8464eb592f5a71ae71ad24a.png)
6. 羊驼模型Web GUI测试
要使用Web用户界面进行服务,需要三个主要组件:与用户进行交互的Web服务器,托管一个或多个模型的模型工作器,以及协调Web服务器和模型工作器的控制器。
首先开启三个不同的终端
1、启动控制器,该控制器负责管理分布式工作器。
python3 -m fastchat.serve.controller
![在这里插入图片描述](https://img-blog.csdnimg.cn/0f8d4af0083542278dc6396fa1129165.png)
2、启动模型工作器,等待进程加载模型完成,并看到"Uvicorn running on …"的提示,模型工作器将向控制器注册自己。
# 如果没有GPU,要在后面添加 --device cpu,否则会报错
python3 -m fastchat.serve.model_worker --model-name 'vicuna-7b-v1.1' --model-path vicuna_data/vicuna-7b-v1.1
![图3](https://img-blog.csdnimg.cn/b96bc0136ee24c48a9597a723ab972d4.png)
3、为确保您的模型工作器与控制器正确连接,请使用以下命令发送测试消息,您将看到一个简短的输出。
python3 -m fastchat.serve.test_message --model-name vicuna-7b-v1.1
![图4](https://img-blog.csdnimg.cn/bb62c2ed2e984b22b3da88294a938577.png)
4、启动Gradio Web服务器,这是用户将与之交互的用户界面。
python3 -m fastchat.serve.gradio_web_server
![图5](https://img-blog.csdnimg.cn/178df0e561204b5b8c054676c2f177b3.png)
5、在浏览器访问:localhost:7860,看到如下窗口,即可进行交互
![图6](https://img-blog.csdnimg.cn/98f600252d0b4cf398c16c1cb3ddf227.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/59d64241f84345919e5d73db1cee68aa.png)
二、WIndows操作系统下部署
1. 环境介绍
- 操作系统:win10
- I7,64G运行内存
- GPU 4080 16G
- Python3.10.7
- Pycharm 2021.3
2. 安装开发环境
2.1 安装Python3.10.7 、Pycharm破解版、Git
傻瓜式安装,安装包看这里:
3. 安装FastChat
3.1 使用Git下载FastChat源码
首先打开Git Bash
![在这里插入图片描述](https://img-blog.csdnimg.cn/ef656187d2ec48e186d7cc057a56816d.png)
进入项目的文件夹,我这里是E:\02_LargeModel,执行命令:
git clone https://github.com/lm-sys/FastChat.git
等待执行完成
![在这里插入图片描述](https://img-blog.csdnimg.cn/22a19426ac4d4341b8e2a38790555108.png)
3.2 使用Pycharm配置项目
![在这里插入图片描述](https://img-blog.csdnimg.cn/80c751369f0b4d5697f9a9b7210f49e0.png)
配置python虚拟环境
![在这里插入图片描述](https://img-blog.csdnimg.cn/5f3b4a68386e4ee0a4fe23384b07b831.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/c91ef680481244bab25dc9eca830887c.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/ef228d46956f482cb71fda1f1e05292c.png)
点击OK后,等待创建虚拟环境,然后再次点击OK
![在这里插入图片描述](https://img-blog.csdnimg.cn/d1beab733f11469f88fafb9ad7c1d014.png)
安装依赖包
![在这里插入图片描述](https://img-blog.csdnimg.cn/7be3862bcbc247f7bc2e1e077d8bce9f.png)
pip install fschat -i https://pypi.tuna.tsinghua.edu.cn/simple
![在这里插入图片描述](https://img-blog.csdnimg.cn/3ac44225e03c42709d7092ba171c8b8d.png)
等待安装完成即可。
进入FastChat文件夹,升级pip及安装依赖
cd FastChat
pip install --upgrade pip
pip install -e .
![在这里插入图片描述](https://img-blog.csdnimg.cn/525080fb62d241638f95a78bb15d7de8.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/bf1e7f533428434c9d33aa77176dd4c5.png)
3.3 检查CUDA
安装到这里,我们要先检查以下CUDA,可以新建一个test.py,打印一下设备情况 :
![在这里插入图片描述](https://img-blog.csdnimg.cn/e790c870d00343f28a200cd523d1f027.png)
如果输出是CUDA,就可以跳过这一节,否则的话,请严格按照文档进行操作
3.3.1 查看显卡信息
win+R -> 输入cmd 然后点击“运行” -> 输入nvidia-smi 检查是否有显卡信息
![在这里插入图片描述](https://img-blog.csdnimg.cn/00c0b87b21c04822b69438c7494496a6.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/40c12185e1eb48d18a89cb2bdf9a6743.png)
3.3.2 查看CUDA与Torch的对应关系
CUDA |
Torch |
TorchVision |
cu75 |
0.1.7, 0.1.6, 0.2.0, 0.3.0, 0.1.11, 0.1.8, 0.1.9, 0.1.10, 0.1.12, 0.3.0 |
- |
cu80 |
1.0.0, 0.4.0, 0.1.7, 0.4.1, 0.4.1, 0.1.6, 1.0.1, 0.2.0, 1.0.1, 0.3.0, 0.1.11, 0.1.8, 0.3.1, 0.1.9, 0.1.10, 0.1.12, 0.3.0 |
- |
cu90 |
1.0.0, 0.4.1, 0.4.1, 1.0.1, 1.1.0, 1.0.1, 0.3.0, 0.3.1, 0.4.0, 0.3.0 |
0.3.0 |
cu91 |
0.3.1, 0.4.0 |
- |
cu92 |
1.5.02, 0.4.1, 0.4.1, 1.5.12, 1.6.02, 1.3.02, 1.3.12, 1.7.02, 1.7.12, 1.2.02, 1.4.02 |
0.8.0, 0.8.22, 0.8.12, 0.7.02, 0.4.22, 0.4.12, 0.6.02, 0.6.12, 0.4.02, 0.5.02 |
cu100 |
1.0.0, 1.2.0, 1.1.0, 1.0.1, 1.3.02, 1.3.12, 1.0.1, 1.4.02 |
0.4.22, 0.4.12, 0.4.0, 0.3.0, 0.5.02 |
cu101 |
1.5.02, 1.6.02, 1.5.12, 1.3.0, 1.3.1, 1.7.02, 1.7.12, 1.8.12, 1.4.0, 1.8.02 |
0.8.0, 0.8.22, 0.8.12, 0.9.12, 0.7.02, 0.4.2, 0.9.02, 0.5.0, 0.4.1, 0.6.02, 0.6.12 |
cu102 |
1.12.0, 1.9.12, 1.10.0, 1.7.1, 1.9.02, 1.10.1, 1.12.1, 1.7.0, 1.10.2, 1.5.0, 1.6.0, 1.8.0, 1.5.1, 1.8.12, 1.11.0 |
0.11.1, 0.6.0, 0.9.1, 0.11.3, 0.9.12, 0.8.1, 0.6.1, 0.10.0 , 0.8.0, 0.9.0, 0.10.1, 0.7.0, 0.11.0, 0.8.2, 0.13.0, 0.10.0, 0.11.2, 0.13.1, 0.12.0 |
cu110 |
1.7.02, 1.7.12 |
0.8.0, 0.8.12, 0.8.22 |
cu111 |
1.9.12, 1.10.0, 1.9.02, 1.10.1, 1.10.2, 1.8.12, 1.8.02 |
0.11.3, 0.9.12, 0.11.1, 0.9.02, 0.10.1, 0.10.0, 0.11.2, 0.11.0 |
cu113 |
1.12.0, 1.10.0, 1.10.1, 1.12.1, 1.10.2, 1.11.0 |
0.11.1, 0.13.0, 0.11.0, 0.13.1, 0.11.2, 0.11.3, 0.12.0 |
cu115 |
1.11.0 |
0.12.0 |
cu116 |
1.12.0, 1.12.1 |
0.13.0, 0.13.1 |
3.3.3 Torch与Torchvision对应关系
Torch |
TorchVision |
Python |
main / nightly |
main / nightly |
>=3.8, <=3.10 |
2.0.0 |
0.15.1 |
>=3.8, <=3.10 |
1.13.0 |
0.14.0 |
>=3.7.2, <=3.10 |
1.12.0 |
0.13.0 |
>=3.7, <=3.10 |
1.11.0 |
0.12.3 |
>=3.7, <=3.10 |
1.10.2 |
0.11.3 |
>=3.6, <=3.9 |
1.10.1 |
0.11.2 |
>=3.6, <=3.9 |
1.10.0 |
0.11.1 |
>=3.6, <=3.9 |
1.9.1 |
0.10.1 |
>=3.6, <=3.9 |
1.9.0 |
0.10.0 |
>=3.6, <=3.9 |
1.8.2 |
0.9.2 |
>=3.6, <=3.9 |
1.8.1 |
0.9.1 |
>=3.6, <=3.9 |
1.8.0 |
0.9.0 |
>=3.6, <=3.9 |
1.7.1 |
0.8.2 |
>=3.6, <=3.9 |
1.7.0 |
0.8.1 |
>=3.6, <=3.8 |
1.7.0 |
0.8.0 |
>=3.6, <=3.8 |
1.6.0 |
0.7.0 |
>=3.6, <=3.8 |
1.5.1 |
0.6.1 |
>=3.5, <=3.8 |
1.5.0 |
0.6.0 |
>=3.5, <=3.8 |
1.4.0 |
0.5.0 |
==2.7, >=3.5, <=3.8 |
1.3.1 |
0.4.2 |
==2.7, >=3.5, <=3.7 |
1.3.0 |
0.4.1 |
==2.7, >=3.5, <=3.7 |
1.2.0 |
0.4.0 |
==2.7, >=3.5, <=3.7 |
1.1.0 |
0.3.0 |
==2.7, >=3.5, <=3.7 |
<=1.0.1 |
0.2.2 |
==2.7, >=3.5, <=3.7 |
3.3.4 Torch与Torchaudio对应关系
Torch |
TorchAudio |
Python |
main / nightly |
main / nightly |
>=3.8, <=3.10 |
2.0.1 |
2.0.2 |
>=3.8, <=3.11 |
2.0.0 |
2.0.1 |
>=3.8, <=3.11 |
1.13.1 |
0.13.1 |
>=3.7, <=3.10 |
1.13.0 |
0.13.0 |
>=3.7, <=3.10 |
1.12.0 |
0.12.0 |
>=3.7, <=3.10 |
1.11.0 |
0.11.0 |
>=3.7, <=3.9 |
1.10.0 |
0.10.0 |
>=3.6, <=3.9 |
1.9.1 |
0.9.1 |
>=3.6, <=3.9 |
1.9.0 |
0.9.0 |
>=3.6, <=3.9 |
1.8.2 |
0.8.2 |
>=3.6, <=3.9 |
1.8.1 |
0.8.1 |
>=3.6, <=3.9 |
1.8.0 |
0.8.0 |
>=3.6, <=3.9 |
1.7.1 |
0.7.2 |
>=3.6, <=3.9 |
1.7.0 |
0.7.0 |
>=3.6, <=3.8 |
1.6.0 |
0.6.0 |
>=3.6, <=3.8 |
1.5.0 |
0.5.0 |
>=3.5, <=3.8 |
1.4.0 |
0.4.0 |
==2.7, >=3.5, <=3.8 |
3.3.5 下载对应版本的whl文件
回顾一下我的环境,CUDA12.0,Python3.10.7,所以我选择的版本是:
![在这里插入图片描述](https://img-blog.csdnimg.cn/f34039fd8fe14bbcab01789e9630dee4.png)
下载链接如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/ef22d823acaf4a9fbc4c95f97ca5f74f.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/8145d1a2138b43d89775d394d6b38430.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/f7ce8d97108d4bec97c85d6bb8c78940.png)
如果你跟我的CUDA版本不同,那么请根据自己的版本,选择对应的torch、torchaudio、torchvision版本,如果跟我的相同,可以直接从我提供的软件包中进行安装
3.3.6 安装GPU版Torch
在FastChat新建一个torch_whl文件夹,把下载好的三个.whl文件存放进去,如图:
![在这里插入图片描述](https://img-blog.csdnimg.cn/cbd0cbb27c6048ecb9ae5f1512a2e4d9.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/3c8993caf7314d1ead2bf36cbaee8129.png)
3.3.7 测试GPU
完成上述安装后,再次执行test.py文件,如果输出是cuda,则安装成功,如还是cpu,请自行检查
![在这里插入图片描述](https://img-blog.csdnimg.cn/d707e507e030461783cf796cc4973e07.png)
4. 加载羊驼模型
在FastChat文件夹下新建一个vicuna文件夹,将下载的7B和13B模型存放在这里
![在这里插入图片描述](https://img-blog.csdnimg.cn/a37fe549679847d8a25843f7cb5a7435.png)
整体目录结构如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/d593eab1ac8f44b4a8ca5b59095b3b6c.png)
5. cli测试
下面的命令对于Vicuna-13B需要约28GB的GPU内存,对于Vicuna-7B需要约14GB的GPU内存。根据自己的设备情况自行测试最佳的运行方式
# 启动vicuna-7b模型
python -m fastchat.serve.cli --model-path vicuna/vicuna-7b
# 启动/vicuna-13b-v1.1 --load-8bit, 13B需要28G显存,无法直接使用,可以使用--load-8bit
python3 -m fastchat.serve.cli --model-path vicuna_data/vicuna-13b-v1.1 --load-8bit
# 加载多块GPU
python3 -m fastchat.serve.cli --model-path vicuna_data/vicuna-7b-v1.1 --num-gpus 2
# 这将仅在CPU上运行,不需要GPU。对于Vicuna-13B需要约60GB的CPU内存,对于Vicuna-7B需要约30GB的CPU内存。
python3 -m fastchat.serve.cli --model-path vicuna_data/vicuna-7b-v1.1 --device cpu
我以运行Vicuna-7B举例,其他的可以自己根据配置情况进行尝试
![在这里插入图片描述](https://img-blog.csdnimg.cn/088b07c97aa14b2bb10855e43d781e7b.png)
在这里可以进行像ChatGPT一样的问答了:
![在这里插入图片描述](https://img-blog.csdnimg.cn/66444e19f6b9423cb5c55c2914c67eed.png)
6. Web GUI测试
要使用Web用户界面进行服务,需要三个主要组件:与用户进行交互的Web服务器,托管一个或多个模型的模型工作器,以及协调Web服务器和模型工作器的控制器。
首先开启三个不同的终端
1、启动控制器,该控制器负责管理分布式工作器。
python -m fastchat.serve.controller
![在这里插入图片描述](https://img-blog.csdnimg.cn/66df5b42442244588050f6c83ace27b7.png)
2、启动模型工作器,等待进程加载模型完成,并看到"Uvicorn running on …"的提示,模型工作器将向控制器注册自己。
# 如果没有GPU,要在后面添加 --device cpu,否则会报错
python -m fastchat.serve.model_worker --model-path vicuna/vicuna-7b
![在这里插入图片描述](https://img-blog.csdnimg.cn/92e3133c61644d3db5650ec8e0b09b4c.png)
3、为确保您的模型工作器与控制器正确连接,请使用以下命令发送测试消息,您将看到一个简短的输出。
python -m fastchat.serve.test_message --model-name vicuna-7b
![在这里插入图片描述](https://img-blog.csdnimg.cn/5d761c5c61c84e4f92b9ecc51fd266f1.png)
4、启动Gradio Web服务器,这是用户将与之交互的用户界面。
python -m fastchat.serve.gradio_web_server
![在这里插入图片描述](https://img-blog.csdnimg.cn/ca65c3c45fc34fa4bc067ffff38c646a.png)
5、在浏览器访问:localhost:7860,看到如下窗口,即可进行交互,注意在windows服务器下,localhost:7860无法访问,要将localhost替换成本机的ip,
查看本机IP:
![在这里插入图片描述](https://img-blog.csdnimg.cn/df350e8fefbf4a339d8e96b98f740a8e.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/82c05e442a4641e49906fc61da56aa5b.png)
输入 ‘‘本机IP地址:7860’’ 打开网址,即可进行会话
![图6](https://img-blog.csdnimg.cn/98f600252d0b4cf398c16c1cb3ddf227.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/59d64241f84345919e5d73db1cee68aa.png)
感谢您阅读这篇文章!如果您觉得有所收获,别忘了点赞、收藏并关注我,这是我持续创作的动力。您有任何问题或建议,都可以在评论区留言,我会尽力回答并接受您的反馈。如果您希望了解某个特定主题,也欢迎告诉我,我会乐于创作与之相关的文章。谢谢您的支持,期待与您共同成长!
期待与您在未来的学习中共同成长。