🧭 あなたに最適なVPSを30秒で無料診断 診断する →

【2026年版】音声合成AI(VOICEVOXなど)のAPIサーバーをVPSに立てて外部から利用する方法

読む前に30秒だけ。用途・予算を選ぶだけで、あなたに最適なVPSがわかります(無料・登録不要) 無料診断 →

【2026年版】音声合成AI(VOICEVOXなど)のAPIサーバーをVPSに立てて外部から利用する方法


筆者の結論(先に言います)

CPUプランのVPSで十分です。GPU VPSは不要。

VOICEVOX EngineはCPUモードでも普通に動きます。4コア/4GBのVPSで1〜3秒/文くらいのペース。バッチ処理で事前に音声ファイルを作っておく使い方なら、多少遅くても全然問題ありません。

正直に言うと、「音声合成AIにGPU VPS」を強くすすめてくる記事は、GPU VPSのアフィリエイト報酬が高いからそうなっているケースが多いです。VOICEVOXの用途でわざわざ月数万円のGPUプランを選ぶ必要はほぼないので、そこは踏み込んで書いておきます。

月額1,000〜2,000円台のCPUプランで始めて、速度が本当に足りなくなってからプランアップを考えれば十分です。


VOICEVOX・COEIROINK・StyleBert-VITS2などの高品質な日本語音声合成AIは、通常ローカルPCで動かすことが前提です。でも正直、PCを立ち上げっぱなしにしておくのって精神的にずっと気になりませんか。何かあったらリモートデスクトップで入らなきゃいけないし、全然「手放し」にならない。

VPSにAPIサーバーとして常駐させれば、スマホ・スクリプト・CI/CDパイプラインから自由に音声生成をリクエストできます。YouTubeゆっくり実況の自動化、Podcastの自動録音、Discord読み上げBotなど、用途は多岐にわたります。


ローカル実行 vs VPS常駐の違い

自分が最初にVPSに移そうと思ったのは「寝てる間にバッチ処理を終わらせたい」という理由でした。ローカルPCだとスリープ問題が必ず出てくる。

比較軸ローカルPCVPS常駐
可用性PCが起動中のみ24時間365日
複数端末からのアクセス不可可能(HTTPS経由)
バッチ生成手作業cronで自動化
リソース競合他アプリと競合専用リソース

PCを立ち上げっぱなしにする運用は、電気代もかかるし何より「何かあったら確認しに行かなきゃ」という状態が続くのがしんどい。VPSなら少なくともその精神的なコストはゼロになります。


推奨VPSスペック

VOICEVOX(CPUのみ)

プランCPURAM備考
最小構成2コア2GB生成速度は遅め(5〜10秒/文)
推奨構成4コア4GB実用的な速度(1〜3秒/文)

はっきり書いておきます。VOICEVOXにGPUは必要ありません。

CPUのみのVPSで十分動きます。GPU搭載VPSを使えば確かに速くなりますが、音声合成の場合「リアルタイムで会話に応答する」みたいな用途でない限り、1〜3秒/文で何も困らない。事前バッチ生成なら5〜10秒でも全然許容範囲です。

コスト感で言うと:

  • CPUプラン(4コア/4GB): 月1,000〜2,000円台 → 1日あたり33〜66円
  • GPU VPS: 月2万〜5万円台 → 1日あたり670〜1,660円

この差額でGPUの速度が必要かどうか、冷静に考えてみてください。バッチ処理なら答えはほぼ「No」です。

XServer VPS →


ステップ1: DockerでVOICEVOX Engineを起動

# Docker・Docker Composeのインストール
sudo apt update && sudo apt install -y docker.io docker-compose
sudo usermod -aG docker $USER

# VOICEVOX Engine(CPUモード)をコンテナで起動
docker run -d \
  --name voicevox-engine \
  --restart unless-stopped \
  -p 127.0.0.1:50021:50021 \
  voicevox/voicevox_engine:cpu-ubuntu20.04-latest

# 起動確認(バージョン情報が返ってくればOK)
curl http://localhost:50021/version

--restart unless-stopped を付けておくと、VPSを再起動したときに自動で立ち上がります。これを忘れると「あれ、急に動かなくなった」ってなるので最初から入れておくのが吉。

外部に直接50021番ポートを開けず、localhostにバインドしてnginxでリバースプロキシするのが安全です。ポートをそのまま外部公開するのは絶対にやめてください。誰でもAPIを叩けてしまいます。


ステップ2: REST APIで音声生成

VOICEVOXのAPIは2段階です。まずテキストをクエリに変換し、次に音声ファイルを生成します。

# ステップA: テキスト → 音声クエリ(speaker=1はずんだもん)
curl -s -X POST \
  "http://localhost:50021/audio_query?text=こんにちは、ずんだもんなのだ&speaker=1" \
  -H "Content-Type: application/json" \
  > query.json

# ステップB: クエリ → WAVファイル生成
curl -s -X POST \
  "http://localhost:50021/synthesis?speaker=1" \
  -H "Content-Type: application/json" \
  -d @query.json \
  --output output.wav

2段階なのは最初ちょっと面倒に感じますが、クエリ段階でピッチやスピードを細かく調整できるという設計上の理由があります。慣れると「この部分だけゆっくり読ませる」みたいな調整もできて便利。

