ステータス: ローカルで検証済み. 4つのワークフローはすべて、手元のRTX 3080ノートPCで動作しています。実際のRunPod Podでの初回起動はまだ検証していません。検証でき次第、このガイドを更新します。
トーキングアバター、解説動画、ゲームの台詞には、どれもナレーションが必要です。AlibabaのQwenチームによるQwen3-TTSは、9種類の組み込み音声、文章の説明からのボイスデザイン、ボイスクローンを備えたオープンなテキスト音声合成モデルです。主に自分のアバター動画用のナレーションを作るために、これをComfyUIで動かすテンプレートを作りました。
ComfyUIにはQwen3-TTS用のノードが標準でないため、テンプレートにはQwen公式のqwen-ttsパッケージを動かす小さなノードパックが含まれています。サイドバーに4つのワークフローが並び、それぞれ動作するデフォルト値が入っているので、最初の実行では何も入力する必要がありません。すべてGitHubにあります。
ポイント
- オープンソース: モデルは商用利用を認めるApache-2.0で公開されています。
- 9種類の組み込み音声、それぞれが10言語を話せます。
- 説明から声をデザインするか、3〜20秒の録音からクローンできます。
- どんな長さの原稿も、自動で分割して再結合されます。
- 8GB以上のGPUで動作します。モデルは合計約13.6GBで、40GBのボリュームを使ってください。
9種類の組み込み音声
| 声 | 母語 | 特徴 |
|---|---|---|
| Ryan | 英語 | ダイナミックな男性、強いリズム |
| Aiden | 英語 | 明るいアメリカ人男性、澄んだ中音域 |
| Vivian | 中国語 | 明るく、少し尖った若い女性 |
| Serena | 中国語 | 温かく穏やかな若い女性 |
| Uncle_Fu | 中国語 | 経験豊かな男性、低くまろやか |
| Dylan | 中国語(北京) | 若々しい北京の男性 |
| Eric | 中国語(四川) | 活発な成都の男性、少しハスキー |
| Ono_Anna | 日本語 | 陽気で軽やかな女性 |
| Sohee | 韓国語 | 温かく感情豊かな女性 |
どの声も、対応する10言語(英語、中国語、日本語、韓国語、ドイツ語、フランス語、ロシア語、ポルトガル語、スペイン語、イタリア語)をすべて話せますが、母語が最も自然に聞こえます。スタイルの指示で、どの声も方向付けできます。
テンプレートにはボイスプールが付属しています。各組み込み音声の参照クリップと正確な書き起こしが合計16個、ComfyUI/input/voices/に入っています。何かをレンダリングする前に、JupyterLabで聞いて声を選んでください。
4つのワークフロー
| ワークフロー | モデル | 内容 |
|---|---|---|
| 1. 組み込み音声 | CustomVoice | 9つの声のいずれかが、選んだ言語とスタイルで原稿を読みます |
| 2. ボイスデザイン | VoiceDesign | 声を説明します(「30代の穏やかで温かいナレーター」)。サンプルを話し、ボイスプールに保存します |
| 3. ボイスクローン | Base | プール内の任意の声が、最初から最後まで一貫して原稿全体を読みます |
| 4. 自分の声を追加 | なし | 自分の録音とその書き起こしをボイスプールに追加します |
ワークフロー2、3、4はボイスプールを介して連携します。声をデザインするか自分の録音を追加するとプールに入り、クローンワークフローがその声で原稿全体を読みます。完成したナレーションは.wavと.mp3の両方でoutput/voiceover/に保存され、Saveノード上でそのまま再生できます。
どんな長さの原稿でも
Qwen3-TTSの1回の呼び出しは2,048コーデックフレーム(約2.5分の音声)が上限で、長い単発の呼び出しはペースがずれていきます。そのためテンプレートは次のように処理します。
- 原稿を、文や段落の区切りで最大400文字ごとに分割します。
- 各部分を同じ声と同じシードでレンダリングします。
- 文の間に0.25秒、段落(原稿内の空行)の後に0.6秒の間を入れてつなぎます。
長い原稿でデザインした声を使う場合: ボイスデザインは各部分を説明からレンダリングするため、部分ごとに声が少し変わることがあります。解決策であり、Qwenも推奨する方法は、ワークフロー2で短いサンプルをデザインし、ワークフロー3で原稿全体にそれをクローンすることです。
自分の声: きれいな音声を3〜20秒録音し、話した内容を正確に書き起こして、ワークフロー4で両方を追加します。使用する権利のある声だけをクローンしてください。
ハードウェアと費用
3つの1.7Bモデルはそれぞれ約4GBのVRAMを必要とし、同時に読み込まれるのは1つだけなので、8GB以上のGPUなら動作します。音声は1トークンずつ生成されるため、動画ほど高速なGPUの恩恵は大きくありません。
- 私のRTX 3080ノートPCでは、ボイスプールのレンダリングは音声1秒あたり約5秒でした。デスクトップやデータセンターのGPUなら数倍高速です。
- RunPodでは、$0.27/時のRTX A5000で十分です。これにRTX 5090を使う理由はありません。
- ストレージ: 3つのモデルで約13.6GBです。40GBのネットワークボリュームは標準ストレージで月約2.80ドルです。
RunPodで実行する
- 40GBのネットワークボリュームを作成します。 テンプレートはボリュームなしでは動作せず、モデルと声がセッションをまたいで残ります。
- ボリュームを接続して、8GB以上のGPUにテンプレートをデプロイします。
- 初回起動時はログを確認します。
Voice pool: 16 clips、モデルのダウンロード、そしてSetup complete!を待ちます。 - ComfyUI(ポート8188)を開き、Workflowsサイドバーからワークフローを選びます。
- JupyterLab(ポート8888)で、ボイスプールを聞いたり、ナレーションをダウンロードしたりします。
2回目以降の起動では、インストール済みのものはすべてスキップされます。ネットワークボリュームやPodが初めてなら、RunPod入門で基本を説明しています。
セキュリティに関する注意: JupyterLabはデフォルトでログインなしで動作するため、PodのURLを知っている人は誰でもシェルを使えます。クライアント作業では、デプロイ時にJUPYTER_NO_AUTH=0とJUPYTER_PASSWORDを設定してください。
テンプレート制作者向け
このテンプレートを使うのではなく、自分でRunPodテンプレートを作る場合のために、リポジトリで最も時間がかかった点をいくつか挙げます。
- ベースイメージは
runpod/comfyui:1.4.0-comfyuiv0.35.0-cuda12.8で、コンテナディスクは5GB、ネットワークボリュームは/workspaceにマウントされます。 qwen-tts0.1.1は、イメージに含まれるtransformers 5.xではインポートに失敗します。テンプレートはComfyUIの環境でtransformers 4.57.3に固定し、起動のたびに確認します。- 起動コマンドはGitHubとHugging FaceのDNSを確認し、必要なら公開リゾルバーにフォールバックして、cloneを最大10回再試行します。
RunPodは初めてですか?私の紹介リンクから、Googleでサインアップした新規アカウントは最初の10ドルの利用後に5〜500ドル分のクレジットを受け取れ、私には少額の紹介報酬が入ります。
クレジット:Qwen3-TTSはAlibaba Qwenチーム(Apache-2.0)。テンプレート、ノード、ワークフローは私が作成し、GitHubで無料公開しています。
よくある質問
Qwen3-TTSは商用利用が無料ですか?
モデルはApache-2.0ライセンスで公開されており、商用利用が認められています。クローンは別の問題で、使用する権利のある声だけをクローンしてください。
Qwen3-TTSはどの言語に対応していますか?
英語、中国語、日本語、韓国語、ドイツ語、フランス語、ロシア語、ポルトガル語、スペイン語、イタリア語です。組み込みのどの声も、この10言語すべてを話せます。
ナレーションの長さはどのくらいまで可能ですか?
制限はありません。テンプレートが原稿を文や段落の区切りで分割し、同じ声と同じシードで各部分をレンダリングして、自然な間を入れてつなぎます。
必要なGPUは何ですか?
VRAMが8GB以上のGPUなら動きます。RunPodならRTX A5000で十分です。
RunPodではなくローカルで動かせますか?
はい。ComfyUIノードとワークフローはGitHubリポジトリにあり、8GBのノートPC用GPUで動作します。
