FunAudioLLM/CosyVoiceView GitHub Homepage for Latest Official Releases
CosyVoice: 다국어 대형 음성 생성 모델, 추론, 훈련 및 배포 풀 스택 기능 제공
Apache-2.0PythonCosyVoiceFunAudioLLM 15.6k Last Updated: August 07, 2025
CosyVoice 프로젝트 상세 소개
프로젝트 개요
CosyVoice는 알리바바 FunAudioLLM 팀에서 개발한 다국어 대형 음성 생성 모델로, 완전한 추론, 훈련 및 배포 풀 스택 솔루션을 제공합니다. 이 프로젝트는 고품질 음성 합성 기술에 중점을 두고 있으며, 다양한 언어와 응용 시나리오를 지원합니다.
핵심 특징
CosyVoice 2.0 최신 특징
지원 언어
- 중국어, 영어, 일본어, 한국어
- 중국어 방언: 광둥어, 쓰촨어, 상하이어, 톈진어, 우한어 등
기술적 돌파구
- 교차 언어 및 다국어 혼합: 제로샷 음성 복제의 교차 언어 및 코드 전환 시나리오 지원
- 양방향 스트리밍 지원: 오프라인 및 스트리밍 모델링 기술 통합
- 초저지연 합성: 첫 패킷 합성 지연 시간이 150밀리초로 낮으면서도 고품질 오디오 출력 유지
- 발음 정확성 향상: 1.0 버전에 비해 발음 오류 30%~50% 감소
- 벤치마크 테스트 성과: Seed-TTS 평가 세트의 어려운 테스트 세트에서 최저 문자 오류율 달성
- 음색 일관성: 제로샷 및 교차 언어 음성 합성의 신뢰할 수 있는 음색 일관성 보장
- 운율 및 음질 향상: 합성 오디오 정렬 개선, MOS 평가 점수 5.4에서 5.53으로 향상
- 감정 및 방언 유연성: 더욱 정교한 감정 제어 및 억양 조정 지원
모델 버전
CosyVoice2-0.5B (추천)
- 최신 버전, 성능 더욱 우수
- 모든 최신 기능 지원
CosyVoice-300M 시리즈
- CosyVoice-300M: 기본 모델
- CosyVoice-300M-SFT: 지도 학습 미세 조정 버전
- CosyVoice-300M-Instruct: 명령어 미세 조정 버전
기능 모드
1. 제로샷 음성 복제 (Zero-shot)
- 단 몇 초의 오디오 샘플만으로 음성 복제 가능
- 교차 언어 음성 복제 지원
- 원본 화자의 음색 특징 유지
2. 교차 언어 합성 (Cross-lingual)
- 한 언어의 오디오 샘플을 사용하여 다른 언어의 음성 합성
- 중국어, 영어, 일본어, 한국어, 광둥어 등 다양한 언어 조합 지원
3. 음성 변환 (Voice Conversion)
- 한 화자의 음성을 다른 화자의 음색으로 변환
- 원본 내용 유지하면서 음색 변경
4. 지도 학습 미세 조정 모드 (SFT)
- 미리 정의된 화자 ID를 사용하여 음성 합성
- 안정적이고 신뢰할 수 있는 합성 품질
5. 명령어 제어 모드 (Instruct)
- 자연어 명령어를 통해 음성 합성 제어
- 감정 태그 및 특수 효과 지원
- 음성 스타일, 감정 표현 등 제어 가능
6. 정밀 제어
- 웃음
[laughter]
, 숨소리[breath]
등 특수 마크 지원 - 강세 제어
<strong></strong>
지원 - 감정 및 운율의 정밀한 조절
기술 아키텍처
핵심 기술
- 이산 음성 마커: 지도 학습 기반의 이산 음성 마커 기술
- 점진적 의미 디코딩: 언어 모델 (LMs) 및 흐름 매칭 (Flow Matching) 사용
- 양방향 스트리밍 모델링: 실시간 및 배치 처리 추론 지원
- 다중 모드 통합: 대형 언어 모델과 원활하게 통합
성능 최적화
- 스트리밍 추론 지원: KV 캐시 및 SDPA 최적화 포함
- 반복 인식 샘플링 (RAS): LLM 안정성 향상
- TensorRT 가속: GPU 가속 추론 지원
- FP16 정밀도: 성능과 품질 균형
설치 및 사용
환경 요구 사항
- Python 3.10
- CUDA 지원 GPU (권장)
- Conda 환경 관리
빠른 시작
# 저장소 복제
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
Docker 컨테이너 배포
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"
응용 시나리오
상업 응용
- 지능형 고객 서비스: 다국어 고객 서비스 시스템
- 오디오북: 개인화된 해설 및 캐릭터 더빙
- 음성 비서: 자연스러운 인공지능 상호 작용 경험
- 온라인 교육: 다국어 교육 콘텐츠 제작
창의적 응용
- 팟캐스트 제작: 자동화된 팟캐스트 콘텐츠 생성
- 게임 더빙: 캐릭터 음성 합성
- 짧은 비디오 제작: 빠른 더빙 솔루션
- 음성 번역: 실시간 음성-음성 번역
기술 통합
- LLM과 통합: 완전한 대화 시스템 구축
- 감정 음성 채팅: 감정 표현을 지원하는 대화 로봇
- 대화형 팟캐스트: 동적 콘텐츠 생성
- 표현력이 풍부한 오디오북: 풍부한 감정 표현력
기술적 장점
성능 지표
- 지연 시간: 첫 패킷 합성 150ms까지 단축
- 품질: MOS