概要
- Kokoro による高品質なローカルTTS(テキスト読み上げ)技術の進化
- プライバシーを損なわず にリアルな音声生成が可能
- CPUのみ で多言語・多声種の音声合成を実現
- Docker/PODMAN で簡単にサーバー構築が可能
- OpenAI API互換 で既存アプリへの統合も容易
ローカルTTS技術の進化とKokoroの特徴
- 数年前には想像できなかった リアルなローカル音声合成 の実現
- Kokoroモデル は82Mパラメータながら多言語対応の高品質音声生成
- 英語、 中国語(Mandarin)、ヒンディー語(Hindi)などに対応
- 約 50種類の声 を提供、英語最適化
- プライバシー重視 :すべてローカルで処理され、個人情報流出のリスクなし
Kokoroのセットアップ方法
- Kokoro-FastAPI という事前構築済みコンテナイメージを利用
- 事前に音声モデルを内包し、サイズは約5GB
- Docker または Podman で簡単起動
- コマンド例:
podman run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu
- コマンド例:
- Web UI (localhost:8880/web)で手軽にテキスト→音声変換を体験可能
API互換性とサンプルコード
- OpenAI Speech API互換 のTTSインターフェースを提供
- 既存のOpenAI対応アプリも簡単に切り替え可能
- GitHubリポジトリ (github.com/remotebrowser/speak)にJavaScript/Pythonサンプルあり
- JavaScript例:
export TTS_API_BASE_URL=http://127.0.0.1:8880/v1 ./speak.js "Good morning! How are you today?" - Python例も同様
- JavaScript例:
- 音声ファイルは MP3形式で保存、SoXがあれば自動再生も可能
- TTS_VOICE環境変数 で声の種類を選択可能
- 声一覧: Kokoro公式ページ
性能・ベンチマーク
- am_eric ボイスでの短文合成速度(ベスト3回の平均)
- Intel Core i7-4770K(12年前のCPU):4.7秒
- Apple M2 Pro:4.5秒
- AMD Ryzen 7 8745HS:1.5秒
- 古いCPUでも十分なパフォーマンスを発揮
代替TTSサービス:Speaches
- Speaches(speaches.ai) :OpenAI互換のTTSサービス
- 音声モデルはAPI経由で別途ダウンロードが必要
- Whisper (高品質STT)も統合
- TTSとSTTの両方 が必要な場合はSpeachesが有力な選択肢
ローカルLLMとTTSの連携
- ローカルLLMと連携することで、 テキストの読み上げ体験 が可能
- 視覚的な負担軽減 やアクセシビリティ向上に貢献
まとめ
- Kokoro はローカル環境での高品質TTSの新たな選択肢
- プライバシー保護 と 高い汎用性 を両立
- 簡単な導入 と 豊富な機能 で、開発者・ユーザー双方にメリット