Home
Login

CosyVoice:多言語大規模音声生成モデル。推論、トレーニング、デプロイメントのフルスタック機能を提供

Apache-2.0Python 14.5kFunAudioLLM Last Updated: 2025-06-12

CosyVoice プロジェクト詳細

プロジェクト概要

CosyVoiceは、Alibaba 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)

デプロイメントソリューション

Webインターフェースデプロイメント

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