CosyVoic主要特点:
1、支持中文、英文、上海话、天津话、四川话等方言。语音非常自然。
2、支持3秒语音零样本克隆,效果非常好。
3、克隆时间比较长(取决于GPU性能,使用H20以满足低延迟输出),L4 克隆默认文本需要10秒。
MacOS上运行比较简单,直接使用docker即可,虽然是docker是 AMD64版本非ARM64版本,但在容器中仍然可以使用,但性能会有所损失,相当于直接用的CPU,也没有使用MPS加速。
运行服务命令:
docker run --name cosyvoice -p 50000:50000 -d bobui/cosyvoice:h20_v2.20250801 /bin/bash -c "cd /opt/CosyVoice/CosyVoice/runtime/python/grpc && python3 server.py --port 50000 --model_dir iic/CosyVoice-300M"
以上bash命令会自动下载300M模型,并以grpc接口运行。
若想使用CosyVoice2-0.5B,只需要修改模型名称后运行即可。如:
docker run --name cosyvoice -p 50000:50000 -d bobui/cosyvoice:h20_v2.20250801 /bin/bash -c "cd /opt/CosyVoice/CosyVoice/runtime/python/grpc && python3 server.py --port 50000 --model_dir iic/CosyVoice2-0.5M"
若想使用fastapi,只需要将grpc修改为fastapi即可。
零样本测试命令:
cd /opt/CosyVoice/CosyVoice/runtime/python/grpc
python client.py --mode zero_shot
说明:默认使用asset/zero_shot_prompt.wav 作为参考声音
输出默认文件名称为:demo.wav
若要指定参考声音:--prompt_wav "你的参考声音.wav"
若要指定克隆文本:--tts_text "你需要克隆的文本内容"
最大的坑:
若改变默认的参考声音,则克隆出的声音与克隆文本完全不一致,好像模型自由发挥了吗?
这里需要同时指定--prompt_text 这个参数才可以。