「Chatterbox-TTS」を試す
GItHubレポジトリ
Chatterbox TTS
私たちは、Chatterbox をご紹介できることを大変嬉しく思います。これは Resemble AI による初の本格的なプロダクション向けオープンソース TTS モデルです。MIT ライセンスで提供されており、Chatterbox は ElevenLabs などの主要なクローズドソースシステムと比較評価され、並列評価でも一貫して高い評価を受けています。
ミーム、動画、ゲーム、AI エージェントなど、どのようなコンテンツ制作でも、Chatterbox があなたの作品に命を吹き込みます。また、感情の誇張コントロールをサポートする初のオープンソース TTS モデルでもあり、これにより音声表現が際立ちます。今すぐ Hugging Face Gradio アプリ でお試しください。
モデルが気に入ったものの、より高精度なスケールアップやチューニングが必要な場合は、競争力のある価格で提供される TTS サービス(リンク)もご利用いただけます。このサービスは、エージェント、アプリケーション、インタラクティブメディアでの本番利用に理想的な、200ms 未満の超低レイテンシで信頼性の高いパフォーマンスを実現します。
主な特徴
- 最先端のゼロショット TTS
- 0.5B Llama バックボーン
- 独自の誇張/強調コントロール
- アライメント情報に基づく推論による超高安定性
- 50万時間分のクリーニング済みデータで学習
- 出力にウォーターマーク付与
- 簡単に使えるボイスコンバージョンスクリプト
- ElevenLabs を凌駕する性能
ヒント
- 一般利用(TTS・ボイスエージェント):
- デフォルト設定(
exaggeration=0.5,cfg_weight=0.5)はほとんどのプロンプトで良好に動作します。- 参照スピーカーが速い話し方の場合、
cfg_weightを約0.3に下げると話速が改善されることがあります。- 表現力豊かな音声や劇的なスピーチ:
- より低い
cfg_weight値(例:~0.3)を試し、exaggerationを約0.7以上に上げてみてください。exaggerationを高くすると発話速度が上がる傾向があるため、cfg_weightを下げることで、よりゆっくりとした丁寧な発話に調整できます。
責任ある AI のための組み込み PerTh ウォーターマーキング
Chatterbox で生成されるすべての音声ファイルには、Resemble AI の Perth (Perceptual Threshold) Watermarker が埋め込まれています。これは、人間には知覚できないニューラルウォーターマークであり、MP3 圧縮、音声編集、一般的な加工にも耐性を持ち、ほぼ 100% の検出精度を維持します。
免責事項
このモデルを不正な目的で使用しないでください。プロンプトはインターネット上で自由に利用可能なデータから収集されています。
誇張/強調コントロールってのが特徴なのかな。
公式のサンプルはこちら
HuggingFaceのデモはこちら
上に記載がある通りAPIサービスもある。なかなか高速を謳っている。
Colaboratory T4で。
パッケージインストール
!pip install chatterbox-tts
!pip freeze | grep -i chatterbox
chatterbox-tts==0.1.1
このまま進めるとモデルロード時にエラーになる。おそらく上のパッケージインストールでいくつかの依存パッケージも更新されているがランタイムに読み込まれないため。一旦ここでランタイムを再起動しておく。
ではモデルロード
import torchaudio as ta
from chatterbox.tts import ChatterboxTTS
model = ChatterboxTTS.from_pretrained(device="cuda")
この時点でのVRAM消費は4.2GB程度。
Thu May 29 15:16:01 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 550.54.15 Driver Version: 550.54.15 CUDA Version: 12.4 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 Tesla T4 Off | 00000000:00:04.0 Off | 0 |
| N/A 47C P0 28W / 70W | 4228MiB / 15360MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
ちなみにRAMも少し上がっている。

