IP-Adapter on Ubuntu — 参照画像のスタイルを別の画像に転写する方法

AI/MLツール

この記事のポイント

  • 参照画像のスタイルを別の画像に転写できる IP-Adapter を Ubuntu 24.04 上の ComfyUI で動かす手順をゼロから解説
  • ComfyUI のカスタムノード「ComfyUI-IPAdapter-plus」をインストールするだけで IP-Adapter が使えるようになる
  • 依存パッケージ(python3 3.12.3 / pip 24.0 / git 2.43.0)は Ubuntu 24.04 公式 Docker イメージで実測確認済み
  • モデルは SD 1.5 用・SDXL 用・FaceID 用と複数あり、用途に合わせて選ぶのが重要
  • GPU なしの CPU モードでも ComfyUI は起動できるが、実用的な速度には GPU が必要

IP-Adapter(アイピーアダプター)とは、Tencent AI Lab が 2023 年に発表した画像スタイル転写の手法です。参照画像を1枚渡すだけで、そのスタイルや特徴を Stable Diffusion の生成画像に反映できます。「この写真の雰囲気で別のキャラクターを描いてほしい」「この絵柄で◯◯なシーンを生成したい」といった使い方ができる、プロンプトだけでは指示しにくいスタイルの転写が得意なツールです。

本記事では Ubuntu 24.04 LTS に ComfyUI を入れ、IP-Adapter カスタムノード(cubiq/ComfyUI_IPAdapter_plus)を使って画像スタイル転写を実行するまでの手順を解説します。依存パッケージのバージョン確認は ubuntu:24.04 Docker 公式イメージで 2026-06-21 に実測しています。

注意

実用的な速度で画像を生成するには NVIDIA GPU(CUDA 対応)が必要です。CPU モードでも起動しますが、1 枚あたり数十分かかることがあります。本記事のパッケージ確認は ubuntu:24.04 Docker イメージで実測しています。

動作確認済み環境

パッケージのバージョンは docker run --rm ubuntu:24.04 で実際に確認しました。

Ubuntu 24.04 IP-Adapter 依存パッケージ バージョン(実測)
Ubuntu 24.04 IP-Adapter 依存パッケージ バージョン(実測)

上表のパッケージがインストールできることを ubuntu:24.04 公式 Docker イメージで確認しています。Python は 3.12.3、pip は 24.0、git は 2.43.0 がそれぞれ apt で取得できます。libgl1 は OpenCV の共有ライブラリとして必要になるため合わせてインストールします。

IP-Adapter のセットアップ全体フロー

IP-Adapter セットアップ全体フロー(概念図)
IP-Adapter セットアップ全体フロー(概念図)

大まかな流れは「依存パッケージ → ComfyUI → IPAdapter-plus ノード → モデルダウンロード → ワークフロー実行」の 5 ステップです。ComfyUI のセットアップが終わっていれば、ステップ 3 以降だけで IP-Adapter を追加できます。

インストール手順

手順1:依存パッケージをインストールする

まず apt でシステムを更新し、ComfyUI の動作に必要なパッケージを入れます。




ubuntu@vps:~
$ sudo apt update && sudo apt upgrade -y
$ sudo apt install -y python3 python3-pip python3-venv git curl libgl1 wget
Reading package lists… Done
Building dependency tree… Done
Setting up python3 (3.12.3-0ubuntu2.1) …
Setting up python3-pip (24.0+dfsg-1ubuntu1.3) …
Setting up python3-venv (3.12.3-0ubuntu2.1) …
Setting up git (1:2.43.0-1ubuntu7.3) …
Setting up libgl1 (1.7.0-1build1) …
$ python3 –version && python3 -m pip –version && git –version
Python 3.12.3
pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12)
git version 2.43.0
apt install 依存パッケージ インストールログ(実測)
apt install 依存パッケージ インストールログ(実測)

手順2:仮想環境を作成する

ComfyUI の Python 依存はホスト環境に直接入れず、venv で隔離しておくとトラブルが少ないです。ホームディレクトリに comfyui フォルダを作り、その中で作業します。




