本文へスキップ
IFAI

オープンソース

KyutaiのPocket TTS:1億パラメータでCPUリアルタイム動作する音声合成

公開 拡散指数 48

KyutaiがCPU向け軽量音声合成モデル「Pocket TTS」をオープンソース公開。1億パラメータの省サイズ設計でGPUを必要とせず、MacBook Air M4の2コアで約6倍速のリアルタイム生成と200msの低遅延を実現。音声クローンや長文朗読にも対応する。

KyutaiのPocket TTS:1億パラメータでCPUリアルタイム動作する音声合成
画像:github.com

Pocket TTSは、GPUを使わずに一般的なCPU上で軽快に動作するよう設計された、Kyutaiによるオープンソースのテキスト音声合成ツールです。モデルサイズはわずか1億パラメータ(100M)で、クラウドAPIや重いグラフィックボードに依存せず、手元のマシンで音声合成と音声クローンを実行できます。

何ができるのか

Pocket TTSの最大の特徴は、低遅延と極めて高い処理効率です。最初の音声チャンクが出力されるまでの遅延は約200ミリ秒に抑えられており、対話型の音声アシスタントなど即応性が求められる場面にも十分耐えられます。

MacBook Air M4のCPUでは、わずか2コアの消費で実時間の約6倍という高速な音声生成が可能です。さらに、18.2M、6.9M、1.9Mパラメータという超小型の英語向けモデルも用意されており、これらはシングルスレッド動作で最大25倍速に達します。

長文処理にも強く、途切れることのないストリーミング生成によってオーディオブック1冊分のような膨大なテキストもそのまま読み上げられます。短い音声サンプルを用意すれば、その声質を再現するボイスクローンにも対応しています。

生成される音声は機械感が少なく、自然なイントネーションやリズムを維持しており、文脈から皮肉めいたニュアンスを汲み取ることさえ可能です。ただし、数十億パラメータ規模の巨大TTSモデルと比べると、感情表現の柔軟性には限界があります。また、複数言語のオプションはあるものの、現時点で実用に耐えるのは主に英語です。

セットアップと実行方法

利用を始めるための敷居は非常に低く設定されています。

Pythonとuvが導入されていれば、uvx pocket-tts generateというコマンドを実行するだけで必要な依存関係を揃えて音声を生成できます。また、uvx pocket-tts serveを実行すれば、ブラウザから操作できるローカルサーバーが立ち上がります。

音声クローンを頻繁に利用する場合は、元音声を毎回解析する代わりに、export-voiceコマンドで特徴量をsafetensors形式で書き出す運用が推奨されています。次回以降はキャッシュを読み出すだけで瞬時にその声で合成できます。

さらに、PythonやPyTorchの環境構築すら不要なRust製のスタンドアロンバイナリがmacOS、Linux、Windows向けに配布されています。コミュニティによるWebAssembly版も登場しており、ブラウザ内での完全ローカル動作も可能です。

コードやモデルの重みだけでなく、自前モデル作成用の学習コードもすべてGitHub上で公開されています。

なぜ重要か

ローカル環境で動くAIツールを開発したいエンジニアにとって、Pocket TTSは極めて扱いやすい選択肢です。これまで高品質な音声合成といえばVRAMを大量に消費するGPUか、高価なクラウドAPIが前提でしたが、これを軽量なノートPCのCPUだけで完結させられます。

他の巨大モデルと比較すると、極限まで絞り込んだパラメータ数と実用的な音質のバランスが秀逸です。言語の対応幅や感情の細やかな制御にはまだ課題があるものの、100M以下の規模でここまで実用的な音声とレイテンシを実現したアプローチは、オンデバイスAIの現実解として高く評価できます。

情報源 (1)

  1. [1]
    github.com(新しいタブで開きます)原文github.com

毎日のAIピックアップ