ローカル音声認識・音声合成

Fish Audio Drama 3で2人の会話を1つのWAVにする

話者タグで台詞を分け、参照音声でそれぞれの声を指定します。

Drama 3は話者タグ付きの台本と参照音声・書き起こしから、複数人が話すWAVを生成するTTS1モデルです。ローカル実行にはLinuxまたはWSL、48GB以上のNVIDIA GPU2メモリ、FP83構成が必要です。

実行条件と要点
  • 総35Bパラメーターのうち、トークンごとに3Bを有効化するMoEモデルです。
  • 話者タグと参照音声・書き起こしを順番に対応させます。
  • ローカル生成にはFP8で48GB以上のNVIDIA GPUメモリが必要です。

台本に話者と話し方を指定します

Fish Audio Drama 3は台本を音声に変える多話者TTSモデルです。話者タグと台詞に加え、声ごとの参照音声とその書き起こしを渡すと、複数の声が登場する1つのWAVを作れます。話者が入れ替わる会話や長めの朗読に向いています。Drama 3モデルカード

Drama 3は総35Bパラメーターのうち、トークン4ごとに3Bを有効化するMoE5モデルです。モデルカードには83言語が掲載され、台本ではspeaker 0から15まで最大16人を指定できます。同じ人物が再び話す箇所にも同じタグを付けると、割り当てた声を続けて使えます。

話者タグは台詞を読む人物を示し、角括弧の短い指示はその位置の話し方を指定します。モデルカードには[sighs]や[laughs]などのpoint tagが例示されています。該当する部分を生成し、意図した話し方になるか聴いて確かめてください。

窓辺の机に開いた本、小型コンピューター、スピーカーが置かれています。
台本の話者タグがWAV内で声を切り替える位置を決めます。

先にGPUメモリと実行環境を確認します

Fish Audioの現在のインストールガイドは、Drama 3のFP8実行に48GB以上のGPUメモリを要求しています。対応するのはLinuxまたはWSL上のNVIDIA GPUです。CPU6、Apple MPS、AMD ROCm7、torch.compileには対応しないため、MacやCPUで生成したい場合は別のモデルを選んでください。公式インストール要件

インストールガイドではS2-ProにGPUメモリ24GBを示し、CPUまたはNVIDIA GPUでの実行に対応しています。Drama 3のFP8経路にはNVIDIA GPUメモリ48GB以上が必要で、対象となるハードウェアが異なります。

公開測定はH200で同時実行1件、事前エンコード済みの英語Seed-TTS参照音声を使い、4回実行した結果です。平均RTF8とTTFA p50はこの構成での値です。

公式実行要件とモデルカードのストリーミング測定
モデルローカル実行要件公開測定
Drama 3FP8、NVIDIA GPUメモリ48GB以上、Linux・WSLH200の1ストリーム: 平均RTF 0.131、TTFA p50 88.9ms
S2-ProGPUメモリ24GBが目安。CPUまたはNVIDIA GPUに対応Drama 3と直接比較できるS2-Proの測定値は掲載していません。

Linux・WSLにCUDA実行環境を導入します

UbuntuまたはWSLでPython 3.12とNVIDIAドライバーを用意し、リポジトリが指定する音声用のシステムパッケージを導入します。以下のコマンドでソースを取得し、Python環境にCUDA9 12.9向けの依存関係を入れます。

Ubuntu・WSLにリポジトリとCUDA依存関係を導入
sudo apt-get update && sudo apt-get install -y portaudio19-dev libsox-dev ffmpeg
curl -LsSf https://astral.sh/uv/install.sh | sh
source "$HOME/.local/bin/env"
git clone https://github.com/fishaudio/fish-speech.git
cd fish-speech
uv sync --python 3.12 --extra cu129

uv syncの完了後はリポジトリ内で作業します。別の場所にいる場合はfish-speechへ移動してから次へ進んでください。

モデルファイルと話者ごとの参照音声を用意します

このDrama 3リビジョンをcheckpoints/drama-3にダウンロードします。推論に必要なcodec10.pthも含まれるため、別途S2-Proの重みを取得する必要はありません。公開モデルなのでログイントークンなしで取得できます。

Drama 3と同梱コーデックをダウンロード
uv pip install "huggingface_hub[cli]"
uv run hf download fishaudio/drama-3 --revision e0a9218aa48888270f06ef1ed9ea67622c0e17d2 --local-dir checkpoints/drama-3

2人の参照音声をspeaker0.wavとspeaker1.wavとしてfish-speechフォルダーに保存します。各ファイルを聴いて、実際に話した文を正確に記録します。話者本人から使用許可を得た録音を用意してください。

マイク、ヘッドホン、音声波形を表示したモニターが見えます。
話者ごとに参照音声と対応する書き起こしを用意します。

2つの参照音声を2人に対応させてWAVに保存

CLI11は参照音声と書き起こしを指定順に対応させます。speaker0.wavの後にその音声の実際の発話を、speaker1.wavの後に2つ目の音声の正確な書き起こしを置きます。次の文は形式例なので、実行前に各WAVの実際の内容へ置き換えてください。台本の話者番号も同じ順にします。

次のコマンドは2つの参照WAVと書き起こしを対応させ、1つの台本内で話者を切り替えます。公式CLIは参照音声と書き起こしのオプションを繰り返し指定できます。Drama 3公式CLI

