SSD Nodes Learn Hosting plans →
ガイド Matt Connor著者 Matt Connor ・更新日 2026-08-07

Stable Diffusion自前運用の必要スペックと費用

Stable Diffusionを自前運用するための現実的な構成を解説します。CPU VPSでのSD 1.5とSDXLの生成時間、6.94 GBのモデル、ComfyUIの導入コマンド、必要なディスク容量を確認できます。

セルフホスト型AI画像生成に本当に必要なもの

セルフホスト型のAI画像生成環境に必要なのは、1つのWebアプリケーションと1つのモデルファイルです。アプリケーションはComfyUIで、Linux環境であればどのサーバーでも動作します。ハードウェア要件を決めるのはモデルです。SDXLクラスのチェックポイントは単一の6.94 GBファイルで、GPUメモリ上に置いて使用する必要があります。この点が全体の予算を決めるため、何かをレンタルする前に、以下のハードウェア構成を確認してください。

率直にまとめると、CPUのみのVPSでもソフトウェアをインストールして提供できます。古いStable Diffusion 1.5モデルを使用すれば、512x512の画像を1枚あたり1〜2分で生成できます。同じサーバーでSDXLを1024x1024で実行すると、1枚あたり10〜20分かかります。これは構成の故障ではありません。単純な計算上の結果です。このガイドでは、その理由を説明します。

モデルサイズがマシンを決める理由

画像生成は、ノイズ除去ループを実行します。30 ステップのレンダリングでは、画像全体に対してモデルを 30 回適用し、各ステップですべての重みを読み込みます。SDXL の半精度モデルの重みは約 6.9 GB あるため、画像が表示されるまでに、メモリ上でおよそ 200 GB のデータを移動させます。

24 GB のビデオメモリ(VRAM。グラフィックスチップの隣に実装されたメモリ)を搭載する GPU は、毎秒数百 GB の速度で読み出せ、6.9 GB すべてを同時に保持できます。CPU VPS はシステム RAM を毎秒数十 GB の速度で読み出し、畳み込み演算用の行列演算ハードウェアもありません。そのため、同じループの実行速度は 1〜2 桁遅くなります。これはテキストモデルにも当てはまるメモリ帯域幅の問題です。GPU 付き VPS に費用をかける価値がある場合も併せて読むとよいでしょう。

画像生成には、テキスト生成と異なる重要な点があります。チャットモデルはトークンをストリーミングするため、マシンが遅くても、読んでいる間に単語が表示されるので操作できます。画像は最後のステップが完了するまで表示されません。遅い場合は、プログレスバーを見続けることになります。

ハードウェアの段階と実測値

以下は、2026年7月時点で、1024x1024、30 steps、Euler samplerを使用してSDXL画像を1枚生成した場合の代表的な数値です。桁の目安として扱ってください。sampler、step数、解像度によって変わります。

ChartOne SDXL image, 1024x1024, 30 steps (typical, July 2026)
The data behind this chart
[
  {
    "label": "8 vCPU VPS, no GPU",
    "seconds_per_image": 780
  },
  {
    "label": "8GB VRAM GPU",
    "seconds_per_image": 32
  },
  {
    "label": "12GB VRAM GPU",
    "seconds_per_image": 18
  },
  {
    "label": "24GB VRAM GPU",
    "seconds_per_image": 9
  }
]

CPUの行は 780 秒で、約13分です。24 GBのカードは 9 秒です。購入によって短縮できる時間の差は、この範囲です。

この段階表は、次のように読みます。VRAMが8 GB未満でもSDXLは動作します。ComfyUIが自動的にレイヤーをシステムRAMへオフロードするためで、VRAMが1 GBしかないカードでも動作します。ただし、オフロードは各stepで時間がかかるため、6 GBのカードでは画像1枚あたり30秒よりも1分に近くなります。8 GBあればベースモデルが収まり、余裕を持って生成できます。12 GBあれば、オフロードせずにチェックポイントとともにControlNetを1つまたは2つ保持できます。24 GBあれば、1つのワークフローでSDXL、refiner、アップスケーリングを実行できます。また、生成よりもはるかに多くのメモリを必要とするLoRAアダプターのトレーニングも開始できます。

CPU VPSでできることとできないこと

CPU VPSは、一般に想定されているより多くの処理を実行できます。一方、宣伝で示される性能ほどではありません。どこまで可能かを具体的に把握してください。

CPU VPSには、ComfyUIをインストールし、Webインターフェースを提供し、モデルライブラリを保持し、キューを実行し、GPUなしで画像を生成する機能があります。Stable Diffusion 1.5を512x512、20 stepsで実行する場合、16 GBのRAMを搭載した最新のvCPU 8基で、1枚あたりおよそ60から150秒かかります。夜間に実行するバッチ処理や、キューの背後に置く低頻度の画像エンドポイントであれば、十分に実用的です。

