建设部注册监理工程师网站,温州网站建设小程序,短视频营销推广策略,大连建设项目1 简介
text-generation-webui是一个挺好用的大模型部署UI#xff0c;提供了很多便于交互的接口#xff0c;安装部署好之后将model放置到对应的位置即可在网页访问#xff0c;若是在服务器部署也可以通过ssh端口转发至公网服务器进行访问。 其中#xff0c;模型的下载可参…1 简介
text-generation-webui是一个挺好用的大模型部署UI提供了很多便于交互的接口安装部署好之后将model放置到对应的位置即可在网页访问若是在服务器部署也可以通过ssh端口转发至公网服务器进行访问。 其中模型的下载可参考这个教程比较有效的是利用镜像网站和下载脚本进行下载还有直接在浏览器中点击下载后再上传服务器。
2 安装
2.1 官方安装
先把库下载到本地
git clone https://github.com/oobabooga/text-generation-webui.git然后进入文件夹即可按照官方的教程进行安装主要是根据系统类型支不支持AVX指令集以及是否使用GPU来选择。
2.2 自定义安装
2.2.1 环境
可以不使用官方的一键安装脚本因为其会新下载一个conda并新建一个环境并且下载过程会从国外官方的源下载所需要的环境包比较慢。 首先激活conda环境根据平台安装pytorch如果使用GPU则安装cuda版本的并且安装cuda相关的库等等这里不再赘述。 其次根据GPU与CPU选择对应的依赖文件例如支持NVIDIA GPU但不支持AVX2指令集的则选择requirements_noavx2.txt使用清华源进行加速
pip install -r requirements_noavx2.txt -i https://pypi.tuna.tsinghua.edu.cn/simple题外话 使用AVX2指令集有可能在模型部署的推理阶段出现Illegal instruction (core dumped) error的bug可以根据链接重新下载对应的包。
2.2.2 模型
然后根据示例放置好模型文件。比如量化后的gguf模型可以直接放置。但是使用Q4量化的模型时会出现AttributeError: ‘LlamaCppModel’ object has no attribute model’的bug推荐使用Q5以上的。
text-generation-webui
└── models└── llama-2-13b-chat.Q4_K_M.gguf原始的模型需要放在models文件夹下的子文件夹中示意如下。
text-generation-webui
├── models
│ ├── lmsys_vicuna-33b-v1.3
│ │ ├── config.json
│ │ ├── generation_config.json
│ │ ├── pytorch_model-00001-of-00007.bin
│ │ ├── pytorch_model-00002-of-00007.bin
│ │ ├── pytorch_model-00003-of-00007.bin
│ │ ├── pytorch_model-00004-of-00007.bin
│ │ ├── pytorch_model-00005-of-00007.bin
│ │ ├── pytorch_model-00006-of-00007.bin
│ │ ├── pytorch_model-00007-of-00007.bin
│ │ ├── pytorch_model.bin.index.json
│ │ ├── special_tokens_map.json
│ │ ├── tokenizer_config.json
│ │ └── tokenizer.model在text-generation-webui的模型读取中有多种模式可根据不同的情况进行选择。 此外在模型加载时还容易出现AttributeError: ‘NoneType’ object has no attribute ‘Llama’可根据平台选择对应的库下载安装llama-cpp-python即可。 特别地在linux/arm64平台下下载安装时会出现ERROR: Failed building wheel for llama-cpp-python可尝试升级gcc已经在aarch平台上成功验证或者安装arm64-wheels的版本还没测试过。
3 部署
3.1 启动
在目录下启动即可。
python server.py此时会返回显示在localhost:7860生成Web UI
3.2 autossh转发
在内网的服务器上部署访问不太方便参考ssh隧道可利用autossh转发到公网服务器上进行访问。安装autossh后在服务器上运行以下命令
# 80 公网端口
# 7860 本地端口
# usernamexxx.xx.xx.xx 公网服务器用户和ip地址
# (-p xxx) 公网的ssh端口 一般默认22 可不写
autossh -M 4010 -NR 80:localhost:7860 usernamexxx.xxx.xxx.xxx (-p xxxx)参数解释
-M 4010表示用4010端口监听ssh连接的状态-N表示不执行远程命令-R将公网服务器的某个端口转发到本机的某个端口
注意一般非root用户不能使用1024以下的端口所以公网服务器的端口选择依情况而定并且对于阿里云等租赁的服务器还要在网站的控制台打开对应的端口才行仅在服务器上操控防火墙开放端口还不行。
执行命令后即可在个人电脑输入公网ip:端口进行访问Web UI。