ubuntu@vps:~
$ mkdir ~/comfyui && cd ~/comfyui
$ python3 -m venv venv
$ source venv/bin/activate
(venv) ubuntu@vps:~/comfyui$

手順3:ComfyUI をクローンする




ubuntu@vps:~/comfyui
(venv) $ git clone https://github.com/comfyanonymous/ComfyUI .
Cloning into ‘.’…
remote: Enumerating objects: 12842, done.
Receiving objects: 100% (12842/12842), 36.73 MiB | done.

手順4:PyTorch をインストールする

GPU(CUDA 12.1)がある場合と CPU のみの場合でコマンドが異なります。CUDA バージョンは nvidia-smi で確認してください。




ubuntu@vps:~/comfyui(GPU環境)
# GPU(CUDA 12.1)の場合
(venv) $ pip install torch torchvision torchaudio –index-url https://download.pytorch.org/whl/cu121
# CPU のみの場合
(venv) $ pip install torch torchvision torchaudio

手順5:ComfyUI の依存をインストールして起動確認する




ubuntu@vps:~/comfyui
(venv) $ pip install -r requirements.txt
Installing collected packages: diffusers, transformers, accelerate …
# GPU あり
(venv) $ python main.py
# CPU のみ(動作確認用)
(venv) $ python main.py –cpu
Starting server
To see the GUI go to: http://0.0.0.0:8188

ブラウザで http://localhost:8188(リモートVPSなら http://サーバーIP:8188)を開くと、ComfyUI のノードエディタが表示されます。

IP-Adapter カスタムノードのインストール

IP-Adapter を ComfyUI で使うには「ComfyUI-IPAdapter-plus」カスタムノードを追加します。GitHub のスター数は 6,000 超(2026-06-21 時点)で、ComfyUI の IP-Adapter 実装として最も広く使われています。

ComfyUI-IPAdapter-plus GitHub リポジトリ(Playwright実撮影)
ComfyUI-IPAdapter-plus GitHub リポジトリ(Playwright実撮影)



ubuntu@vps:~/comfyui
(venv) $ cd custom_nodes
(venv) $ git clone https://github.com/cubiq/ComfyUI_IPAdapter_plus
Cloning into ‘ComfyUI_IPAdapter_plus’…
remote: Enumerating objects: 523, done.
(venv) $ cd ComfyUI_IPAdapter_plus && pip install -r requirements.txt
Successfully installed insightface onnxruntime …
(venv) $ cd ~/comfyui

インストール後に ComfyUI を再起動すると、ノードリストに「IPAdapter」系のノードが追加されます。カスタムノードのインストールには insightfaceonnxruntime が必要で、FaceID 機能に使われます。

IP-Adapter モデルのダウンロード

IP-Adapter のモデルは HuggingFace の h94/IP-Adapter リポジトリで公開されています。モデルは複数あり、ベースモデルと用途で選びます。

HuggingFace h94/IP-Adapter モデルページ(Playwright実撮影)
HuggingFace h94/IP-Adapter モデルページ(Playwright実撮影)
IP-Adapter モデル一覧(用途別)
IP-Adapter モデル一覧(用途別)

最初に試すなら SD 1.5 ベースの ip-adapter_sd15.safetensors がシンプルで扱いやすいです。SDXL を使っているなら ip-adapter_sdxl.safetensors を選んでください。

モデルファイルは models/ipadapter/ ディレクトリに置きます(ディレクトリがなければ作成)。




ubuntu@vps:~/comfyui
# models/ipadapter/ ディレクトリを作成
$ mkdir -p models/ipadapter
# SD 1.5 用 汎用モデル(約 285 MB)をダウンロード
$ wget -P models/ipadapter/ \
https://huggingface.co/h94/IP-Adapter/resolve/main/models/ip-adapter_sd15.safetensors
ip-adapter_sd15.safetensors … 285M saved.
# CLIP Vision モデルも必要(ComfyUI の models/clip_vision/ に配置)
$ mkdir -p models/clip_vision
$ wget -P models/clip_vision/ \
https://huggingface.co/h94/IP-Adapter/resolve/main/models/image_encoder/model.safetensors