では推論。モデルロード後初回の推論だけ10秒程度かかるが、2回目以降は5秒程度と速くなる。
text = "Good morning. It's a beautiful day today. On days like this, I feel like going to the horse races."
wav = model.generate(text)
ta.save("chatterbox-tts-sample1.wav", wav, model.sr)
Colaboratory上で直接聞くには以下
from IPython.display import Audio
Audio("chatterbox-tts-sample1.wav", autoplay=True)
実際に生成されたもの
ヒントにもあるが、誇張した表現にすることができる。generate()メソッドはデフォルトだと以下のパラメータとなっている。
-
exaggeration:0.5 -
cfg_weight:0.5 -
temperature:0.8
このうち、exaggeration が誇張表現の設定で高くすればするほど誇張した表現になる。ヒントには0.7以上とある。exaggeration を上げると発話スピードが速くなりがちになるので、cfg_weight を 0.3 以下に下げるのが推奨みたい。後で試すけど、リファレンスを音声を使った音声クローンの場合、そのリファレンスの発話スピードが速ければ生成される音声も速くなるので、cfg_weight を 0.3 程度に下げろとある。つまり cfg_weight は発話速度に影響するパラメータと思われる。
exaggerationを極端に上げてみた。
text = "Good morning. It's a beautiful day today. On days like this, I feel like going to the horse races."
wav = model.generate(text, exaggeration=2.0, cfg_weight=0.3)
ta.save("chatterbox-tts-sample2.wav", wav, model.sr)
Audio("chatterbox-tts-sample2.wav", autoplay=True)
実際に生成されたもの。若干最後おかしくなるぐらい叫んでる。
音声クローンは以下のようにリファレンス音声を渡せば良い。
AUDIO_PROMPT_PATH="my_voice.wav"
wav = model.generate(text, audio_prompt_path=AUDIO_PROMPT_PATH)
ta.save("chatterbox-tts-sample3.wav", wav, model.sr)
自分の声で試してみたけど、日本語のリファレンス音声でも英語できれいに発話していた。
レポジトリにはGradioのスクリプトもあるようなので、HuggingFace Spaceと同じものをローカルで動かせるのだろうと思う。
まとめ
軽量で生成もまあまあ速い方だと思う。誇張表現ってのは少し変わってて面白い。
もうこんなものがある
Dockerで試してみた。
git clone https://github.com/devnen/chatterbox-tts-server.git
cd chatterbox-tts-server
自分の環境はCUDA-12.4なので、Dockerfileの1行目を少し修正
FROM nvidia/cuda:12.4.1-runtime-ubuntu22.04
(snip)
あと、docker-composeの以下の箇所、レガシーな方じゃないと自分の環境では動かなかった。
(snip)
#devices:
# - nvidia.com/gpu=all
#device_cgroup_rules:
# - "c 195:* rmw"
# - "c 236:* rmw"
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
(snip)
ビルドして起動。そこそこ時間がかかる。
docker compose up --build
起動したらブラウザで8004番ポートにアクセスするとこんな画面。

