n8nでComfyUI自動画像生成に成功!でも最後に待っていたのは、あの「最強の敵」だった

n8nでComfyUI自動画像生成に成功!でも最後に待っていたのは、あの「最強の敵」だった AI制作・自動化

「画像生成まで自動化したい。」

そう思い、今日は n8nとComfyUIのAPI連携 に挑戦しました。

正直、画像生成は重い作業だろうしまずまずの難関だと思っていました。

しかし、結果から言うと……

ComfyUIの自動起動には大きな引っかかりなく成功しました!

まずはAPI連携

ComfyUIで作成したワークフローを API形式(JSON) でエクスポート。

n8nのHTTP Requestノードから

POST /prompt

へ送信します。

最初は

  • Prompt has no outputs

  • 404エラー

など様々なエラーが出ましたが、一つずつ原因を潰していきました。

その結果、

n8nからComfyUIへ画像生成指示を送れるようになりました。

CPU環境でも十分実用的だった

今回試した設定は

  • DreamShaper 8

  • 384×384

  • Steps 8

  • CFG 7

当初は5分以上かかっていましたが、

画像サイズやStepsを見直した結果

約104秒

まで短縮。

さらに

320×320では

74秒

まで短くなりました。

CPUのみの古いPCとしては、かなり現実的な速度です。

解説動画用の背景画像なら十分使えそうです。

生成完了も取得

画像生成だけで終わりではありません。

ComfyUIには

/history/{prompt_id}

というAPIがあり、

生成完了後に

  • filename

  • status

  • completed

まで取得できます。

さらに

/view

APIを利用することで、

画像そのもの(Binary) をn8n側へ取得することにも成功しました。

ここまでは完璧でした。

そして現れた、最大の敵

最後に

Read/Write Files from Disk

ノードで

画像を保存しようとしました。

……

やっぱりダメ。

The file is not writable

No file(s) found

The file or directory does not exist

……

これまで何度このノードに泣かされてきたことか。

今回は

  • /home/zuw

  • /tmp

どちらも試しました。

それでも失敗。

GitHubでも同様の報告が複数あり、

どうやらDocker環境では同じ問題に遭遇している人が少なくないようです。

発想を変える

ここで考え方を変えました。

そもそも

n8nが画像を保存し直す必要があるのか?

今回の構成では

ComfyUIが

output

フォルダへ画像を保存しています。

なら

FFmpegはその画像を直接読めばいい。

わざわざ

Read Binary
↓
Write File

を挟む必要はありません。

つまり

n8n
↓
ComfyUI
↓
ComfyUI output
↓
FFmpeg

という流れです。

n8nは

「指揮者」

として

  • APIを呼ぶ

  • 完了を待つ

  • ファイル名を管理する

だけに徹する設計へ変更することにしました。

今日の成果

今日だけで

✅ ComfyUI API連携

✅ n8nから画像生成

✅ 生成完了待機

✅ 画像取得

まで完成。

Read/Write Files from Diskには今回も苦しめられましたが、

「そのノードを使わなくても目的は達成できる」

という新しい設計が見えてきました。


ホームラボ構築を始めて数日。

少しずつですが、

RSS → AI → 画像生成 → 動画生成

という、自分が目指していた自動化パイプラインの形が見え始めています。

次はいよいよ、

FFmpegと組み合わせて、解説動画の自動生成へ進みます。

コメント

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