Kokoro TTS:高音質なTTSモデルにGPUは不要だという証明
テキストと録音を、聴ける作品に
ナレーション、ステム分離、カバー、効果音を、ブラウザだけで。
- テキスト読み上げも、ボイスクローンも
- 音軌を分離するか、カバーを生成
- 登録して試聴。聴いてから決められる
ほとんどのオープンソース音声モデルは、アイドル状態のGPUがあることを前提にしています。Kokoro はそうではありません。8200万パラメーターと小型なので、何年も前のノートPCを含むCPU上でも快適に動作します。それでいて、何倍も大きいモデルを相手に Hugging Face TTS Arena リーダーボードの首位まで上り詰めました。GPUインフラを用意せずに自然な音声が必要なプロジェクトにとって、この制約のために作られたモデルです。
Kokoro とは?
Kokoro-82M は、開発者 hexgrad が Apache 2.0 ライセンスで公開したオープンウェイトのテキスト読み上げモデルです。商用利用、改変、セルフホストが無料で可能で、ロイヤリティは不要、クローズドソースでのデプロイにも制限はありません。StyleTTS 2 と ISTFTNet を組み合わせたデコーダー専用アーキテクチャで構成されており、約327MBというサイズにもかかわらず、v1.0の公開以来、何倍も大きなモデルと肩を並べるクリーンな24kHz音声を生成します。
名前自体は日本語で「心」または「精神」を意味します。どこでも実行できるほど小さなモデルから、真に表現力のある音声を引き出すというプロジェクトの目標を示しています。
小さなモデル、本物の能力
Kokoro の目を引く数字は8200万パラメーターですが、より役立つのは、そのサイズで何が得られるかです。
- 8言語で54種類の音声。アメリカ英語、イギリス英語、フランス語、日本語、韓国語、標準中国語などを含み、言語ごとの個別ダウンロードではなく、約327MBの単一ウェイトファイルにすべて収められています。
- CPUネイティブの性能。 Kokoro は一般的なCPUハードウェアでリアルタイム以上の速度で動作します。GPUが利用できる場合でもVRAM使用量は2GB未満で、同等品質のモデルが通常必要とする量のごく一部です。
- 1回あたり510トークンの生成ウィンドウ。トークン単位でストリーミングする必要なく、まとまった長さのナレーションを生成できます。
- ONNX対応。コミュニティの
kokoro-onnxパッケージを通じ、Apple Silicon のような制約のあるハードウェアでもほぼリアルタイムの性能を実現します。
このサイズとのトレードオフは事前に知っておく価値があります。Kokoro はゼロショット音声クローンに対応せず、感情表現の幅はより大きな表現力重視モデルより狭く、英語以外の言語では英語出力ほど品質が洗練されていません。劇的な演技や即時の音声クローンではなく、効率的で信頼できるナレーション向けに最適化されています。
Kokoro を始める
- 最初にシステム依存関係をインストールする。 Kokoro は音素化に
espeak-ngを使用します。Pythonパッケージをインストールする前に、システムのパッケージマネージャーでインストールしてください(Debian/Ubuntuではapt-get install espeak-ng)。そうしないと、テキストから音素への変換でセットアップがサイレントに失敗します。 - Kokoro パッケージをインストールする。
pip install kokoro soundfileで主要な依存関係を導入できます。日本語または中国語のサポートが必要な場合は、misaki[ja]またはmisaki[zh]も追加します。 - パイプラインを初期化して生成する。 言語コードで
KPipelineを読み込み(アメリカ英語は'a'、イギリス英語は'b'など)、テキストとaf_heartまたはbm_georgeのような音声名を渡します。Kokoro は音声を直接返し、インストールから.wavファイルの作成まで通常はPythonの5行で済みます。 - 本番環境では ONNX または Docker の経路を検討する。 CPUのみの環境や簡単なデプロイでは、コミュニティ管理の
kokoro-onnxパッケージまたはkokoro-fastapiDockerイメージ(OpenAI互換の音声エンドポイントを公開)が、素のパイプラインを自分で組むよりもサービスを素早く動かせます。 - 対象ハードウェアを早めにテストする。 Kokoro は10年前のCPUほど控えめなハードウェアでも実際に利用できますが、採用を決める前に実際のデプロイ先で許容できるレイテンシを確認すれば、後の驚きを避けられます。
より良い結果を得るためのヒント
- 単独の1語入力に注意する。 Kokoro の音素化器は自然な文脈に合わせて調整されています。単独の単語や数字(たとえば "six" だけ)は、時折誤って発音されたり、不自然に強調されたりすることがあります。断片ではなく完全な文を入力すると避けられます。
- 長文コンテンツを分割する。 本や記事の長さのナレーションでは、巨大な1つの入力にするのではなく、文章を段落または章単位のチャンクに分けます。これにより生成が予測しやすくなり、1回あたりのトークンウィンドウ超過も避けられます。
- デフォルトのままにせず、意図的に音声を選ぶ。 54種類の音声があるため、実際の台本コンテンツで候補を2、3種類テストする数分間には価値があります。音質は名前によって明確に異なり、最初に試したものが常に最適とは限りません。
- ゼロショットクローンを期待しない。 プロジェクトの中核要件が特定の人物の声をクローンすることであるなら、Kokoro は適切なベースモデルではありません。クローンに特化したモデルと組み合わせるか、固定の音声ラインナップで十分なナレーションにKokoroを使ってください。
- クラウドTTSベンダーを置き換える場合はOpenAI互換APIラッパーを使う。
kokoro-fastapiは、OpenAIスタイルのTTS API呼び出しのローカル代替として設計されています。そのため既存の統合コードへの変更を最小限にできます。
Kokoro と他の軽量・クローン重視モデルの比較
| Kokoro-82M | Chatterbox Turbo | Chatterbox / Dia | |
|---|---|---|---|
| パラメーター数 | 82M | 350M | 500M–1.6B |
| CPUで動作 | はい、ネイティブ | GPU向け | GPU向け |
| 音声クローン | いいえ | はい、ゼロショット | はい |
| 言語 | 8 | 英語 | 英語(Multilingual: 23) |
| 最適な用途 | オフラインナレーション、エッジデバイス、コスト重視のデプロイ | リアルタイム音声エージェント | 表現力豊かな対話、クローン音声 |
| ライセンス | Apache 2.0 | MIT | Apache 2.0 / MIT |
Kokoro はクローンや感情表現の幅で競おうとしているわけではありません。その価値提案のすべては、他のモデルがまったく動かないハードウェア上で、堅実で信頼できるTTSを実現することにあります。クローンや劇的な表現力が優先なら、より大きなモデルの方が適しています。優先事項が「安価に、どこでも、いつまでも動く」ことなら、Kokoro に勝るものはなかなかありません。
よくある質問
Kokoro は本当にGPUなしで動作できますか? はい。Kokoro は古いマシンを含むCPUハードウェアで効率的に動作するよう特別に作られており、リアルタイムまたはほぼリアルタイムの速度で動きます。GPUは必須ではなく、任意です。
Kokoro は音声クローンに対応していますか? いいえ。Kokoro には参照クリップからのゼロショットクローンではなく、固定の54種類の内蔵音声が用意されています。クローン用途なら、Chatterbox のようなモデルの方が適しています。
Kokoro はどの言語に対応していますか? アメリカ英語、イギリス英語、フランス語、日本語、韓国語、標準中国語などを含む8言語で、一般に英語が最も洗練された出力品質を提供します。
Kokoro は商用利用が無料ですか? はい。Apache 2.0 ライセンスで公開されており、ロイヤリティなしで商用デプロイ、改変、クローズドソース統合が可能です。
大規模に Kokoro を動かす費用はいくらですか? セルフホストでは、Kokoro の実行コストは低額です。コミュニティの報告では低価格なGPUインスタンスで1時間あたり数セント程度、APIプロバイダーでは入力テキスト100万文字あたり1ドル未満で提供された例があります。
類似のテキスト読み上げ機能を試す
Kokoro はオープンソース実装とコミュニティツールを通じて利用できます。ブラウザで音声を作成したい場合は、類似機能として テキスト読み上げ を試してください。これは Kokoro ではなく、モデル固有の音声、実行特性、セルフホストの選択肢は提供しませんが、ローカルでモデルをセットアップせずにAI音声を作成できます。