CPU VPSでは、対話的な作業はできません。プロンプトの反復では1時間に20回レンダリングすることになりますが、1回13分かかる場合、実行できるのは4回です。また、トレーニングもできません。CPUでのLoRAファインチューニングは数時間ではなく数日単位になるため、利用できないものとして扱ってください。

CPUのみで運用する場合、メモリの考え方はGPUの場合と異なります。重みはシステムRAMに読み込まれるため、モデルのサイズに加えて作業領域が必要です。目安はSDXLで約16 GB、SD 1.5で約8 GBのRAMです。4 GBのマシンではComfyUIは起動しますが、最初のレンダリング途中でout-of-memory killerにより終了します。その場合、プロセスがKilledとともにdmesgに表示されずに消え、Python tracebackも出力されません。

GPU マシンに ComfyUI をインストールする

以下は上流プロジェクトが提供するコマンドです。NVIDIA ドライバーがすでに導入された、クリーンな Ubuntu 24.04 環境から開始してください。最初にドライバーを確認します。この確認を省くと、その後のすべての失敗原因が同じように見えるためです。

nvidia-smi

カードと CUDA のバージョンを含む表が表示されます。command not found または NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver と表示される場合は、ドライバーがないか、アップグレード後にカーネルモジュールが読み込まれていません。続行する前に修正してください。修正しないと ComfyUI は警告なしに CPU にフォールバックし、原因をソフトウェアのせいにすることになります。

sudo apt update
sudo apt install -y git python3-venv python3-pip wget
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
python3 -m venv venv
. venv/bin/activate
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu130
pip install -r requirements.txt

仮想環境は任意の助言ではありません。PyTorch は大量の依存関係を導入します。ほかのソフトウェアも稼働するマシンにシステム全体へインストールすると、別のソフトウェアを壊す原因になります。先に進む前に、PyTorch からカードを認識できることを確認してください。

python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"

True とカード名が表示されれば、スタックは正常に動作しています。False と表示される場合は、インストールした wheel とドライバーが一致していません。通常は、CPU 専用の torch wheel がすでにキャッシュされています。上記の index URL を指定して再インストールしてください。

モデルを取得し、ディスク容量を計画する

ComfyUI には重みが含まれていません。チェックポイントは models/checkpoints、VAE ファイルは models/vae、LoRA アダプターは models/loras に配置します。

cd ~/ComfyUI/models/checkpoints
wget https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors

常に .safetensors.ckpt より優先してください。.ckpt ファイルは pickle 化された Python オブジェクトであり、読み込むと、作成者が埋め込んだコードが実行されます。safetensors 形式にはテンソルだけが含まれるため、悪意のあるファイルでもコードを実行できません。

ストレージ容量は見落とされがちなコストです。SDXL のベースチェックポイントは 1 つで 6.94 GB あります。リファイナーにはさらに 6 GB 必要です。ControlNet モデルは 1 つで 1.4〜2.5 GB、アップスケーラーは 60〜350 MB、LoRA は 20〜400 MB 程度です。この用途を継続する人は、1 週間以内に 2 つ目、3 つ目のベースモデルもダウンロードします。実用的な構成にはディスク容量を 100 GB 確保し、出力ディレクトリも監視してください。1024x1024 の PNG ファイルは 1 つあたり 1〜2 MB あり、放置したバッチ処理によって小容量のディスクが気付かないうちに埋まります。models/output/ は拡張可能なボリュームに配置し、ワークフローの JSON ファイルは、オブジェクトストレージへの暗号化された増分バックアップ などを使ってバックアップしてください。重みは再ダウンロードできます。調整したワークフローは再現できません。

実行して安全にアクセスする

cd ~/ComfyUI
. venv/bin/activate
python main.py --listen 127.0.0.1 --port 8188

ComfyUI は port 8188 で接続を待ち受けます。CPU のみの環境では --cpu を追加してください。これにより、CUDA デバイスがない場合でも失敗せず、CPU 用の処理経路が強制的に使用されます。

0.0.0.0 ではなく 127.0.0.1 にバインドしてください。ComfyUI にはログイン画面もユーザーアカウントもありません。この port に到達できるユーザーは、ジョブをキューに追加し、生成済みのすべての画像を読み取り、custom nodes をインストールできます。これはサーバー上で任意のコードが実行されることを意味します。代わりに、ノート PC から SSH トンネル経由でアクセスしてください。

ssh -N -L 8188:127.0.0.1:8188 you@your-server

その後、ローカルで http://127.0.0.1:8188 を開きます。実際に複数ユーザーでアクセスする必要がある場合は、認証機能を備えた reverse proxy を前段に配置し、アプリは localhost にバインドしたままにしてください。同じ考え方は、認証のない自己ホスト型サービス全般に当てはまります。これは VPS での Docker Compose デプロイでも標準的な構成です。

