Skip to content

Latest commit

 

History

History
151 lines (116 loc) · 5.21 KB

readme_detail.md

File metadata and controls

151 lines (116 loc) · 5.21 KB

搭建”数字生命“服务

注意事项

重要: 如果你是初学者,请在需要存放该项目的位置打开终端(Win11)或Powershell(Win10)或Terminal(Linux),并**按照以下步骤操作 ** 。在开始前,请确保电脑中已安装Git和Conda。

安装步骤

克隆仓库

git clone https://github.com/liegu0317/Digital_Life_Server.git --recursive
cd Digital_Life_Server
mkdir tmp

保姆式配置环境

1. 使用conda建立Python虚拟环境

conda create --name py39 python=3.9  # Windows
# conda create --name py39 python=3.8  # Linux推荐3.8

revChatGPT包在Python3.8会被计划中断,需做如下修改 将

env_path/py38/lib/python3.8/site-packages/revChatGPT/__init__.py

文件第17行elif int(...) < 9修改为elif int(...) < 8

2. 安装pytorch于py39环境

  • 激活py39环境
    conda activate py39
  • 查看cuda版本
    nvcc --version

对于cuda11.8:

  • 默认地址(下载可能较慢)
    pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
  • 国内加速地址(下载可能较快)
    pip install torch==2.0.0+cu118 torchvision torchaudio -f https://mirror.sjtu.edu.cn/pytorch-wheels/torch_stable.html

对于没有Nvidia显卡的电脑:

  • 默认地址(下载可能较慢)

    pip install torch torchvision torchaudio
  • 国内加速地址(下载可能较快)

    pip install torch==2.0.0+cpu torchvision torchaudio -f https://mirror.sjtu.edu.cn/pytorch-wheels/torch_stable.html
  • 其他版本组合指南

3. 安装项目所需其它依赖项

  • Linux: 先安装portaudio
    apt install portaudio19-dev  #Ubuntu
    # yum install portaudio-devel  #CentOS
    然后安装其他依赖
    pip install -r requirements_linux.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
  • Windows:
    pip install -r requirements_out_of_pytorch.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

4. 构建 monotonic_align

cd "TTS/vits/monotonic_align"
mkdir monotonic_align
python setup.py build_ext --inplace
cp monotonic_align/*.pyd ./ # linux修改为cp monotonic_align/*.so

5. 对于不使用Nvidia显卡的电脑

  • 修改 Digital_Life_Server\TTS\TTService.py 文件中三处,将 .cuda() 改为 .to('cpu').cpu()

到此,项目构建完毕。

6. 下载项目所需模型

启动“数字生命”服务器

注意: 启动前,请根据实际情况修改bat文件中的具体配置以及配置相关环境变量。

run-gpt3.5-api.bat

run-gpt3.5-api.sh

全部参数

名称 描述 备注 必填
APIKey 应用秘钥 OPENAI_API_KEY、ERINEBot_API_Key ERINEBot、ChatGPT
SecretKey ERINEBot Secret Key ERINEBot Secret Key ERINEBot
accessToken 会话标志码 ERNIEBot accessToken
proxy 代理服务地址 ChatGPT 代理服务的地址,例如http://127.0.0.1:7890
brainwash 洗脑模式 不推荐开启,仅ERNIEBot有效
model 调用的模型 指定使用的GPT模型,可选值:gpt-3.5-turbo、gpt-4、ERNIEBot、ERNIEBot-4 ALL
stream 流式回复 可有效减少响应时间,可选值:True、False ALL
character 使用的角色 指定所使用的角色,可选值:paimon、yunfei、catmaid ALL

调用示例

  • 调用ChatGPT命令行示例:
    python SocketServer.py --APIKey %OPENAI_API_KEY%  --proxy http://127.0.0.1:7890 --stream false --model gpt-3.5-turbo --character paimon
  • 调用ERNIEBot命令行示例:
    python SocketServer.py --stream true  --SecretKey %ERINEBot_SecretKey% --APIKey %ERINEBot_API_Key % --model ERNIEBot-4 --character paimon
    python SocketServer.py --stream true  --accessToken %accessToken% --model ERINEBot --character catmaid