# Pythonからバッチ生成する例
import requests, json, time

VOICEVOX_URL = "http://localhost:50021"
SPEAKER_ID = 1  # 1=ずんだもん、2=四国めたん など

def synthesize(text: str, output_path: str):
    query = requests.post(
        f"{VOICEVOX_URL}/audio_query",
        params={"text": text, "speaker": SPEAKER_ID}
    ).json()
    wav = requests.post(
        f"{VOICEVOX_URL}/synthesis",
        params={"speaker": SPEAKER_ID},
        json=query
    )
    with open(output_path, "wb") as f:
        f.write(wav.content)

lines = ["本日のニュースをお伝えします。", "最初のトピックは…"]
for i, line in enumerate(lines):
    synthesize(line, f"audio_{i:03d}.wav")
    time.sleep(0.5)  # APIへの負荷を分散

time.sleep(0.5) の部分、CPUプランで大量に叩くと負荷が上がりすぎることがあるのでインターバルは入れておくのをおすすめします。自分は最初これを省いて2コアプランで詰まりました。


ステップ3: nginxでHTTPS公開

sudo apt install -y nginx certbot python3-certbot-nginx
sudo certbot --nginx -d tts.your-domain.example.com
# /etc/nginx/sites-available/voicevox
server {
    listen 443 ssl;
    server_name tts.your-domain.example.com;

    # 簡易認証(Basic Auth)で保護
    auth_basic "VOICEVOX API";
    auth_basic_user_file /etc/nginx/.htpasswd;

    location / {
        proxy_pass http://127.0.0.1:50021;
        proxy_read_timeout 120s;
    }
}
# Basic Auth用パスワードファイル作成
sudo apt install -y apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd youruser

Basic Authは完璧な認証ではないですが、「APIが外部から丸見えになっている状態」を避けるための最低限の対策としては有効です。個人用途ならこれで十分。複数人で使うなら認証まわりをもう少しちゃんとやることを考えたほうがいい。

さくらのVPS →


ステップ4: cronで定期バッチ生成

# crontabに登録(毎朝6:30に当日ニュース原稿を読み上げ)
30 6 * * * /usr/bin/python3 /opt/voicevox-batch/daily_news.py >> /var/log/voicevox-batch.log 2>&1

これが「VPSに立てた意味」が一番出る部分です。自分のPCが起動してなくても、毎朝6:30にサーバー側で勝手に処理が走る。完全に手放しになります。ローカルPC運用では絶対に実現できないやつ。


活用ユースケース

自分が実際に試したか、試した人を見て「それはやってみたい」と思ったもの一覧です。

ユースケース概要
YouTube実況ゲーム・解説動画の台本をバッチ変換しMP3で保存
Podcast自動録音RSSフィードの本文をVOICEVOXで読み上げてPodcast化
Discord Botメッセージを音声で読み上げるVCボット
通知音声アラート・エラー通知をSlack経由で音声ファイルとして受け取る

Discord Botは構築がちょっと手間かかりますが、一度動かすと「これ便利すぎる」ってなります。興味があるならとりあえずやってみればいい。これが最終構成じゃないんだから、動かしてみてから調整すればいい。


A. VOICEVOXは各キャラクターの利用規約に従う必要があります。多くのキャラクターは商用利用可能ですが、クレジット表記が必要なケースや事前申請が必要なケースがあります。利用前に必ず公式の「キャラクター利用ガイドライン」を確認してください。
A. はい、GPUモード用のDockerイメージも公式で提供されています。GPU搭載VPSや自前サーバーであれば `voicevox/voicevox_engine:nvidia-ubuntu20.04-latest` タグを使うことで大幅な高速化が可能です。
A. COEIROINK・StyleBert-VITS2・SBV2もDockerまたはPythonで同様にAPIサーバー化できます。StyleBert-VITS2は高品質な音声が特徴ですが、RAMを多く消費するため8GBプラン以上を推奨します。

まとめ:あなたの使い方で選ぶ

結局のところ、自分がどう使うかで必要なスペックも選ぶVPSも変わります。以下に整理しました。

あなたの使い方推奨プラン月額目安一言
バッチ処理メイン(YouTube・Podcast等)CPUプラン 4コア/4GB1,000〜2,000円台これで十分。GPU不要
リアルタイム応答が必要(Botの即時返答等)CPUプラン 8コア/8GB2,000〜4,000円台まずCPU高スペックで試す
StyleBert-VITS2など高品質モデルを使いたい8GB RAM以上2,000円台〜RAMが足りないと落ちるので注意
とりあえず試したいだけ最小構成 2コア/2GB1,000円前後速度は遅いが動作確認には十分
GPU VPSを検討しているまずCPUプランで試すリアルタイム要件が明確になってから考える

自分の結論としては、、ほとんどの個人用途はCPUプランで完結します。GPU VPSが本当に必要になるのは「複数ユーザーが同時にリクエストしてきて詰まる」みたいな状況になってから。その段階になったらそのときに考えれば十分です。

最初から月数万のGPUプランを選ぶ必要はない。月1,000〜2,000円台のCPUプランで始めて、VOICEVOXのAPIサーバーが自分のワークフローに本当に合うかどうかを確かめてください。

これが最終回答じゃないんだから、まずは動かしてみてください。

XServer VPS →

さくらのVPS →

あわせて読みたい