chatglm_with_vits本地部署

实现前端live2D交互对话,后端chatglm提供语言生成,vits模型onnx导出版实现文字转语音

项目地址:vits_with_chatgpt-gpt3

部署步骤

下载项目及相关模型

  1. 首先从github仓库下载项目到本地,然后打开moe文件夹
  2. 下载语音模型vits_onnx_model到moe文件夹中
  3. 下载开源ChatGLM-6B模型,注意下载完整的模型,然后之后会使用INT4量化等级来加载模型,最低GPU显存要求为6G。如果下载过慢可以在这里下载

部署环境

  1. 下载FFmpeg,按照教程安装
  2. 确保cmake路径添加到系统变量中,比如用的vs2022下自带cmke
  3. 安装pyopenjtalk
  4. 项目运行需要gcc和openmp,因此需要安装TDM-GCC,这里按照网上教程按照并添加路径即可,初次安装点击create没有openmp选项,需要安装后再次运行exe文件,选择mange,双击目前安装的路径进行管理,额外安装

  5. 新建conda环境,python3.9,3.10都可以,然后安装符合自己电脑版本的torch-gpu
  6. 安装其他需要的包
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
aiofiles==23.1.0
aiohttp==3.8.4
aiosignal==1.3.1
altair==4.2.2
anyio==3.6.2
appdirs==1.4.4
async-timeout==4.0.2
attrs==22.2.0
audioread==3.0.0
certifi==2022.12.7
cffi==1.15.1
charset-normalizer==3.1.0
click==8.1.3
cn2an==0.5.19
colorama==0.4.6
coloredlogs==15.0.1
contourpy==1.0.7
cpm-kernels==1.0.11
cycler==0.11.0
Cython==0.29.33
decorator==5.1.1
eng-to-ipa==0.0.2
entrypoints==0.4
fastapi==0.95.0
ffmpy==0.3.0
filelock==3.10.2
Flask==2.2.3
flatbuffers==23.3.3
fonttools==4.39.2
frozenlist==1.3.3
fsspec==2023.3.0
gradio==3.23.0
h11==0.14.0
httpcore==0.16.3
httpx==0.23.3
huggingface-hub==0.13.3
humanfriendly==10.0
icetk==0.0.6
idna==3.4
importlib-metadata==6.1.0
importlib-resources==5.12.0
inflect==6.0.2
itsdangerous==2.1.2
jamo==0.4.1
jieba==0.42.1
Jinja2==3.1.2
joblib==1.2.0
jsonschema==4.17.3
kiwisolver==1.4.4
lazy_loader==0.2
librosa==0.10.0.post2
linkify-it-py==2.0.0
llvmlite==0.39.1
markdown-it-py==2.2.0
MarkupSafe==2.1.2
matplotlib==3.7.1
mdit-py-plugins==0.3.3
mdurl==0.1.2
mpmath==1.3.0
msgpack==1.0.5
multidict==6.0.4
networkx==3.0
numba==0.56.4
numpy==1.23.5
onnxruntime==1.14.1
openai==0.27.2
orjson==3.8.8
packaging==23.0
pandas==1.5.3
Pillow==9.4.0
pooch==1.6.0
proces==0.1.4
protobuf==3.18.0
pycparser==2.21
pydantic==1.10.7
pydub==0.25.1
pyopenjtalk==0.3.0
pyparsing==3.0.9
pypinyin==0.48.0
pyreadline3==3.4.1
pyrsistent==0.19.3
python-dateutil==2.8.2
python-multipart==0.0.6
pytz==2022.7.1
PyYAML==6.0
regex==2023.3.22
requests==2.28.2
rfc3986==1.5.0
scikit-learn==1.2.2
scipy==1.10.1
semantic-version==2.10.0
sentencepiece==0.1.97
six==1.16.0
sniffio==1.3.0
soundfile==0.12.1
soxr==0.3.4
starlette==0.26.1
sympy==1.11.1
threadpoolctl==3.1.0
tokenizers==0.13.2
toolz==0.12.0
torch==2.0.0+cu117
torchaudio==2.0.1+cu117
torchvision==0.15.1+cu117
tqdm==4.65.0
transformers==4.26.1
typing_extensions==4.5.0
uc-micro-py==1.0.1
Unidecode==1.3.6
urllib3==1.26.15
uvicorn==0.21.1
websockets==10.4
Werkzeug==2.2.3
yarl==1.8.2
zipp==3.15.0

可以复制进txt文件中批量安装,但是实际我用原项目中的requirement.txt的时候会出现错误,无法批量安装,手动安装后无问题。所以这里可以试试我的行不行,不行的话可以手动安装主要的包。记得transformers==4.26.1,版本过过低都有可能出错。

  1. 激活环境运行localchat.py
    前面步骤没有问题的话,就可以运行文件,这里加载模型等待的时间会有些长

    成功后,服务就运行在相应端口了。

部署前端

下载Live2D项目
解压后,进入项目的x86文件夹下,修改config.json文件

1
2
3
4
5
6
7
8
9
10
11
"ChatAPI" : 
{
"ChatSavePath" : "chat", //聊天音频和文本保存路径
"CustomChatServer" :
{
//服务器地址,端口默认8080 本地部署就是"http://127.0.0.1:8080"
"HostPort" : "http://yourhost:8080",
"On" : true, //开启自定义聊天接口
"ReadTimeOut" : 114, //等待响应时间(s)
"Route" : "/chat" //路径
},

双击Live2D-x86.exe启动程序,然后桌面上就会显示人物了,通过任务栏中程序图标右击可以更改程序设置。

如何对话?
鼠标右键双击人物,会出现对话框,输入文字后回车等待回应即可。


chatglm_with_vits本地部署
https://shanhainanhua.github.io/2023/03/23/chatglm-with-vits本地部署/
作者
wantong
发布于
2023年3月23日
许可协议