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"