
2026/08/22 0:51
テキスト対話音声モデルを 50ms 未満で応答させるためのアプローチ
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Qwen3-TTS 1.7B CustomVoice モデルは、リアルタイムテキスト読み上げにおいて画期的な成果を達成し、単一の NVIDIA H100 SXM GPU 上で p95 レイテンシを 50 ミリ秒未満に抑えました。これは現在、ポアソントラフィック下での低レイテンシストリーミングにチューニングされた cinq つのベンチマークの中で、このパフォーマンスレベルを達成している唯一のシステムです。アーキテクチャは、ドロップアウトなしで毎秒 10 以上のリクエスト(RPS)に対応し、高い負荷下でも約 630 文字/秒という生産性を維持します。技術的には、この速度は動的サイレンストリミング(レイテンシを約 80ms 改善)、プリアロケートされた KV キャッシュ、特別製 Triton 注意機構ケルネル、および Code Predictor の生成を単一の CUDA グラフとしてキャプチャするといった専門的な最適化により達成されています。システムはトークラー、Code Predictor、Codec モジュールの間の再処理なしで完全なオーディオ履歴を用いないように調整した緊急性ベースのスケジューラーを採用し、滑らかな再生を保証します。経済的には、H100 インスタンスにおける費用は約 2 ドル/百万文字まで低下し、ElevenLabs などの商用競合他社と比較しても 50 倍以上のコストを削減しながら高い品質を維持しています。ex-YC、KRAFTON、NAVER のエンジニアによる後援を受けた Nari Labs が開発し、人気のオープンソースモデル Dia を基盤とするこの許諾条件の緩いライセンスソリューションは、速度、安定性、容量、そして非誤植出力といった産業における重要な課題に対応します。
本文
Qwen3-TTS CustomVoice:高性能・低コストなリアルタイム TTS 実装を公開
概要とベンチマーク結果
Qwen3-TTS 1.7B CustomVoice の実装は、以下の性能を達成しました。
- ハードウェア: NVIDIA H100 SXM 1 機のみで稼働。
- リアルタイム性: リアルタイム再生を維持しつつ、RPS(毎秒リクエスト数)ごとの遅延を以下に抑えました。
- RPS 10: p95 TTFA(初音到達時間)50ms 未満。
- RPS 20: p95 TTFA100ms 未満。
- 他社との比較: Poisson オープンループトラフィック下での比較テストにおいて、遅延低減ストリーミングへの最適化後、p95 で TTFA を 50ms 未満に抑えるのは当社実装のみでした。
- 比較対象:vLLM-Omni, SGLang-Omni, VoxServe, M* など 5 つの実装。
コストパフォーマンス
フル活用した場合(H100 SXM 1 台あたり時間レート $4.29 の条件)のコストは極めて低廉です。
- 生成速度: 約 630 キャラ/秒。
- 単価: 文字あたりのコストは約 $2/100 万文字。
- ElevenLabs V3($100/100 万文字)や Cartesia Sonic 3.5($49/100 万文字)と比較して、大幅に低価格です。
リアルタイム TTS の定義
リアルタイム TTS サーバーが満たすべき要件は、以下の 4 つの側面から定義されます。
- 低聴覚 TTFA: リクエスト発行から最初の可聴サンプルまでの遅延を最小化します。
- ゼロアンダerrun: 再生開始後、クライアント側でバッファオーディオが不足しないことを保証します。
- スケーラビリティ: RPS(毎秒リクエスト数)の増加に伴い、上記 1 と 2 の性能を維持する必要があります。
- 出力の正当性: 音声合成結果は聞き取り可能な状態であることが不可欠です。
本研究では、これら要件を満たしつつ、単一の NVIDIA H100 SXM で高 RPS を実現することを目標にしました。すべてのベンチマークは Fireworks AI の LLM ベンチマークに従い、Poisson オープンループトラフィック下で 5 分間実行されています(テキスト全体を 1 つの HTTP リクエストとして渡し、音声出力はストリーミング)。
既存エンジンのチューニング結果
初期設定(アップストリーム/デフォルト)では性能に改善余地がありました。各配信エンジンは独自の要件に応じて個別にチューニングを行いました。
1. 前置きサイレンスの除去
モデルが最初に返す PCM データには、発生前の数十ミリ秒分のサイレンスが混在することがあります。これを動的トリミングで除去しました。
- 実装: RMS ウィンドウから持続音声を検出し、発生前のサンプルを除去。
- 効果: TTFA が約80ms 改善。ただし、推論速度自体の向上にはつながりませんでした。
2. フレーム蓄積のチューニング
コーデックフレームの収集とデコードタイミングを最適化しました。
- 課題: 初期チャンクサイズが小さいと TTFA が減少しますが、バッファ不足で不安定になります。逆に大きいと安定しますが初音到達が遅れます。
- 解決策: 初期に小さく始めて次第にチャンクサイズを増加させるアプローチを採用(例:vLLM-Omni の
やcodec_chunk_frames
パラメータ調整)。codec_chunk_ramp
チューニング後の性能比較
サイレンス除去とフレーム蓄積チューニング後、「アンダerrun ゼロプロファイル」での結果は以下の通りです。
| エンジン | 1 RPS (p95 TTFA) | 10 RPS 付近の傾向 |
|---|---|---|
| VoxServe | 50ms 未満 に達しました | - |
| 他 3 エンジン | 達成しませんでした | 約 6 RPS で p95 TTFA が 100ms を超える傾向 |
注:当社実装のみが RPS 増加に伴って低遅延を維持することに成功しました。
Qwen3-TTS の最適化手法
Qwen3-TTS は、Talker(トークン予測)、Code Predictor(残りのトークン生成)、causal Codec(波形変換)の3 モジュールから構成される階層的マルチコードブックモデルです。各モジュールは異なる計算プロファイルと遅延要件を持っており、個別最適化ではなくシステム全体の協調を重視しました。
1. 3 モジュールを 1 つのスケジューラ下へ統合
既存実装では Talker と Code Predictor を同時実行し、Codec は別プロセスという「2 ステージ構成」が一般的でした。これを以下の設計に変えました。
- 共有スケジューリング面: Talker、Code Predictor、Codec の 3 つをすべて独立したタスクとして、1 つのスケジューラが管理する共有面上で実行。
- メリット: スケジューラが「トークン生成優先」「デコード期限迫り優先」などを動的に判断可能。バッチ化による効率向上と緊急性への対応を両立。
- 分離の重要性: 統合すると非プリエンプタブルな単一ユニットになり、緊急ジョブがブロックされるリスクがあるため、モジュールを分離して短い作業単位を確保しました(M* の設計思想を採用)。
2. 音声ストリーミングの要請に合わせたスケジューリング
音声ストリーミングには「初回到達」と「継続再生」の 2 つの優先度概念があります。
- 初回到達前: 1ms ごとに TTFA が増加するため、最優先。
- 再生開始後: 次のチャンクが終了前に到着すれば良いため、早期生成はメリット低く、期限迫るのみで緊急性を上げる。
- スケジューリング戦略: 緊急性リクエスト(初回到達)を「アンカー」として選び、残りのバッチ部分は互換性のある作業で埋めることで、GPU 効率と期限遵守の両立を図りました。
3. Code Predictor の規則構造を活用
Code Predictor は自己回帰型 Transformer ですが、各フレームで固定ステップ数(15 ステップ)を実行する特異な規則性があります。
- CUDA グラフ: KV キャッシュの事前割り当てを行い、全体ループを 1 つの CUDA グラフとしてキャプチャ。
- Triton 注意機構内核: 短くて有界なコンテキストに特化した実装を使用。
- 効果: ホスト駆動シーケンスを固定 GPU プログラムに置き換え、遅延低下と実行系の簡素化を実現。
4. キャッシュ状態に基づく Codec の再構築
Codec は Transformers と CNNs で構成され、次チャンク生成にはコンテキストと畳み込み状態の両方が依存します。
- ステートキャッシュベース: 各リクエストで必要な状態を保持し、増分デコードによってキャッシュを活用。古いオーディオを繰り返し処理しないように。
- 起動プロセス: 最初の音響ではフルデコードを行い TTFA を抑え、その後ステートキャッシュ付きの増分デコードへ切り替えることでオーバーヘッドを回避。
- チャンクサイズ変動: 再生開始時は小さいチャンクで早めつつ、持続中は大きなチャンクでバッチ処理効率を高める。
5. その他の配信最適化
- CUDA グラフの柔軟性: 待機コホートが最大のキャプチャ済みサイズを超えた場合、フォールバックではなく分割してスケジューリングターン間に対応。
- CPU-GPU 同期の回避: EOS(終了)抑制中などは生成終了チェックを遅らせ、CPU が GPU を待たずに次の作業準備を行うように設計。
- エンドツーエンド遅延低減: アップストリーム LLM がトークン生成を開始した時点で TTS モデルが応答待ちではなく合成を開始する仕組みを実装。
今後に向けて
Qwen3-TTS は当社のマルチモーダル推論研究における一歩に過ぎません。
- 今後の計画: 画像、動画、ワールドモデルへの範囲拡大およびファインチューニング。
- 究極のビジョン: リアルタイムマルチモーダル推論を通じて世界を 1:1 シミュレーションすること。
- 企業概要: Nari Labs は Y Combinator に後援されており、元 YC/KRAFTON/NAVER エンジニアで構成されています。オープン TTS モデル「Dia」は Hugging Face で#1 ランキング(200 万回以上ダウンロード)を達成。NeurIPS, ICLR での論文発表や IOI, ICPC ワールドファイナルズでの金メダル受賞歴もあります。
マルチモーダル分野での協力をご希望の方は、お気軽にご連絡ください。