0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Paperspaceで最新ComfyUIを:先駆者達の成果に頼らず、スクラッチ環境で最高効率を引き出す

0
Posted at

はじめに:ロードマップの確認

本記事は、筆者が取り組んでいる「画像生成AI開発ロードマップ」の 第1段階(Phase 1) にあたる実践編である。
全体の構想や技術選定の背景については、前回のロードマップ記事を参照してほしい。

背景:現場の「あるある」と課題への共感

image.png

最新の画像生成AIを自宅で動かそうとすると、まず 「ハードウェアの壁」 に突き当たる。

  • RTX 4090クラスのGPU搭載PCは、30万円を超える投資が必要
  • 騒音や電気代も無視できない

この高すぎるハードルを前に、月額わずか8ドルの定額制で強力なGPUを使える Paperspace Gradient のようなクラウドサービスは、まさに救世主と言える。

しかし、いざクラウドを使い始めると次に直面するのが 「Webエディタの使いにくさ」 である。

  • ブラウザ上のエディタは反応が鈍い
  • 使い慣れたショートカットや拡張機能が使えない
  • Paperspace Gradient環境では標準的なSSH接続が制限され、一般的なリモート開発がそのまま通用しない

結局、不便なWebエディタを我慢して使うか、中身のよく分からない先駆者達の成果(コンテナイメージ)をデプロイして、後からの拡張性に苦しむ……。

本記事では、そんな妥協を排し、使い慣れたローカルエディタからリモートGPUを自在に操るための、スクラッチ構築手順を提示する。

今回の目標:ローカル操作とリモート計算のハイブリッド環境

image.png

今回の目標は、メーカー公式の土台から自分自身で環境を組み立て、

  • 操作:手元のローカルエディタ(VS Code / Cursor)
  • 計算:クラウドGPU

という切り分けを Remote Kernel 経由で実現するスクラッチ構築である。

本構築の最終目標(DoD)

  • SSHが使えない制約下でも、ローカルのVS Code / Cursorからリモート環境を完全に制御できること
  • 仮想環境(venv)により、システム側と分離された将来的に「壊れにくい」独立環境を維持すること
  • 高い再現性を確保し、将来の独自ノード追加にも耐えうる拡張性の土台を築くこと

完成すると、手元のエディタで快適に操作しつつ、発行されたPublic URLを経由して外出先からスマホでもComfyUIによる画像生成が可能な、理想的な開発拠点が誕生する。

なぜ「先駆者達の成果」ではなく「スクラッチ構築」なのか

環境構築のアプローチについて、以下の3手法を比較検証した事実を示す。

アプローチ 構築速度 拡張性(独自ノードの追加) 生成速度・効率 データの保存性
標準テンプレート(旧式) 最速 低(エラーで止まりやすい) 劣悪(最新技術に未対応)
先駆者達の成果 早い 致命的(ビルドツール不足) 設定者に依存 悪(保存先が競合する)
スクラッチ構築(本手法) 短時間 最高(開発ツールを全内包) 最高(最新の推論エンジン) 完全互換

標準テンプレートの限界

構築は一瞬だが、中身が古いため 最新モデル(Flux.1等)が動かない、あるいは動いても 生成速度が極端に遅い という欠点がある。

先駆者達の成果の落とし穴

  • Paperspace特有の保存領域(/notebooks)と設定がぶつかり、データが消えるリスクがある
  • 軽量化のために開発ツールが削られていることが多く、後から高度な拡張(Insightface等)を入れる際にビルドエラーで詰むケースが多い

構築ステップ:最小構成セットアップスクリプト

Notebook作成時の設定

PaperspaceのNotebook作成時、以下を設定してマシンを起動する。

  • Runtime:Start from Scratch
  • Containerpytorch/pytorch:2.6.0-cuda12.4-cudnn9-devel

選定理由と注意点は以下の通り。

  • ホストOS側のドライバ(v12040)に適合する CUDA 12.4 環境を正確に選択する
  • CUDA 13などのより新しいバージョンを指定しても、ハードウェアドライバとの不一致により動作不可となるため注意
  • 拡張機能のビルドに必要なコンパイラ群を内包した devel 版を必ず使用する

