跳转至

介绍

Warning

我们不对代码库的任何非法使用承担任何责任. 请参阅您当地关于 DMCA (数字千年法案) 和其他相关法律法规.
此代码库根据 BSD-3-Clause 许可证发布, 所有模型根据 CC-BY-NC-SA-4.0 许可证发布.

要求

  • GPU 内存: 4GB (用于推理), 8GB (用于微调)
  • 系统: Linux, Windows

Windows 配置

Windows 专业用户可以考虑 WSL2 或 docker 来运行代码库。

Windows 非专业用户可考虑以下为免 Linux 环境的基础运行方法(附带模型编译功能,即 torch.compile):

  1. 解压项目压缩包。
  2. 点击 install_env.bat 安装环境。
    • 可以通过编辑 install_env.batUSE_MIRROR 项来决定是否使用镜像站下载。
    • USE_MIRROR=false 使用原始站下载最新稳定版 torch 环境。USE_MIRROR=true 为从镜像站下载最新 torch 环境。默认为 true
    • 可以通过编辑 install_env.batINSTALL_TYPE 项来决定是否启用可编译环境下载。
    • INSTALL_TYPE=preview 下载开发版编译环境。INSTALL_TYPE=stable 下载稳定版不带编译环境。
  3. 若第2步 INSTALL_TYPE=preview 则执行这一步(可跳过,此步为激活编译模型环境)
    1. 使用如下链接下载 LLVM 编译器。
    2. 下载安装 Microsoft Visual C++ 可再发行程序包,解决潜在 .dll 丢失问题。
    3. 下载安装 Visual Studio 社区版以获取 MSVC++ 编译工具, 解决 LLVM 的头文件依赖问题。
      • Visual Studio 下载
      • 安装好Visual Studio Installer之后,下载Visual Studio Community 2022
      • 如下图点击修改按钮,找到使用C++的桌面开发项,勾选下载
    4. 下载安装 CUDA Toolkit 12
  4. 双击 start.bat 打开训练推理WebUI管理界面. 如有需要,可照下列提示修改API_FLAGS.

可选

想启动 推理 WebUI 界面?编辑项目根目录下的 API_FLAGS.txt, 前三行修改成如下格式:

--infer
# --api
# --listen ...
...

可选

想启动 API 服务器?编辑项目根目录下的 API_FLAGS.txt, 前三行修改成如下格式:

# --infer
--api
--listen ...
...

可选

双击 run_cmd.bat 进入本项目的 conda/python 命令行环境

Linux 配置

# 创建一个 python 3.10 虚拟环境, 你也可以用 virtualenv
conda create -n fish-speech python=3.10
conda activate fish-speech

# 安装 pytorch
pip3 install torch torchvision torchaudio

# 安装 fish-speech
pip3 install -e .

# (Ubuntu / Debian 用户) 安装 sox
apt install libsox-dev

更新日志

  • 2024/07/02: 更新了 Fish-Speech 到 1.2 版本,移除 VITS Decoder,同时极大幅度提升 zero-shot 能力.
  • 2024/05/10: 更新了 Fish-Speech 到 1.1 版本,引入了 VITS Decoder 来降低口胡和提高音色相似度.
  • 2024/04/22: 完成了 Fish-Speech 1.0 版本, 大幅修改了 VQGAN 和 LLAMA 模型.
  • 2023/12/28: 添加了 lora 微调支持.
  • 2023/12/27: 添加了 gradient checkpointing, causual samplingflash-attn 支持.
  • 2023/12/19: 更新了 Webui 和 HTTP API.
  • 2023/12/18: 更新了微调文档和相关例子.
  • 2023/12/17: 更新了 text2semantic 模型, 支持无音素模式.
  • 2023/12/13: 测试版发布, 包含 VQGAN 模型和一个基于 LLAMA 的语言模型 (只支持音素).

致谢