CLIP Vision モデルを忘れずに

IP-Adapter は参照画像を CLIP Vision モデルでエンコードして使います。models/clip_vision/ に CLIP Vision のモデルが入っていないとノードがエラーになります。上記の image_encoder/model.safetensors(約 2.5 GB)を必ず配置してください。

ComfyUI での IP-Adapter ワークフロー

ComfyUI を起動したら、ノードエディタで IP-Adapter ワークフローを組みます。基本的な構成は次の通りです。

基本ワークフローの組み方

右クリック →「Add Node」→「IPAdapter」カテゴリから IPAdapter ノードを追加します。接続するノードは次の 3 つです。




ComfyUI ワークフロー構成
# 接続する主要ノード
Load Checkpoint → ベースモデル(SD 1.5 や SDXL)
Load IP-Adapter Model → ip-adapter_sd15.safetensors を選択
Load CLIP Vision → CLIP Vision モデルを選択
Load Image → 参照画像(スタイルを転写したい元画像)
IPAdapter → 上記を接続。weight で影響の強さを調整
KSampler → IPAdapter の model 出力を受け取る

weight パラメータの目安

IP-Adapter ノードの weight がスタイル転写の強さを決めます。正直、ここで少し試行錯誤が必要でした。

weight 値 効果 向いているケース
0.3〜0.5 プロンプトが主導、参照画像がサブ 雰囲気だけ転写したい、テキスト指示を活かしたい
0.6〜0.8 バランス型(推奨) スタイルと内容の両立
0.9〜1.0 参照画像に強く引っ張られる 参照画像に忠実に転写したい

よくあるエラーと解決策

① IPAdapter ノードが「Load IP-Adapter Model」で認識されない

原因と対処

models/ipadapter/ ディレクトリにモデルファイルが見つからない状態です。ファイルパスと名前が正しいか確認してください。ComfyUI 再起動後もリストに出ない場合は、ComfyUI の Manager でカスタムノードの再インストールを試してください。

② ModuleNotFoundError: No module named 'insightface'

ComfyUI-IPAdapter-plus の requirements.txt を適用し忘れているケースです。




ubuntu@vps:~/comfyui
(venv) $ cd custom_nodes/ComfyUI_IPAdapter_plus
(venv) $ pip install -r requirements.txt
Successfully installed insightface-0.7.3 onnxruntime-1.18.0 …
(venv) $ cd ~/comfyui && python main.py

③ CUDA out of memory

VRAM が不足しています。IP-Adapter は通常モデル + IP-Adapter モデル + CLIP Vision を同時にロードするため、8 GB 以上の VRAM が推奨です。SD 1.5 ベースなら 6 GB でも動きますが、SDXL は 10 GB 以上推奨です。




ubuntu@vps:~/comfyui
# VRAM 節約モードで起動
(venv) $ python main.py –lowvram
# さらに節約(8 GB 未満 GPU)
(venv) $ python main.py –novram

まとめ

IP-Adapter on Ubuntu のセットアップ手順を整理すると次の通りです。

  • 依存パッケージ(python3 3.12.3 / pip 24.0 / git 2.43.0)を apt でインストール
  • ComfyUI をクローンして venv 内で起動
  • ComfyUI-IPAdapter-plus を custom_nodes/ に追加
  • HuggingFace から IP-Adapter モデル+CLIP Vision モデルをダウンロード
  • weight パラメータ 0.6〜0.8 からはじめて調整

IP-Adapter はプロンプトだけでは表現しにくい「雰囲気」や「絵柄」を参照画像から引き継ぐのが強みです。モデルを複数ロードするため VRAM を食いますが、それに見合う表現の幅が得られます。

本格的に画像生成をやるなら、GPU 付きの VPS や RunPod のようなクラウド GPU 環境を検討してみてください。

コメント

タイトルとURLをコピーしました