EchoraEchora
モデル一覧に戻る

Kyutai Pocket TTS:GPUアクセラレーションを試し、不要だと分かったモデル

2026年9月11日
•
読了目安 7 分

テキストと録音を、聴ける作品に

ナレーション、ステム分離、カバー、効果音を、ブラウザだけで。

  • テキスト読み上げも、ボイスクローンも
  • ステムを分離、またはカバーを生成
  • 登録して試聴。聴いてから決められる
無料で作り始める

Kyutaiのチームは、ほとんどのTTS研究所がわざわざ試そうとしないことを行いました。Pocket TTSをGPU上でベンチマークし、どれだけ高速化できるかを確かめたのです。答えは、意味のある高速化はまったくない、というものでした。バッチサイズ1では、このように効率よく設計されたモデルに追加の計算能力を与えても、その利点よりGPUとの間でデータを移動するオーバーヘッドのほうが大きくなります。これは制約を長所に見せかけているのではありません。Pocket TTSが、CPUでも何とか動くようにしたモデルではなく、初めからCPU上で優れた性能を発揮するために作られたことを示す、本物の証拠です。

Kyutai Pocket TTSとは?

Kyutai Pocket TTSは、パリを拠点とするKyutai研究所が2026年1月13日に公開した、1億パラメータ、MITライセンスのテキスト読み上げモデルです。英語のベースモデルは、合計88,000時間の公開データセットだけで学習されました。その後、2026年4月のv2.0.0リリースでフランス語、ドイツ語、スペイン語、ポルトガル語、イタリア語が追加され、対応言語が拡大しました。Kyutaiのより大規模なストリーミングモデル、Kyutai TTS 1.6B(同研究所のUnmute製品で使用)のオンデバイス版に相当するものとして特別に設計されています。インフラにすでにGPUが含まれるサーバー側の導入には、引き続き大規模モデルのほうが適しています。

Kyutai Pocket TTSの機能上の利点

  • 単にCPU対応なのではなく、本当の意味でCPUネイティブ。 このアーキテクチャはCPUでの実行に特化して最適化されており、GPUアクセラレーションを試した結果、このモデルの設計では実質的な高速化が得られないことまで確認されています。
  • きわめて低いレイテンシ。わずか2つのCPUコアで、最初の音声チャンクを約200msで出力し、一般消費者向けCPU上で約6倍のリアルタイム速度で音声を生成します(MacBook Air M4でのベンチマーク)。
  • ゼロショット音声クローン。短いリファレンスクリップから、ファインチューニングなしで対象の声を捉えます。
  • 任意の長さのテキストを処理できるストリーミングアーキテクチャ。短い固定長の生成に限定されません。
  • 6言語に対応。v2.0.0時点で英語、フランス語、ドイツ語、スペイン語、ポルトガル語、イタリア語をサポートし、一部の言語にはさらに厳しい導入条件に対応する軽量な6層版も用意されています。
  • 幅広い導入の柔軟性。標準のPython APIとCLIに加え、WebAssemblyによるクライアント側のブラウザ内実装もあります。

連続音声モデリングがトークン化のボトルネックを避ける仕組み

Pocket TTSの効率を可能にしているのは、この具体的なアーキテクチャ上の選択です。その根底には、この分野のほかのtokenizerフリー手法にも通じる考え方があります。Pocket TTSはContinuous Audio Language Modeling(CALM)を基盤とし、Kyutai独自のMimiコーデックの技術的系譜を受け継いでいます。ただし、生成プロセス全体で離散トークンではなく連続潜在ベクトルを扱います。多くのニューラル音声コーデックは、残差ベクトル量子化(RVQ)によって離散トークンを作り、それを言語モデルに予測させます。大規模モデルでは妥当なトレードオフですが、モデルを小さくすると、離散コードブックの仕組みがアーキテクチャのほかの部分ほど素直に縮小しないため、不釣り合いに高コストなボトルネックになります。Pocket TTSは、固定された離散コードの語彙から選択する代わりに連続ベクトルを直接予測することで、このボトルネックを完全に回避します。これが、1億パラメータのモデルでありながら、何倍も大きいシステムの品質に匹敵、あるいは迫ることができる重要な理由の一つです。

注意深く読む価値のあるリスニングテスト

Kyutai独自の評価では、評価者がペアワイズのElo方式で比較し、Pocket TTSの音声品質に2016点、比較対象となった実際の人間による正解録音に1884点を付けました。つまり、リスナーは合成音声のほうがよく聞こえると評価したことになります。ただし、これを包括的な主張と受け取らず、適切な文脈で読むことが重要です。実際の録音には、マイクによる色付け、部屋の反響、呼吸音、音量のばらつきが含まれますが、クリーンな合成音声にはそうした要素がありません。また、Kyutaiはテスト前にリファレンスプロンプトを特別にクリーニングしていました。この結果は、特定の知覚品質指標とテストセットで実際に得られた、具体的な知見を示しています。あらゆる意味でPocket TTSが「人間より人間らしく聞こえる」とする普遍的な主張ではありません。

