Ubuntu で Tortoise TTS を動かすと、市販のナレーションと見紛うほどの高品質な音声が手元で生成できます。結論を先に書くと、pip install tortoise-tts の1コマンドでインストールは完了しますが、モデルが約3GB・実用レベルにはGPU推奨(CPU動作は非常に低速)という点は事前に把握しておく必要があります。
本記事では Ubuntu 24.04 LTS を対象に、システム依存パッケージの導入から音声生成の実行まで、つまずきやすいポイントをまとめました。PyPI での確認バージョンは tortoise-tts 3.0.0(2026年6月21日時点)です。
この記事のポイント
- Tortoise TTS は
pip install tortoise-ttsでインストール。依存パッケージはtransformers==4.31.0で固定 - Ubuntu 24.04(Python 3.12)より Ubuntu 22.04(Python 3.10) のほうが互換性トラブルが少ない
- GPU(CUDA)がない環境でも動くが、CPU 動作は非常に低速。本番用途は GPU 必須(コミュニティ報告では CPU で数分〜十数分/文)
- 初回実行時にモデルが自動ダウンロード(約3GB)。ストレージ容量に余裕を確認してから始める
espeak-ng・ffmpeg・libsndfile1がないとエラーになる。apt で先に入れる
目次
- Tortoise TTS とは
- 動作環境・前提条件
- STEP 1:システム依存パッケージのインストール
- STEP 2:Python 仮想環境(venv)の作成
- STEP 3:PyTorch のインストール
- STEP 4:tortoise-tts のインストール
- STEP 5:音声を生成する
- 音声クローニング(Voice Cloning)
- よくあるエラーと解決策
- まとめ
Tortoise TTS とは
Tortoise TTS は、James Betker(neonbjb)が開発したオープンソースのテキスト音声合成(TTS)ライブラリです。市販の音声読み上げエンジンと比べても遜色ない自然さが特徴で、自動回帰トランスフォーマー・拡散モデル・Vocoder(UnivNet)を組み合わせた多段階アーキテクチャにより実現しています。
最大の特徴は「音声クローニング」機能です。数秒〜数十秒のサンプル音声を与えるだけで、その話者の声質を模した音声を生成できます。ポッドキャストの制作支援や、個人ゲームプロジェクトのナレーション、音声アシスタントの試作などに使われています。

注意:メンテナンス状況について
2023年以降、オリジナルリポジトリ(neonbjb/tortoise-tts)の更新は止まっています。コードは安定していて動作しますが、最新の PyTorch や transformers との互換性問題が発生することがあります。本記事のパッケージバージョンは PyPI JSON API(tortoise-tts 3.0.0)と Ubuntu コンテナでの apt-cache 実確認をもとに記述しています。
動作環境・前提条件
本記事の手順は以下の環境を対象としています。
| 項目 | 推奨 | 最低限 |
|---|---|---|
| OS | Ubuntu 22.04 LTS(Python 3.10) | Ubuntu 22.04 / 24.04 |
| Python | 3.10.x(22.04 デフォルト) | 3.8 以上 |
| GPU | NVIDIA GPU(CUDA 11.8+) | 不要(CPU 動作可・低速) |
| VRAM | 8GB 以上 | 4GB(品質モード制限あり) |
| RAM | 16GB 以上 | 8GB |
| ストレージ | 10GB 以上の空き | 5GB(モデル 3GB 含む) |

PyPI で確認すると、tortoise-tts 3.0.0 の requires_python: ">=3.6" とありますが、依存パッケージの transformers==4.31.0 が Python 3.12 との相性で問題が出ることがあります。Ubuntu 22.04(Python 3.10)での構築を推奨します。
STEP 1:システム依存パッケージのインストール
tortoise-tts は内部で espeak-ng(テキスト正規化)・ffmpeg(音声エンコード)・libsndfile1(WAV読み書き)を使います。これらは pip では入らないので apt で先にインストールします。

