CosyVoice 是由阿里巴巴 FunAudioLLM 團隊開發的多語言大型語音生成模型,提供完整的推理、訓練和部署全棧解決方案。該項目專注於高品質的語音合成技術,支持多種語言和應用場景。
支持語言
技術突破
CosyVoice2-0.5B(推薦)
CosyVoice-300M 系列
[laughter]
、呼吸 [breath]
等特殊標記<strong></strong>
# 克隆倉庫
git clone --recursive https://github.com/FunAudioLLM/CosyVoice.git
cd CosyVoice
# 創建環境
conda create -n cosyvoice -y python=3.10
conda activate cosyvoice
conda install -y -c conda-forge pynini==2.1.5
pip install -r requirements.txt
from modelscope import snapshot_download
# 下載CosyVoice2.0(推薦)
snapshot_download('iic/CosyVoice2-0.5B', local_dir='pretrained_models/CosyVoice2-0.5B')
# 下載其他版本
snapshot_download('iic/CosyVoice-300M', local_dir='pretrained_models/CosyVoice-300M')
snapshot_download('iic/CosyVoice-300M-SFT', local_dir='pretrained_models/CosyVoice-300M-SFT')
snapshot_download('iic/CosyVoice-300M-Instruct', local_dir='pretrained_models/CosyVoice-300M-Instruct')
from cosyvoice.cli.cosyvoice import CosyVoice2
from cosyvoice.utils.file_utils import load_wav
import torchaudio
# 初始化模型
cosyvoice = CosyVoice2('pretrained_models/CosyVoice2-0.5B')
# 零樣本語音克隆
prompt_speech = load_wav('./asset/zero_shot_prompt.wav', 16000)
for i, result in enumerate(cosyvoice.inference_zero_shot(
'收到好友從遠方寄來的生日禮物,那份意外的驚喜與深深的祝福讓我心中充滿了甜蜜的快樂。',
'希望你以後能夠做的比我還好呦。',
prompt_speech
)):
torchaudio.save(f'output_{i}.wav', result['tts_speech'], cosyvoice.sample_rate)
# 指令控制合成
for i, result in enumerate(cosyvoice.inference_instruct2(
'今天天氣真不錯,我們去公園散步吧。',
'用四川話說這句話',
prompt_speech
)):
torchaudio.save(f'instruct_{i}.wav', result['tts_speech'], cosyvoice.sample_rate)
python3 webui.py --port 50000 --model_dir pretrained_models/CosyVoice2-0.5B
cd runtime/python
docker build -t cosyvoice:v1.0 .
# gRPC服務
docker run -d --runtime=nvidia -p 50000:50000 cosyvoice:v1.0 \
/bin/bash -c "cd /opt/CosyVoice/CosyVoice/runtime/python/grpc && \
python3 server.py --port 50000 --model_dir iic/CosyVoice2-0.5B"
# FastAPI服務
docker run -d --runtime=nvidia -p 50000:50000 cosyvoice:v1.0 \
/bin/bash -c "cd /opt/CosyVoice/CosyVoice/runtime/python/fastapi && \
python3 server.py --port 50000 --model_dir iic/CosyVoice2-0.5B"