起動後:Jupyterセルに貼り付けて実行

ここで Pythonの仮想環境(venv)を挟むのは、クラウド側のシステム環境とComfyUIの依存関係を混ぜないことで、将来的なアップデートによる競合エラーを未然に防ぐためである。

# 1. ワークスペースの準備
%cd /notebooks
!git clone https://github.com/comfyanonymous/ComfyUI.git
%cd ComfyUI

# 2. 仮想環境(venv)の作成
# システム全体を汚さず、プロジェクト専用の依存関係を維持する
!python3 -m venv venv

# 3. 最新の推論エンジンを導入(A4000に最適化)
!./venv/bin/pip install --upgrade pip
!./venv/bin/pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
!./venv/bin/pip install -r requirements.txt

# 4. 管理機能(Manager)の導入
%cd custom_nodes
!git clone https://github.com/ltdrdata/ComfyUI-Manager.git
%cd ..

# 5. 起動とPublic URLの発行
import os
fqdn = os.environ.get("PAPERSPACE_FQDN", "localhost")
print(f"\nComfyUI Public URL: https://tensorboard-{fqdn}\n")

!./venv/bin/python main.py --listen 0.0.0.0 --port 6006

運用時の工夫と対策

理論通りに進めても、クラウド環境特有の挙動には対策が必要だ。

対策1:プラットフォーム制限(SSH非対応)への対応

  • 課題:Paperspace Gradient環境では標準的なSSH接続が制限され、一般的なリモート開発手法が選択できない
  • 対応:代替策として VS Codeの「Remote Kernel」 機能を活用する。Jupyterプロトコルを経由することで、手元のPCからクラウドの計算資源を叩く「分離運用」を実現する

対策2:外部アクセス経路の確保

  • 課題:そのままでは外部のブラウザ(スマホ等)からコンテナ内にアクセスできない
  • 対応:上記スクリプトの通り ポート6006 で起動する。システム側が標準で公開している通信経路(TensorBoard用プロキシ)を借りることで、特別なツールなしに外出先からのアクセスを実現する

まとめと次回のアクション

今回の記事で達成できたこと

  • 開発拠点の明確化: Paperspace Gradient上に、ComfyUI専用の仮想環境(venv)付きスクラッチ環境を構築する具体的な手順を確立した
  • 最新スタックへの対応: ホストドライバに整合するCUDA 12.4環境と、最新のTorch/cu124版を組み合わせることで、Flux系を含む最新モデル群を実用速度で動かせる土台を用意した
  • 運用パターンの定義: SSH制限下でも、Remote KernelとTensorBoard経由のPublic URLを使って「ローカル編集 × リモート実行 × 外出先アクセス」ができる運用パターンを整理した
  • ComfyUIトレーニング基盤の確立: 以上により、Phase 2 以降でGUIベースのComfyUIトレーニングを行うための「安定して再現可能な練習用拠点」が整った

image.png

次回までに実施するアクション(Phase 2 への橋渡し)

次回のPhase 2「GUI習得とAPI自動化」では、ComfyUIのノード操作やワークフローを使った 実践的なトレーニング に入る。そのために、読者が今回の記事を読み終えた段階で、少なくとも次の状態まで到達していることを目標とする。

  • 記事内のスクリプトを自身のPaperspace環境で実行し、ComfyUIが安定して起動する状態にしておく
  • 出力された「Public URL」をクリックし、スマホやPCのブラウザからComfyUIにアクセスできることを確認しておく
  • 軽量モデル(SD v1.5等)でテスト生成を行い、「プロンプトを変えれば意図に応じて画像が変わる」ことを一度体験しておく

ここまで完了していれば、次回はGUI上でのノード接続・ワークフロー保存・API Format JSONの書き出しといった ComfyUI GUIトレーニング本編 に、迷いなく入っていける。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?