python3 python3-pip python3-venv \
ffmpeg espeak-ng libsndfile1 git
Reading package lists… Done
Building dependency tree… Done
Setting up python3 (3.12.3-0ubuntu2.1) …
Setting up ffmpeg (7:6.1.1-3ubuntu5) …
Setting up espeak-ng (1.51+dfsg-12build1) …
Setting up libsndfile1 (1.2.2-1ubuntu5.24.04.1) …
インストール後、バージョンを確認します。
Python 3.12.3
ffmpeg version 7:6.1.1-3ubuntu5 Copyright (c) 2000-2023 the FFmpeg developers
eSpeak NG text-to-speech: 1.51 Data at: /usr/lib/x86_64-linux-gnu/espeak-ng-data
Ubuntu 24.04 では Python 3.12 が、Ubuntu 22.04 では Python 3.10 が入ります。apt-cache show python3 で確認したバージョンは以下の通りです(apt-cache 実測)。
- Ubuntu 22.04:
python3 3.10.6・ffmpeg 7:4.4.2・espeak-ng 1.50 - Ubuntu 24.04:
python3 3.12.3・ffmpeg 7:6.1.1・espeak-ng 1.51
STEP 2:Python 仮想環境(venv)の作成
システムの Python を汚さないよう、venv で専用環境を作ります。tortoise-tts が transformers==4.31.0 を固定で要求するため、他の ML プロジェクトと venv を分けておくことが特に重要です。
$ source ~/tortoise_env/bin/activate
(tortoise_env) $
(tortoise_env) $ pip install –upgrade pip
Successfully installed pip-25.1.1
以降のコマンドはすべて (tortoise_env) が付いた状態(venv 有効化済み)で実行します。シェルを再起動した場合は source ~/tortoise_env/bin/activate を再実行してください。
STEP 3:PyTorch のインストール
Tortoise TTS は PyTorch を直接インストールしないため、先に自分で入れる必要があります。環境によってコマンドが変わる点が最初のつまずきポイントです。
このセクションのターミナル出力について
STEP 3〜5 のターミナル出力例は PyPI 実測データ(tortoise-tts 3.0.0)と公式ドキュメントをもとに作成した参考例です。この記事での実機インストール・実行は行っておらず、実際の出力と細部が異なる場合があります。
①GPU なし(CPU 動作確認用)
–index-url https://download.pytorch.org/whl/cpu
Downloading torch-2.5.1+cpu-cp310-cp310-linux_x86_64.whl (210 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 210.0/210.0 MB 12.3 MB/s
Successfully installed torch-2.5.1+cpu torchaudio-2.5.1+cpu
# CPU版: 動作確認には使えるが、音声生成が非常に低速(1文あたり数分〜)
②CUDA 11.8 環境(NVIDIA GPU あり)
–index-url https://download.pytorch.org/whl/cu118
Successfully installed torch-2.5.1+cu118 torchaudio-2.5.1+cu118
# CUDA 12.x 環境なら cu121 / cu124 を選ぶ(nvidia-smi で確認)
どの CUDA バージョンを選ぶかは nvidia-smi の出力(右上の “CUDA Version:” 行)で確認します。PyTorch 公式(pytorch.org/get-started/locally)でも選択ツールが提供されています。
STEP 4:tortoise-tts のインストール
PyTorch が入ったら、いよいよ本体をインストールします。


(tortoise_env) $ pip install tortoise-tts
Collecting tortoise-tts==3.0.0
Collecting transformers==4.31.0 (from tortoise-tts)
Collecting librosa (from tortoise-tts)
Collecting einops (from tortoise-tts)
Successfully installed tortoise-tts-3.0.0 transformers-4.31.0
librosa-0.10.2 einops-0.8.0 rotary-embedding-torch-0.6.5
scipy-1.14.1 tqdm inflect progressbar unidecode tokenizers
(tortoise_env) $ python3 -c “import tortoise; print(tortoise.__version__)”
3.0.0
PyPI の実測データから確認した主要依存パッケージです。特に transformers==4.31.0 はバージョンが固定されており、最新の transformers(4.40+)とは同居できません。
transformers のバージョン固定について
tortoise-tts は transformers==4.31.0 を要求します。別の ML プロジェクトで transformers の最新版を使っている場合、pip install tortoise-tts を実行するとダウングレードされてしまいます。必ず 専用の venv を用意してください。
STEP 5:音声を生成する
インストールが完了したら、簡単なスクリプトで音声を生成してみます。初回実行時は自動でモデルファイル(約 3GB)がダウンロードされます。ダウンロードが終わるまで画面上は止まったように見えますが、しばらく待ってください。

①基本的な音声生成スクリプト
(tortoise_env) $ cat <<‘EOF’ > generate_tts.py
import torchaudio
from tortoise.api import TextToSpeech
from tortoise.utils.audio import load_voices
tts = TextToSpeech()
text = “Hello, this is Tortoise TTS speaking.”
voice_samples, conditioning_latents = load_voices([“random”])
gen = tts.tts_with_preset(
text,
voice_samples=voice_samples,
conditioning_latents=conditioning_latents,
preset=”fast”
)
torchaudio.save(“output.wav”, gen.squeeze(0).cpu(), 24000)
print(“Saved: output.wav”)
EOF
(tortoise_env) $ python3 generate_tts.py
# 初回はモデルダウンロードで数分かかります
Saved: output.wav
② preset(品質)の選択
Tortoise TTS には音質と速度を調整できる preset オプションがあります。
| preset | 音質 | CPU 速度目安※ | GPU 速度目安※ | 用途 |
|---|---|---|---|---|
ultra_fast |
低め | 2〜5分/文 | 5〜15秒/文 | プロトタイプ・動作確認 |
fast |
中程度 | 5〜15分/文 | 15〜45秒/文 | 開発・テスト |
standard |
高品質 | 15〜60分/文 | 1〜3分/文 | 本番・コンテンツ制作 |
high_quality |
最高品質 | 数時間/文 | 3〜10分/文 | 最終納品物 |
※ 速度目安はコミュニティ報告(GitHub Issues / Reddit)をもとにした概算。環境・テキスト長で大きく変動します。この記事での実測は行っていません。
音声クローニング(Voice Cloning)
Tortoise TTS の最大の特徴が、自分や特定の話者の声を模した音声を生成できる「音声クローニング」です。5〜10 秒程度の WAV サンプルが数枚あれば試せます。
# 話者ディレクトリを作って WAV サンプルを置く
(tortoise_env) $ mkdir -p ~/.local/share/tts/tortoise/voices/myvoice
(tortoise_env) $ cp sample1.wav sample2.wav ~/.local/share/tts/tortoise/voices/myvoice/
# スクリプトで “myvoice” を指定して生成
(tortoise_env) $ python3 -c ”
from tortoise.api import TextToSpeech
from tortoise.utils.audio import load_voices
tts = TextToSpeech()
samples, latents = load_voices([‘myvoice’])
gen = tts.tts_with_preset(‘こんにちは、テスト音声です。’, voice_samples=samples, conditioning_latents=latents, preset=’fast’)
import torchaudio; torchaudio.save(‘cloned.wav’, gen.squeeze(0).cpu(), 24000)
print(‘Saved: cloned.wav’)”
Saved: cloned.wav
日本語音声の生成について
Tortoise TTS は英語を主として設計されています。日本語テキストでも動作しますが、発音の精度は英語より大幅に落ちます。日本語 TTS として使う場合は別途 Style-Bert-VITS2 や COEIROINK などの日本語特化モデルを検討してください。
よくあるエラーと解決策
① ModuleNotFoundError: No module named 'espeak'
espeak-ng が入っていない場合に起こります。
# → apt でインストール
$ sudo apt-get install -y espeak-ng
Setting up espeak-ng (1.51+dfsg-12build1) …
② CUDA out of memory
GPU の VRAM が不足しています。preset を ultra_fast に下げるか、テキストを短く分割してください。
# → preset を下げるか CPU モードで実行
(tortoise_env) $ python3 -c ”
import torch
tts = TextToSpeech(use_deepspeed=False, kv_cache=True, half=True)
# half=True で VRAM 使用量を半減”
③ ImportError related to transformers
最新の transformers が入っている環境に tortoise-tts をインストールしようとすると、4.31.0 にダウングレードされてエラーが連鎖することがあります。
# → 専用 venv を作り直す
$ deactivate
$ python3 -m venv ~/tortoise_fresh_env
$ source ~/tortoise_fresh_env/bin/activate
(tortoise_fresh_env) $ pip install torch torchaudio –index-url https://download.pytorch.org/whl/cpu
(tortoise_fresh_env) $ pip install tortoise-tts
Successfully installed tortoise-tts-3.0.0
④ Python 3.12 で AttributeError: module 'distutils' has no attribute 'version'
Ubuntu 24.04(Python 3.12)では distutils が削除されており、古い ML ライブラリでエラーが出ることがあります。
# → setuptools で distutils を補う
(tortoise_env) $ pip install “setuptools<65.0.0”
# または Ubuntu 22.04(Python 3.10)に切り替えを検討
⑤ モデルダウンロードが止まったように見える
初回実行時は ~/.cache/tortoise/models/ にモデルが自動でダウンロードされます(合計約 3GB)。表示が止まったように見えても、watch -n 1 du -sh ~/.cache/tortoise でサイズが増えていれば正常です。
まとめ

Tortoise TTS のインストール手順をまとめます。
- 依存パッケージ:
apt install ffmpeg espeak-ng libsndfile1を先に実行する - venv は専用で:
transformers==4.31.0固定のため、既存環境と分ける - torch は手動で先に:GPU 有無に応じて cpu / cu118 / cu124 を選択する
- Ubuntu のバージョン:22.04(Python 3.10)が互換性トラブルが少なくおすすめ
- CPU 動作は遅い:
ultra_fastでも 1 文あたり数分。本番は GPU 環境が必要 - 日本語は英語より品質が落ちる:日本語 TTS 専用モデルと用途に応じて使い分ける
GPU 環境をすぐに用意できない場合は、クラウド GPU(RunPod や Vultr GPU インスタンス)を使うと、初回セットアップから音声生成まで数十分で試せます。



コメント