1
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?

LLM × ComfyUIで画像生成をもっと便利に。プロンプト作成から編集・探索までできるアプリ「SceneLab」を作ってみた

1
Last updated at Posted at 2026-11-09

SceneLabとは

LLMとComfyUIをつないで、日本語での相談からプロンプト作成、画像生成・編集まで行えるWindows向けのローカルアプリ「SceneLab」を作りました。

チャットで画像を作る基本機能に加えて、様々な画像をカタログのように眺めながら好みを探す「探索」と、材料の組み合わせから発想を広げる「ひらめき」を用意しています。

主に、手元のGPUで画像生成をしている方を想定しています。ComfyUIやLLMの準備は必要ですが、接続後はブラウザーの画面から操作できます。

ソースコードと説明書はGitHubで公開しています。

10_chat2.png

作ったきっかけ

AIによる画像生成に興味を持って、ComfyUIをインストールして始めてみたものの、最初に困ったのがプロンプトでした。英語のタグを使って作りたいものを指定するのがなかなか難しい。

それならLLMに日本語を英語へ翻訳してもらえばいいと考えました。ところが、翻訳の前にも問題がありました。

例えば服装や絵柄など、作りたいものを何と呼べばいいのか分かりませんでした。頭の中にぼんやりした好みはあっても文章にするのが難しかったのです。画像を見れば「これこれ」と思えるのに、自分から説明しようとすると言葉が出てきません。

加えて、LLMが作ったプロンプトをコピーして、画像生成側へ貼り付ける作業も、繰り返していると手間に感じました。

そこで、LLMと画像生成をつなぎ、プロンプトの作成から生成まで続けて操作できるものを作り始めました。さらに、先にすべてを言語化するだけでなく、画像を見ながら作りたいものを考えられるようにしたのが、後で説明する「探索モード」と「ひらめきモード」です。

チャットで相談して、画像を生成・編集する

まずは基本機能です。日本語で作りたい画像を伝えると、LLMが画像生成用のプロンプトを作り、そのプロンプトをComfyUIへ送って画像を生成します。

LLMとチャットで相談してから生成することもできます。例えば、車の画像を生成してみるとこんな感じになります。

01_chat.png

生成枚数を指定して、連続で複数枚作ることもできます。この場合は同じ最終プロンプトを使い、シードが自動設定なら、画像ごとにシードを変えて生成します。

自分で用意したプロンプトを使いたい場合は、「最終プロンプトから画像生成」でLLMを通さずに生成できます。

生成した画像は右側のギャラリーに保存・表示されます。画像を選んで最終プロンプトを確認したり、編集したりできるようにしました。何枚生成してもチャットが画像だらけになったりせず見やすくなっています。

画像編集では、画像全体の変更と、範囲を指定した変更に対応しています。以下は、赤い車を青く編集した例です。

02_edit.png

違和感なく車体だけが青色へ変わっているのが分かります。編集に使ったモデルは Qwen-Image-2.1 ですが、今回試した中ではこれが頭ひとつ抜けて精度が高い印象でした。

また、名前・外見メモ・参照画像を登録できるキャラクター機能もあります。参照画像を使った新規生成はQwen系にのみ対応しています。

探索:カタログのように広く眺めて、気になった方向を深掘りする

「作りたいイメージはあるけれど、うまく言語化できない」「どう指示すればいいかわからない」――そんな状態からでも、まずはバリエーションをざっと見比べて、気に入った方向性を深掘りできるように実装したのが、この「探索モード」です。

チャットで一度に複数枚生成するときは、最終プロンプトが共通です。一方、探索ではテーマに沿ってLLMが複数のプロンプトを作り、それぞれから画像を生成します。

まずは、浅く広く眺める

例えば服装などは、色々なバリエーションを並べて見るだけでも便利です。

今回は、アニメ風のドレスをテーマに、様々なデザインを生成してみました。

05_explore.png

画像ごとに短いタイトルが付けられ、様々なスタイルのドレスが一目で確認できます。

「こんな形もあるのか」「この雰囲気がよかった」と、カタログを眺めるように使えます。最初から服装の名前や細かな特徴を知っている必要がなく、画像を見てから気になる方向を見つけられます。

気に入ったものがあれば、狭く深く追う

気に入った画像が見つかったら、ハート評価やコメントを付けて次のラウンドへ進めます。

探索では、過去のプロンプトとユーザーの評価・コメントをLLMへ渡し、それを踏まえて次のプロンプトを作ります。同じ指示でシードを変えるだけでなく、プロンプト自体を変えながら、気になる方向を追っていけます。

試しに、あえてゴシック系の画像を中心に高評価を付けてみました。その評価を反映した次のラウンドがこちらです。

07_explore2.png

ゴシック寄りの雰囲気を保ちながら、配色やシルエット、背景の異なるバリエーションが生成されています。

カタログとして浅く広く見ることも、見つけた好みを狭く深く掘り下げることも、同じ機能でできるようになっています。

ひらめき:発想の切り口を知り、意外な組み合わせを試す

探索モードは「好みの方向性を絞り込んでいく」のにはとても便利でした。ただ、使っているうちに「そもそも思いつきもしなかった切り口から発想を広げられないか?」と感じるようになりました。

そこで作ったのが、この「ひらめきモード」です。

最初から完成した絵を丸ごとひらめくのは難しいので、「時代」「持ち物」「シチュエーション」といった材料に一度分解してみることを考えました。