systemd で継続的に実行する

SSH セッションを閉じると停止するレンダリングキューは、サービスとはいえません。/etc/systemd/system/comfyui.service を記述します。

[Unit]
Description=ComfyUI
After=network-online.target

[Service]
User=comfy
WorkingDirectory=/home/comfy/ComfyUI
ExecStart=/home/comfy/ComfyUI/venv/bin/python main.py --listen 127.0.0.1 --port 8188
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now comfyui
systemctl status comfyui

active (running)To see the GUI go to: http://127.0.0.1:8188 というログ行が表示されれば、起動しています。ExecStart は仮想環境内のインタープリターを直接指定している点に注意してください。systemd はシェルのプロファイルを読み込まないため、activate は実行されません。

予算別の現実的な推奨

画像生成を試したいが、速度より費用を重視する場合は、RAM 16 GB の CPU VPS を選び、SD 1.5 を 512x512 で実行して、1 枚あたり 1〜2 分かかることを受け入れてください。これが現実的な入門構成で、GPU 付きの構成に比べて費用を大幅に抑えられます。構成を決める間は、モデルライブラリとワークフローをホストする場所としても適しています。

毎日プロンプトを反復調整する場合は、GPU クラウドから VRAM 12 GB 以上の GPU を時間単位で借り、使い終わったら停止してください。画像生成は処理量の変動が大きいため、アイドル状態の GPU に月額料金を払い続けることが、この用途で過剰出費になる最も一般的な原因です。チェックポイントは安価なブロックストレージに置き、マウントしてください。

他の人にサービスを提供する場合や、LoRA アダプターを学習する場合は、VRAM 24 GB と常時稼働させるマシンが必要です。この段階では、同じマシンでローカル言語モデルも実行すると、通常はコストに見合います。これは Ollama で LLM をセルフホストする で説明している構成です。

どの構成を選ぶ場合でも、公開されている数値を信じる前に、自分のマシンで測定してください。同じプロンプトを 5 回キューに入れ、ComfyUI がコンソールに出力する反復あたりの秒数を確認します。その数値が、実際の構成選びの基準になります。

FAQ

GPU なしで Stable Diffusion を実行できますか?

はい。ComfyUI は python main.py --cpu で実行でき、グラフィックスカードがなくても実際の画像を生成できます。8 個の最新 vCPU では、Stable Diffusion 1.5 を 512x512 で実行した場合、1 枚あたりおよそ 60 から 150 秒かかります。SDXL を 1024x1024 で実行した場合は、10 から 20 分かかります。夜間のバッチ処理や少量のエンドポイントには利用できます。プロンプトを反復して調整する用途には向きません。学習は現実的ではありません。

SDXL にはどの程度の VRAM が必要ですか?

8 GB あれば、1024x1024 の SDXL を無理なく実行できます。それ未満の場合、ComfyUI はレイヤーをシステム RAM に自動的にオフロードします。VRAM が約 1 GB まで減っても動作しますが、オフロードするステップごとに処理時間が増えます。12 GB あれば、チェックポイントと ControlNet を同時に保持できます。24 GB あれば、1 つのワークフローでベースモデル、リファイナー、アップスケーリングを処理できます。また、LoRA アダプターの学習に必要な実用上の最低容量です。

モデルにはどの程度のディスク容量が必要ですか?

SDXL のベースチェックポイントだけで 6.94 GB あり、リファイナーに約 6 GB 追加で必要です。ControlNet モデルは 1 個あたり 1.4 から 2.5 GB、LoRA アダプターは 20 から 400 MB、アップスケーラーは最大 350 MB です。ベースモデルを数個含む実用的なインストールには 100 GB を確保してください。出力ディレクトリは別に監視します。1024x1024 の PNG ファイルは 1 個あたり 1 から 2 MB になるためです。

ComfyUI をパブリックインターネットに公開しても安全ですか?

いいえ。ComfyUI には認証機能がなく、カスタムノードシステムはインターフェースから Python コードをインストールして実行します。そのため、ポートを開放するとサーバー上でリモートコード実行が可能になります。127.0.0.1 にバインドし、ssh -N -L 8188:127.0.0.1:8188 you@your-server を使用して SSH トンネル経由でアクセスしてください。複数の利用者がアクセスする場合は、認証機能を持つリバースプロキシを前段に配置します。

エラーメッセージなしでレンダリングが強制終了されたのはなぜですか?

dmesgKilled が表示されてプロセスが消え、Python のトレースバックもない場合、原因は ComfyUI のバグではなく Linux の out-of-memory killer です。CPU のみの環境では重みがシステム RAM に格納されるため、SDXL には約 16 GB、SD 1.5 には約 8 GB と、追加の作業領域が必要です。RAM または swap を追加するか、より小さいモデルと低い解像度を使用してください。