fish speech:全新的文本转语音(tts)ag凯发k8国际的解决方案-ag凯发k8国际

项目简介

fish speech:全新的文本转语音(tts)ag凯发k8国际的解决方案,具有高度自定义和灵活性,支持linux和windows系统,需要2gb的gpu内存进行,使用flash-attn进行和训练,支持vqgan和text2semantic模型

要求

  • gpu内存:2gb(用于),24gb(用于微调)
  • 系统:linux(全部功能),windows(仅推理,不支持flash-attn,不支持torch.compile)

因此,我们强烈建议windows用户使用wsl2或docker来运行代码库。

设置

# 基本环境设置conda create -n fish-speech python=3.10conda activate fish-speechconda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia# 安装 flash-attn(适用于linux)pip3 install ninja && max_jobs=4 pip3 install flash-attn --no-build-isolation# 安装 fish-speechpip3 install -e .

推理(cli)

从我们的 huggingface 仓库下载所需的 vqgan 和 text2semantic 模型。

wget https://huggingface.co/fishaudio/speech-lm-v1/raw/main/vqgan-v1.pth -o checkpoints/vqgan-v1.pthwget https://huggingface.co/fishaudio/speech-lm-v1/blob/main/text2semantic-400m-v0.1-4k.pth -o checkpoints/text2semantic-400m-v0.1-4k.pth

[可选] 从语音生成 prompt:

python tools/vqgan/inference.py -i paimon.wav --checkpoint-path checkpoints/vqgan-v1.pth

你应该能得到一个 fake.npy 文件。

文本生成语义 token:

python tools/llama/generate.py \    --text "要转换的文本" \    --prompt-string "你的参考文本" \    --prompt-tokens "fake.npy" \    --checkpoint-path "checkpoints/text2semantic-400m-v0.1-4k.pth" \    --num-samples 2 \    --compile

该命令会在工作目录下创建 codes_n 文件,其中 n 是从 0 开始的整数。您可能希望使用 –compile 来融合 cuda 内核以实现更快的推理(~30 个 token/秒 -> ~500 个 token/秒)

从语义 token 生成人声:

python tools/vqgan/inference.py -i codes_0.npy --checkpoint-path checkpoints/vqgan-v1.pth

rust 数据服务器

由于加载和洗牌数据集非常缓慢且占用内存,因此我们使用 rust 服务器来加载和洗牌数据集。该服务器基于 grpc,可以通过以下方式安装

cd data_servercargo build --release

项目链接

https://github.com/fishaudio/fish-speech

未经允许不得转载:ag凯发k8国际 » fish speech:全新的文本转语音(tts)ag凯发k8国际的解决方案

网站地图