2人の会話をdrama-two-voices.wavに生成
uv run python fish_speech/models/text2semantic/inference.py \
  --checkpoint-path checkpoints/drama-3 \
  --text "<|speaker:0|>제가 먼저 장면을 설명할게요. [laughs] <|speaker:1|>좋아요. 다음 대사를 이어가죠. [sighs]" \
  --prompt-audio speaker0.wav \
  --prompt-text "오늘은 새 전시를 소개합니다." \
  --prompt-audio speaker1.wav \
  --prompt-text "첫 번째 작품은 창가에 걸려 있어요." \
  --output drama-two-voices.wav \
  --device cuda:0

出力WAVで話者の切り替わりと台詞を確認

コマンドが終わると、fish-speechフォルダーにdrama-two-voices.wavができます。最後まで聴き、声の切り替わり、各台詞の発音、笑いとため息の位置を確認します。ある話者の声が不自然なら、その参照音声と書き起こしが一致しているか確認してから再生成してください。

1基の例ではcuda:0を指定します。複数GPUは公式CLIのカンマ区切りリストで指定し、最後のGPUにtowerとcodecの両方が配置されるため、その分のメモリを確保してください。

ライセンスの売上基準と提供形態

Drama 3には2026年10月13日更新のFish Audio Community License 1.0が同梱されています。研究・非商用利用に加え、利用者と関連会社の全収入源を合算した直近12か月の総売上が50万米ドル未満の場合、限定的な商用利用を認めています。第三者の業務にモデルを設置する場合、またはモデルの複製を渡す場合は、相手の会社も基準を満たす必要があります。ライセンス全文

利用者が音声生成を直接依頼するセルフサービスAPI12・Webサイト・アプリはHosted Serviceにあたり、売上や目的を問わず別途書面ライセンスが必要です。一方、自分が作成・管理するコンテンツや製品の音声、制作者がモデルを操作して完成ファイルだけを納品する制作サービスは対象外です。無料・非商用の研究・デモも条件を満たせば除外されます。配布時は「Built with Fish Audio」の表示とLICENSEの写しを含め、実在する人物の声を模倣する前に同意を得てください。

2026年10月16日確認:Hugging Faceのメタデータには以前のResearch License表記が残っています。本記事の利用条件は現在同梱されているLICENSE本文に基づきます。

オーディオプレーヤーとヘッドホンの横に開いたノートがあります。
最後まで聴き、台詞ごとの話し方と切り替わりを確認します。

用語の注釈

  1. 音声合成 — テキストを発音や韻律を伴う音声信号に変換する技術です。

    本文に戻る
  2. GPU — 多くの計算を並列に処理するプロセッサーです。AIモデルの実行ではモデル計算を担います。

    本文に戻る
  3. FP8 — 一つの値を8ビットで表す浮動小数点形式です。

    本文に戻る
  4. トークン — モデルが入力や出力を分けて処理する単位です。

    本文に戻る
  5. MoE — 複数の専門家サブネットワークから入力に応じて一部を選ぶモデル構造です。総パラメータ数と1トークン処理時に有効な数は異なることがあります。

    本文に戻る
  6. CPU — OSや一般的なプログラム命令を実行する中央処理装置です。AIでは前処理やデータ転送などの汎用処理も担います。

    本文に戻る
  7. ROCm — AMD GPUでAIや高性能計算を実行するソフトウェア基盤です。対応状況はGPUだけでなく、OS・ドライバー・フレームワークの版の組み合わせで確認します。

    本文に戻る
  8. リアルタイム係数 — 生成にかかった時間を出力の再生時間で割った値です。条件をそろえて比べる場合、値が小さいほど生成が速いことを示します。

    本文に戻る
  9. CUDA — NVIDIA GPUで汎用計算を行うソフトウェア基盤です。

    本文に戻る
  10. オーディオコーデック — デジタル音声を符号化・圧縮し、復号する方式またはソフトウェアです。サイズ、互換性、非可逆かどうかはコーデックによって異なります。

    本文に戻る
  11. CLI — Command-Line Interfaceの略です。ターミナルにコマンドを入力してプログラムを操作する方式です。

    本文に戻る
  12. API — 別のコードからプログラムの機能を呼び出すための決められたインターフェースです。

    本文に戻る

よくある質問

この記事で最初に確認すべきことは何ですか?
Drama 3は話者タグ付きの台本と参照音声・書き起こしから、複数人が話すWAVを生成するTTSモデルです。ローカル実行にはLinuxまたはWSL、48GB以上のNVIDIA GPUメモリ、FP8構成が必要です。
必要なメモリはどのくらいですか?
Fish Audioの現在のインストールガイドは、Drama 3のFP8実行に48GB以上のGPUメモリを要求しています。対応するのはLinuxまたはWSL上のNVIDIA GPUです。CPU、Apple MPS、AMD ROCm、torch.compileには対応しないため、MacやCPUで生成したい場合は別のモデルを選んでください。[公式インストール要件](https://github.com/fishaudio/fish-speech/blob/main/docs/en/install.md#requirements)
条件と出典はどこで確認できますか?
Fish Audio Drama 3は台本を音声に変える多話者TTSモデルです。話者タグと台詞に加え、声ごとの参照音声とその書き起こしを渡すと、複数の声が登場する1つのWAVを作れます。話者が入れ替わる会話や長めの朗読に向いています。[Drama 3モデルカード](https://huggingface.co/fishaudio/drama-3)