その材料から自分の好みのパーツを見つけられたり、意外な組み合わせが生まれると面白そうだと感じたからです。

ひらめきでは、テーマを入力すると、まずLLMがそうした発想の材料となるグループを提案してくれます。材料は手動で編集・追加できるほか、LLMにさらに追加してもらうことも可能です。

材料を見るだけでも、発想の幅が広がる

例えば、出会いのシチュエーションを考えるとき、そこに「きっかけ」「場所」「表情」といった材料グループが並ぶことで、「なるほど、そういうバリエーションもあるのか」と視野が広がります。単にプロンプトを自動生成させるだけでなく、「何を変えてみるか」という発想の軸出しからLLMに手伝ってもらう感覚です。

08_inspiration2.png

組み合わせを可視化し、ピンとくる要素を拾い上げる

提案された材料をもとに、要素同士を掛け合わせたり、LLMに連想を広げてもらったりしながら画像を生成します。

今回は「『出会い』をテーマにしたアニメの女の子」というお題を設定し、材料として「時代:未来」を追加してみました。

06_inspiration.png

生成された画像を見ると、様々なシチュエーションの「出会い」が並び、LLMが付けた短いタイトルも含めて、物語の余白を感じさせるような作品になっています。

箇条書きだけではピンとこなくても、実際に画像として出力されると「この要素は好きだな」「この要素はあまり好みではないな」といったことにも気づけます。生成画像から気に入った材料だけを採用し、次の組み合わせに引き継ぐことも可能です。

探索モードと比べても、自分では思いつかないような組み合わせが出やすく、予想を裏切られる面白さがありました。意外な組み合わせがうまくハマることもあれば、変な組み合わせになって笑ってしまうことも含めて、発想の刺激になります。

「完成した1枚」にならなくても、次のプロンプトの種になる

ひらめきで作った画像は、それ自体が完成形でなくてもよいと思っています。

「この要素の組み合わせは面白い」「ここは少し変えてみたい」と感じたら、その気づきを次の指示や探索モードへと引き継げます。

例えば、先ほどの結果の中から窓の外をクジラが泳いでいる画像(上段・右から2番目)が目に留まったとします。

その場合、この画像の最終プロンプトをそのまま探索モードへ持っていき、バリエーションを展開していくことができます。

09_explore3.png

このように、LLMが同じテーマからアングルやシチュエーションを変えたプロンプトを生成し、好みの方向性を一気に掘り下げることができます。

普段使うために整えたところ

探索・ひらめき以外にも、手元の環境で日常的に快適に動かすための仕組みも整えています。

  • 各モードで生成した画像や設定はすべて保存され、いつでも過去のプロンプトを再利用して次の生成や編集に使える
  • ComfyUIのAPI形式のワークフローを登録して、標準対応以外のモデルも使える
  • 設定画面から、LLMと画像生成のVRAMの使い分けを設定できる

VRAMの使い分けとメモリ解放

同じGPUでLLMと画像生成を動かす場合は、VRAMの使い分けも重要なポイントになります。

SceneLabでは、画像生成を実行する前にLLMのVRAMを解放する設定を用意しています。Ollama、LM Studio、Strataに対応しており、Strata v0.1.39以上で利用できる「VRAM Elastic」によるメモリ解放にも対応しています。

また、画像生成側でも、生成完了後にComfyUIの画像モデルを自動でアンロードする設定を用意しています。

今回の動作検証環境

今回の記事で紹介した機能は、以下の環境で動作を確認しました。

  • GPU:GeForce RTX 5090(VRAM 32 GB)
  • メインメモリ:64 GB
  • LLM:Qwen3.8-Flash-Next(IQ3_S 量子化、Strataで実行)
  • LLM設定:Thinking: High、コンテキスト長: 64K
  • VRAM設定:画像生成前のLLMアンロードと、生成完了後のComfyUIの画像モデルのアンロードを両方オン

探索やひらめきでは、LLMが指定された形式で複数の案を出します。使うLLMや設定によっては、必要な項目が抜けたり、案が重複したりします。SceneLabはこうした出力の不備がある場合に自動で検知して再試行しますが、再試行を重ねても有効な案が得られず、画像生成まで進めないこともあります。

なお、処理時間や、LLM・実行エンジンの設定による違いについては、別の記事で自分の環境での実測をまとめようと思います。

必要な環境と始め方

必要なものは以下です。

  • WindowsとPython(開発時の確認環境はPython 3.12)
  • 使用する画像モデルと必要なノードを導入したComfyUI
  • ローカルLLM(Ollama、LM Studio、Strataなど)またはOpenAI互換API対応のクラウドサービス

SceneLab本体はPython標準ライブラリのみを使用しており、追加の pip install は不要です。

準備ができたら、基本的な流れは次のとおりです。

  1. GitHubの「Code → Download ZIP」から取得し、展開する
  2. ComfyUIを起動し、ローカルLLMを使う場合はそのサーバーも起動する
  3. Start-SceneLab.bat を実行する
  4. 開いた画面の「設定」で、LLMとComfyUIの接続先、使用する画像モデルを設定する
  5. まずは画像1枚から生成を試す

詳しいモデルの準備や接続設定は、説明書にまとめています。

設定や作品は data/ フォルダーに保存されるので、バックアップするときは、このフォルダーを丸ごとコピーします。

おわりに

自分用に作り始めたものなので至らない点も多いかと思いますが、ぜひ一度触ってみてもらえると嬉しいです。

今後は動画生成との連携なども試してみたいなと考えています。

1
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
1
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?