デフォルトの例文はこんな感じ。
Are you tired of slow, unreliable connections? Upgrade today to Quantum Fiber, the fastest internet in the galaxy! Experience seamless streaming, lag-free gaming, and instant downloads. Call now and get your first three months half price! Don't wait, this offer won't last forever!
デフォルトでとりあえず精製してみると、初回だけ遅いけど、2回目以降は4秒程度で生成してくれる。
文単位で最小ににしてみた。
Are you tired of slow, unreliable connections?
これで1.5秒ぐらい。自分が試した中ではIndex TTSが一番早かったけど、それと同等レベルで十分速い方だと思う。
あとなんとなくだけど、以下はコメントアウトしたほうがいいと思う。いかが有効だと起動時にモデル取得に失敗することが多い気がする。(モデルをローカルにキャッシュしていないのかもしれない)
VRAM的にはこんな感じ
Mon Jun 2 19:59:37 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 560.35.05 Driver Version: 560.35.05 CUDA Version: 12.6 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 4090 Off | 00000000:01:00.0 Off | Off |
| 0% 53C P0 49W / 450W | 5071MiB / 24564MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
マルチリンガルに対応した様子。日本語も含まれている。
Chatterbox Multilingualのご紹介 🌎
23言語。1つのモデル。オープンソース。
@github、@huggingface、http://resemble.aiで公開中。
さあ、詳しく見ていきましょう 🧵
多言語サポートは、コミュニティからの要望の中で断トツで最多でした。そして私たちは23言語でそれを実現しました!
アラビア語 (ar) • デンマーク語 (da) • ドイツ語 (de) • ギリシャ語 (el) • 英語 (en) • スペイン語 (es) • フィンランド語 (fi) • フランス語 (fr) • ヘブライ語 (he) • ヒンディー語 (hi) • イタリア語 (it) • 日本語 (ja) • 韓国語 (ko) • マレー語 (ms) • オランダ語 (nl) • ノルウェー語 (no) • ポーランド語 (pl) • ポルトガル語 (pt) • ロシア語 (ru) • スウェーデン語 (sv) • スワヒリ語 (sw) • トルコ語 (tr) • 中国語 (zh)
** ビデオは優れた Wan Video モデルによって制作されています。デモンストレーションのみです。
私たちは簡単に始めれるようにしました!
警告:これで何時間も遊んでしまうかもしれません 😅
@huggingfaceで試してみてください 👉
それを使って構築したいですか?
@github ですべてあなたのものですpip install chatterbox-tts
MIT ライセンス。フォークして。改善して。出荷して。
もっと速く、高品質にしたいですか?Chatterbox Proをご紹介します:
- あなたのデータセットでのファインチューニング
- 99%の声の類似性
- <200ms 最初の音声までの時間
詳細はこちら → https://t.co/mVQdYmRRPp
手っ取り早く試すなら以下のHuggingFace Spaceでデモが試せる。
日本語もこんな感じで使える。