Kyutai Pocket TTSの始め方

  1. uvまたはpipでインストールします。 uvは隔離環境で依存関係を自動処理するため、推奨されるインストーラーです。手動で直接導入する場合はpip install pocket-ttsも使えます。Python 3.10から3.14に対応し、PyTorch 2.5以降が必要です。重要なのは、標準の非GPU版PyTorchだけでよいという点です。
  2. モデルを読み込み、声を選択します。 from pocket_tts import TTSModelを使い、続いてtts_model = TTSModel.load_model()でコアモデルを読み込みます。tts_model.get_state_for_audio_prompt("alba")は、組み込みプリセット音声の一つを名前で選択します(Albaはドキュメントに記載されたデフォルト音声の一つです)。
  3. 自分のリファレンスクリップでクローンするか、Hugging Faceから取得します。 ローカルWAVファイルのパス、またはホストされたリファレンスクリップを指すhf:// URI(たとえばKyutai独自のExpresso音声コレクション)を渡す方法は、プリセット音声名を選ぶ場合と同じです。
  4. generate_audio()で音声を生成します。 audio = tts_model.generate_audio(voice_state, "Hello world, this is a test.")は、PCM音声データを含む1次元のPyTorch tensorを返します。scipy.io.wavfileなどのライブラリを使ってWAVファイルに書き出せます。
  5. 繰り返し使う場合は、モデルと音声状態をメモリに常駐させます。 load_model()とget_state_for_audio_prompt()はいずれも比較的時間のかかる処理です。長時間動作するアプリケーションでは、一度だけ読み込み、複数回の生成呼び出しで再利用することで不要なオーバーヘッドを避けられます。
  6. まず音を聞いてみたいだけなら、ブラウザデモから試します。 Kyutaiはウェブサイトでブラウザ内版を公開しています。ローカル導入を決める前に、インストールなしでテキスト入力やさまざまな音声を試せます。

よりよい結果を得るためのヒント

  • このモデル専用にGPUを用意しないでください。 Kyutai独自のベンチマークでは、バッチサイズ1でGPUアクセラレーションによる高速化が見られませんでした。Pocket TTSのためだけにGPU導入基盤へ労力をかけるより、その労力はほかに使ったほうが有効です。
  • リクエストごとに再読み込みせず、音声状態をキャッシュします。 モデルの読み込みと音声状態の準備はいずれも比較的遅い処理です。本番サービスでは、受信リクエストのたびに再計算せず、メモリに保持するよう構成してください。
  • 対象言語に軽量な6層版があるか確認します。 とくに制約の厳しいハードウェアに導入する場合、言語ごとに用意された小型版は、わずかな品質と引き換えにさらに小さなフットプリントを実現します。
  • はるかに大きなモデルと比べる際は、現実的な品質を想定します。 1億パラメータという制約が、CPUでのリアルタイム性能を可能にしています。はるかに大きなシステムに対して驚くほど健闘しますが、自然さのあらゆる側面で、すべてのGPU依存大型モデルに匹敵する保証はありません。どの用途でも同等だと想定せず、自分のコンテンツで試してください。
  • 古いCPUや組み込みCPUアーキテクチャでは、性能にばらつきが出ると考えてください。 公開ベンチマークはMacBook Air M4のような最新ハードウェアに基づいています。古いプロセッサや特殊な組み込みプラットフォームでは性能が異なる可能性があるため、導入計画を確定する前に、実際の対象デバイスで検証してください。

Kyutai Pocket TTSと関連する軽量・ストリーミングモデルの比較

Pocket TTSKyutai TTS 1.6BKaniTTS
パラメータ数100M1.6B350M–450M
対象となる導入環境CPU、オンデバイス、エッジサーバー側ストリーミング(Unmuteを支える)低VRAM GPU
最初のチャンクまでのレイテンシ~200msサーバースケールのストリーミング向けに最適化<300ms(ストリーミングモード)
音声クローン対応、ゼロショット対応対応(Kani-TTS-2)
コア表現連続(CALM)、離散トークン化なしMimiベースのストリーミングアーキテクチャNanoCodecによる離散トークン
ライセンスMIT現在の条件を確認Apache 2.0

Pocket TTSが狙う特定の領域は、さまざまな導入形態の中でも、本当にCPUだけで動作する領域です。すでにGPUを備えたサーバーインフラには、Kyutai独自のより大きな1.6Bモデルが自然な選択です。一方、GPUを利用できないエッジデバイス、オフラインアプリ、ブラウザベースの導入では、Pocket TTSはまさにその制約に合わせて最初から作られており、後から適応させたモデルではありません。

よくある質問

Kyutai Pocket TTSは本当にGPUの恩恵を受けないのですか?

Kyutai独自のテストによれば、そのとおりです。バッチサイズ1では、この効率的な設計のモデルにとってGPUのデータ転送オーバーヘッドが計算上の利点を上回ります。そのため、CPUへの導入は妥協ではなく、想定された方法です。

Pocket TTSの音声クローンには、どのくらいのリファレンス音声が必要ですか?

ゼロショットクローンには短いクリップで十分で、ファインチューニングは必要ありません。特定のリファレンス音声をクローンする必要がなければ、あらかじめ用意された音声カタログから選ぶこともできます。

Pocket TTSはどの言語に対応していますか?

公開時は英語に対応し、2026年4月のv2.0.0でフランス語、ドイツ語、スペイン語、ポルトガル語、イタリア語が追加されました。一部の言語には、制約の厳しい導入向けに、より軽量な6層版もあります。

Pocket TTSは商用でも無料で使えますか?

はい。オープンソースTTSモデルの中でも比較的制約の少ないMITライセンスで公開されています。

Pocket TTSの品質は、はるかに大きなTTSモデルと比べてどうですか?

何倍も大きなモデルの品質に匹敵、あるいは迫るよう設計されており、Kyutai独自のリスニングテストでも非常に優れた結果を示しました。ただし、非常にコンパクトなモデル全般と同様、結果は用途によって異なる可能性があります。あらゆる場面で大型システムと同等だと考える前に、自分のコンテンツで試す価値があります。

Echoraでテキストを音声に変換

同様の目的を持つブラウザベースのワークフローには、Echoraのテキスト読み上げを利用できます。最大5,000文字を入力し、内蔵音声または保存したカスタム音声を選び、必要に応じて対応する話し方タグを追加して音声の安定性を調整できます。その後、結果をプレビューして完成したMP3をダウンロードできます。

テキストから音声を生成 →