実際に生成されたもの。読み間違いがあるけど。
Chatterbox Multilingual を試す
ということでマルチリンガル対応したものを試す。モデルは以前のものと同じレポジトリになっているが、Quickstartが少し変更されている様子。
インストールは以前と同様にパッケージが用意されているのだが、以下のIssueにあるとおり、現状はパッケージの依存関係が上手く解決できず、インストールが上手くいかない事が多い様子。
ざっと見た感じ、とりあえずPython-3.11が想定されている環境の様子。前回はColaboratoryで試したのだけど、現在のColaboratoryはPython-3.12になっているため、今回はローカルのUbuntu-22.04サーバ(RTX4090)で Python-3.11環境を作って、かつ、レポジトリをクローンしてインストールすることする。
なお、以下はIssueを参考に諸々試行錯誤した結果、自分の環境では動作した手順。
レポジトリクローン
git clone https://github.com/resemble-ai/chatterbox chatterbox-work && cd $_
uvでPython-3.11の仮想環境を作成。--seed で pip、setuptools、wheel をインストールしてくれる。
uv venv -p 3.11 --seed
Using CPython 3.11.13
Creating virtual environment with seed packages at: .venv
+ pip==25.2
+ setuptools==80.9.0
+ wheel==0.45.1
Activate with: source .venv/bin/activate
このあともuvを使いたいのだけど、どうしても上手くいかなかったのでアクティベートして仮想環境に入る。
source .venv/bin/activate
最初に numpy と pkuseg をインストール。
pip install "numpy>=1.24,<1.26"
pip install "pkuseg==0.0.25" --no-build-isolation
残りの依存関係含めてインストール
pip install -e .
Successfully installed (snip) chatterbox-tts-0.1.4 (snip)
ではQuickstartにあるマルチリンガルのコードを実行してみる(ちなみにサンプルコードにはtypoがある)。日本語も追加した。
import torchaudio as ta
from chatterbox.mtl_tts import ChatterboxMultilingualTTS
multilingual_model = ChatterboxMultilingualTTS.from_pretrained(device="cuda")
french_text = "Bonjour, comment ça va? Ceci est le modèle de synthèse vocale multilingue Chatterbox, il prend en charge 23 langues."
wav_french = multilingual_model.generate(french_text, language_id="fr")
ta.save("test-french.wav", wav_french, multilingual_model.sr)
chinese_text = "你好,今天天气真不错,希望你有一个愉快的周末。"
wav_chinese = multilingual_model.generate(chinese_text, language_id="zh")
ta.save("test-chinese.wav", wav_chinese, multilingual_model.sr)
japanese_text = "こんにちは、今日は本当にいい天気ですね。楽しい週末をお過ごしください。"
wav_japanese = multilingual_model.generate(japanese_text, language_id="ja")
ta.save("test-japanese.wav", wav_japanese, multilingual_model.sr)
実行
python sample_multilingual_tts.py
以下の3ファイルが作成された
-rw-rw-r-- 1 kun432 kun432 211278 9月 10 19:49 test-japanese.wav
-rw-rw-r-- 1 kun432 kun432 986958 9月 10 19:49 test-chinese.wav
-rw-rw-r-- 1 kun432 kun432 284238 9月 10 19:49 test-french.wav
生成されたものはこんな感じ
なんか読み間違いもあるし、最後に意味不明なものが出力されているけども。
音声プロンプトを使ったクローンはこんな感じ。
import torchaudio as ta
from chatterbox.mtl_tts import ChatterboxMultilingualTTS
multilingual_model = ChatterboxMultilingualTTS.from_pretrained(device="cuda")
# 音声プロンプトのパス
audio_prompt_path = "my_voice.wav"
french_text = "Bonjour, comment ça va? Ceci est le modèle de synthèse vocale multilingue Chatterbox, il prend en charge 23 langues."
wav_french = multilingual_model.generate(
french_text,
audio_prompt_path=audio_prompt_path,
language_id="fr"
)
ta.save("test-clone-french.wav", wav_french, multilingual_model.sr)
chinese_text = "你好,今天天气真不错,希望你有一个愉快的周末。"
wav_chinese = multilingual_model.generate(
chinese_text,
audio_prompt_path=audio_prompt_path,
language_id="zh"
)
ta.save("test-clone-chinese.wav", wav_chinese, multilingual_model.sr)
japanese_text = "こんにちは、今日は本当にいい天気ですね。楽しい週末をお過ごしください。"
wav_japanese = multilingual_model.generate(
japanese_text,
audio_prompt_path=audio_prompt_path,
language_id="ja"
)
ta.save("test-clone-japanese.wav", wav_japanese, multilingual_model.sr)
実際の生成物は公開しないけども、自分の声で指定されたテキストを各言語ごとに発話していた。ただまあそこまで品質が良いか?というと微妙かな。1つ前にも書いたけど、語尾や中間部分に意味不明な音声や雑音が含まれることがある。
公式のHuggingFace Spaceのデモと同じものは multilingual_app.py として用意されている。
GRADIO_SERVER_NAME=0.0.0.0 python multilingual_app.py

マルチリンガルのまとめ
以前は英語のみだったが、マルチリンガルで日本語サポートされているのは素直に嬉しい。ただ、英語だけのときには感じなかったけど、英語以外の発話精度はちょっと物足りない感じかな。生成速度は結構速いほうだし、クローンもできるのはいいんだけども。引き続き期待かな。
ところで日本語の発話は pykakasi でひらがな・カタカナにしてるように見える。とてもシンプルな処理しかやってないように見えるので、ここをいじれば多少発話精度はあがるのではなかろうか?という気がした。
トレーニングのコードについては公開されることはなさそう。ファインチューニングについても基本的にはResemble.ai のサービスで、というところ。
ただ、以下あたりを見ると、マルチリンガル対応前だけど、独自でファインチューニングした人はいる様子。
より高速なモデルがでたみたい。ただし英語のみ。
マルチリンガル版も高速なモデル出してほしいな。