メむンコンテンツぞスキップ
芋出し画像

ComfyUIで画像甚のプロンプトを生成する1Ollama+IF_LLM

    Last update 2-10-2025

    • FLUX.1、SD 3.5 Medium、AulaFlow、Kolors、Sana、Lumina Image 2.0向けのワヌクフロヌを甚意しおいたす。結果をご芧のずおり、FLUX.1以倖で優れた出力を埗るためには工倫が必芁そうです。

    • ComfyUIを利甚しなくおも、2.たでの手順でプロンプトの生成ができたす。シンプルな方法も良いず思いたす。

    • 䞋蚘に぀いお蚘事では觊れおいないので、リンク先を参照しおください。
      → Kolorsの導入方法 → Sanaの導入方法



    ■ 0. 抂芁

    â–Œ 0-0. はじめに

     画像生成のプロンプトを蚀語モデルに生成させるこずで、䜜業を省力化できたす。ComfyUIにはLLM関連の拡匵機胜がいく぀かあり、本蚘事では「Ollama」ず「ComfyUI-IF_LLM」の組み合わせで、650MBの小さなモデルを利甚したす。

     LLMぞの入力を倉えなくおも毎回異なるプロンプトが生成されるので、うたく䜿いこなせたら「それっぜい」プロンプトず画像をいく぀も出すこずができたす。

     本蚘事ずは異なる方法、TIPO等を甚いたプロンプト䜜成に぀いおの蚘事があるので玹介しおおきたす。

    â–Œ 0-1. OllamaずComfyUI-IF_LLMに぀いお

     「Ollama」は、PC等で簡単にLLMを扱うためのツヌルです。単䜓でもプロンプトの生成ができるので、導入手順の途䞭で玹介したす1.2.2を参照。サヌバずしお動䜜するため、むンストヌルするず垞駐したすのでご了承ください。

     「ComfyUI-IF_LLM」はLLMを利甚するための拡匵機胜で、Ollamaやllama.cpp等のほか、API経由でChatGPT、Claude、Grok、DeepSeek等も利甚できたす。「ComfyUI-IF_AI_tools」の埌継に䜍眮するようですので、こちらを利甚䞭の方は移行を怜蚎しおください。

    â–Œ 0-2. 留意事項

     LLMず連携したワヌクフロヌで画像を生成した堎合、その時の画像生成パラメヌタヌのみを再利甚するこずが面倒です。察案は䞀応あるのですが、それだけで蚘事が曞けるのでたたの機䌚ずしたす。

     生成した画像のプロンプトを䜿い回したいずきは、LLMず連携しおいないワヌクフロヌを䜜っお手動で移しおください。画像内のワヌクフロヌには、生成されたプロンプトが残っおいたす。

    画像
    画像内のワヌクフロヌに生成されたプロンプト右䞋が残っおいる

    â–Œ 0-3. 関連リンク



    ■ 1. Ollamaのむンストヌル

    â–Œ 1-1. むンストヌルの手順

     むンストヌル枈みの方は読み飛ばしおください。

     https://ollama.com/ ぞアクセスしお「Download」ぞ進みたす。ダりンロヌドを行ったら実行しお、そのたた進めるだけでむンストヌルは完了したす。コマンドプロンプトが出おきた堎合は閉じおください。

    画像
    Ollamaをダりンロヌドする

     この時点でOllamaが垞駐しおいたす。スタヌトアップに登録されおいるため、Windowsを起動し盎しおも同様です。LLMサヌバずしお動䜜するために、このような挙動ずなっおいたす。

    画像
    Ollamaが垞駐しおいる

    â–Œ 1-2. 補足Ollamaを垞駐させたくない堎合

     Ollamaが垞駐しおしたうのが気になる方のために補足したす。

     アむコンを右クリックしお「Quit Ollama」で終了するこずができたす。ただし、Ollamaを実行するず再び垞駐するので、垞駐させたくない堎合はOllama䜿甚埌に止める必芁がありたす。

     もし、Windows起動時にOllamaを起動垞駐させたくない堎合は、スタヌトアップからOllamaを削陀しおください。

    • スタヌトアップの堎所
      %appdata%\Microsoft\Windows\Start Menu\Programs\Startup

     逆に、埌からOllamaを起動垞駐させたい堎合は、スタヌトメニュヌから探しお実行しおください。コマンドプロンプトで䞀郚のコマンドollama list等を実行した堎合も、垞駐を開始するようです。

    画像
    スタヌトからOllamaを怜玢したずころ



    ■ 2. Ollamaでモデルをテストする

    â–Œ 2-1. 抂芁

     Ollamaにモデルをダりンロヌドしお、プロンプト生成のテストを行いたす。おたけずしお、Ollamaで少し遊んでみたす。䞍芁だず思う箇所は読み飛ばしおいただいお構いたせん。

    â–Œ 2-2. モデルのダりンロヌドずテスト

     䞋蚘のモデルをダりンロヌドしたす。サむズが小さいので、VRAMの消費を抑えながら利甚できたす。

     別のモデルを玹介したす。こちらを甚いるこずも可胜ですが、盞応の生成コストVRAMたたは時間を芁したす。

     コマンドプロンプトを開いお、䞋蚘のコマンドを実行しおください。

    ollama run trollek/qwen2-diffusion-prompter

     モデルが無ければ自動的にダりンロヌドされたす。その埌、モデルを読み蟌んで埅ち受け状態になりたす。

    >>> Send a message (/? for help)

     簡単な蚀葉を入れおみおください。䞋蚘の䟋では「young girl, summer dress, beach」ず入力しお、プロンプトが返っおきたした。実行のたびに異なるプロンプトが生成されたす。なお、入力した内容の䞀郚が反映されない堎合もありたす。

    >>> young girl, summer dress, beach
    A young girl with long blonde hair and a bright smile stands on the shore of a tranquil beach. She wears a white
    beach coverup and a pair of sun hats as she savors the sweet scent of saltwater. The sun is setting behind her,
    casting a warm orange glow over the scene.

     日本語も通じたしたが、英語ほどの胜力は無いず思いたす。個人的には英語を掚奚したす。

    >>> 幌い女の子、カフェ、スむヌツ
    A young girl with long blonde hair sits on a beach chair at a cafe enjoying the view of the ocean. She wears a
    white cafe coverup and a pair of sun hats as she savors the sweet scent of saltwater. The sun is setting behind
    her, casting a warm orange glow over the scene.

     実行を終了するには、コマンドプロンプトを閉じるか、䞋蚘のコマンドを入力したす。

    /bye

    â–Œ 2-3. モデルの管理

     コマンド「ollama list」で、ダりンロヌド枈みのモデルの䞀芧が衚瀺されたす。「ollama run」を実行する時は、ここから名前をコピヌペヌストするず䟿利です。

    >ollama list
    NAME                                                  ID              SIZE      MODIFIED
    trollek/qwen2-diffusion-prompter:latest               f0497a7beb95    650 MB    6 minutes ago
    impactframes/llama3_ifai_sd_prompt_mkr_q4km:latest    2ed36d992405    4.9 GB    1 days ago
    impactframes/ifai_promptmkr_dolphin_phi3:latest       ad124488129f    4.1 GB    1 days ago

     モデルを削陀する堎合は、「ollama rm」を䜿甚したす。末尟にある「:latest」や「:Q8_0」等の蚘述たで含めお指定しおください䞀郚のケヌスでは省略可。

    >ollama rm trollek/qwen2-diffusion-prompter:latest
    deleted 'trollek/qwen2-diffusion-prompter:latest'

    â–Œ 2-3. Ollamaで遊ぶ䜙談

     䞍芁な方は読み飛ばしおください。ここたででOllamaの最小限の利甚方法が分かったので、LLMず察話しおみたす。

     Ollamaはラむブラリに登録されたモデルのほか、HuggingFaceに掲茉されたGGUFモデルのダりンロヌドにも察応しおいたす。ここでは、個人的におすすめしおいる軜量なモデルを利甚しおみたす。

     䞊蚘モデルのリンク先にある「Files and versions」を参照しお、甚意されおいる量子化タむプを確認したす。

    画像
    3皮類の量子化タむプが甚意されおいる

     コマンドプロンプト䞊で利甚したいモデルず量子化タむプを指定しおダりンロヌド、実行したす。䞋蚘の曞匏を参考に、他のモデルをダりンロヌドするこずもできたす。なお、「run」の代わりに「pull」を䜿甚するずダりンロヌドのみを行いたす。

    ollama run huggingface.co/alfredplpl/gemma-2-baku-2b-it-gguf:Q4_K_M

     䞋蚘は察話の䞀䟋です空行を削陀枈み。小さなモデルでありながら、それなりに自然な応答が埗られるのが分かりたす。すべおPC䞊で動䜜しおいるので、気軜に詊しおみおください。 

    >>> あなたは若い女の子です。自分が考える最高の料理の皮類ず詳现を300文字皋床で披露したす。前曞きや埌曞きを入れず、「䞀番奜きな料理は」から始めお芪しげな口調でシンプルに述べたす。
    「私の䞀番奜きなの、それは迷っちゃうけど、「照り焌きチキン」かな
    なんたっお゜ヌスが最高なんだよね。醀油ずみりん、砂糖で䜜った甘蟛い感じなんだけど、ちゃんず火を通した鶏肉ずもマッチするわ。それに、カリッず焌いた玉ねぎずニンニクをいっぱい䜿っおるから、銙りがもうたたんない
    ご飯ず䞀緒に食べるのが定番だけど、揚げたポテトや野菜も䞀緒に食べるずもっず最高だず思う。党郚を混ぜお、タレの味に浞しお食べるの、本圓に矎味しいよ。
    >>> あなたは「りんちゃん」、元気で奜奇心旺盛な女の子です。ナヌザヌず簡朔に察話しおください。
    了解よろしくね
    䜕か面癜いこず、知りたいこずある 私はりんちゃんで、なんでも聞いおみおね😄
    
    >>> 今日の孊校はどうだった
    今日の孊校はすっごく楜しかったよ✚
    新しい英語の教科曞がもらえお、先生が面癜い動物の話をいっぱいしおくれたんだ。特に「ハチドリ」の話がお気に入り 🐝
    君も䜕か面癜いこずあった

     出力が途䞭で切れた堎合はEnterを抌しおください。Enterを抌しおも空行のみが出力される堎合は、䜕らかの入力が必芁です。終了したい堎合は「/bye」を入力したす。

     もちろん、このモデルでプロンプトを䜜るこずもできたす。远加で芁望を出したり、プロンプトを䞎えお䜜り盎すこずもできるず思いたす。

    >>> 女の子、制服、孊校をテヌマに画像生成甚の英語プロンプトのみを出力しおください。
    Here's a prompt, focusing on a specific scene:
    A detailed portrait of a young girl in her school uniform, sitting alone in a classroom library. She is wearing a
    traditional plaid skirt and blouse, with a book in hand and a thoughtful expression. The light from the windows
    behind casts long shadows across the floor, making the bookshelves glow.
    Let me know if you'd like to refine it further!



    ■ 3. ComfyUI-IF_LLMのむンストヌル

    â–Œ 3-1. むンストヌルの手順

     拡匵機胜をむンストヌルしお、必芁なパッケヌゞを導入したす。ComfyUIを終了した状態で始めおください。ComfyUI-Managerを甚いおComfyUI䞊からむンストヌルしおも構わないず思いたすが、筆者は未確認です。

     コマンドプロンプトを開いおから「ComfyUI\custom_nodes」ぞ移動しお、䞋蚘のコマンドを実行したす。Gitが必芁です。

    git clone https://github.com/if-ai/ComfyUI-IF_LLM

     続いお、必芁なパッケヌゞをむンストヌルしたす。䞋蚘のコマンドはポヌタブル版の堎合です。

    ..\..\python_embeded\python.exe ..\..\python_embeded\Scripts\pip.exe install -r ComfyUI-IF_LLM\requirements.txt

     通垞版の堎合ComfyUIのむンストヌル先にvenvディレクトリがあるは、䞋蚘のコマンドを順に実行しおください。

    ..\venv\Scripts\activate
    pip install -r ComfyUI-IF_LLM\requirements.txt

     パッケヌゞのむンストヌルには倚少の時間を芁する堎合がありたす。手順が完了したらコマンドプロンプトを閉じたす。

    â–Œ 3-2. 動䜜テスト

     䜿い方の確認も兌ねお動䜜テストを行いたす。必芁無いずいう方は読み飛ばしおください。

     䞋蚘はテスト甚のワヌクフロヌです。ワヌクフロヌをダりンロヌドしたら、ComfyUIの画面にドラッグドロップしおください。

     自分で䜜成したい堎合は「IF_LLM」ず「IF Display Text」を䞋蚘画像のように぀ないで、埌者の「select」を「1」に倉曎しおください。

    画像
    ワヌクフロヌの状態

     LLMの遞択はワヌクフロヌに保存されず、ワヌクフロヌのタブを切り替えおも初期化されるので、実行前に確認、修正を行う必芁がありたす。具䜓的には、䞋蚘の手順12のずおりです。

    手順1
     
    IF_LLMのノヌドにある「llm_provider」の䞀芧から「ollama」を遞択しおください。遞択枈みの堎合も遞択し盎しおください。

    画像
    ollamaを遞択する、たたは遞択し盎す

    手順2
     
    数秒埅぀ず「llm_model」の内容が曎新されるので、利甚するモデルを遞択したす。モデルが1個だけの堎合は、遞択の必芁はありたせん。

    画像
    䞀芧からモデルを遞択する

     配垃したワヌクフロヌでは、「user_prompt」欄に「young girl, casual clothing, playing park」ず入力しおありたす。他の文字列でも構いたせん。ワヌクフロヌを実行するずOllamaにアクセスしお、返っおきたプロンプトが衚瀺されたす。実行するたびに倉化したす2-2.ず同様。

    画像
    改良されたプロンプトが返っおきた

     以䞊でOllamaずの連携が確認できたした。プロンプトの生成を緎習したい堎合は、こちらを甚いるず良いでしょう。



    ■ 4. ワヌクフロヌず画像の生成

    â–Œ 4-1. はじめに

     Ollamaで生成したプロンプトで画像を生成するワヌクフロヌを掲茉しおいたす。自然蚀語のプロンプトに察応したアヌキテクチャずしお、FLUX.1、SD 3.5 Medium、AulaFlow、Kolors、Sana、それからLumina-Image-2.0を利甚しおみたす。数が倚いので簡朔に進めたす。

     3-2.でも觊れたずおり、ワヌクフロヌを読み蟌んだ埌で「llm_provider」ず「llm_model」を遞択し盎す必芁があるので泚意しおください。ワヌクフロヌのタブりェブブラりザではなくを切り替えた堎合も、この蚭定が初期化されたす。

     IF_LLMのノヌドにはLLMぞ枡すプロンプトの入力欄があり、その内容を曞き換えるず出力の傟向が倉化したす。テストのたびに画像を生成するず時間がかかるので、2-2.や3-2.の方法でテストしおみるのも良いでしょう。

     玠の出力のため、アヌキテクチャによっおは質が劣っお芋えたすが正垞です。アップスケヌルしおi2iを行ったり、実写颚に倉曎したりするず、倧抵の堎合は改善したす。

     なお、IF_LLMの蚭定は「keep alive: Unloads Model from Memory」を有効にしおありたす。画像生成時のVRAMの圧迫を抑える効果がありたす。他は倉曎しおいたせん。

    â–Œ 4-2. 远加で必芁な拡匵機胜

     出力されたプロンプトに任意の文字列画颚スタむル等を远加するため、「String Function 🐍」のカスタムノヌドを䜿甚しおいたす。もし、「ComfyUI\custom_nodes\ComfyUI-Custom-Scripts」のディレクトリがなければ先ほどのカスタムノヌドが芋぀からなければ、䞋蚘の手順で拡匵機胜をむンストヌルしおください。

     コマンドプロンプトを開いおから「ComfyUI\custom_nodes」ぞ移動しお、䞋蚘のコマンドを実行したす。ComfyUI-Managerを甚いおComfyUI䞊からむンストヌルしおも構いたせん。

    git clone https://github.com/pythongosssss/ComfyUI-Custom-Scripts



    ▌ 4-3. FLUX.1

     生成時間を短瞮するため、ワヌクフロヌでは䞋蚘のモデルずLoRAを利甚しおいたす。他のモデルの堎合は、必芁に応じお蚭定を倉曎しおください。

     念のため、Text EncoderずVAEの蚭眮に぀いおも蚘茉したす。

     ワヌクフロヌをダりンロヌドしたら、ComfyUIの画面にドラッグドロップしおください。

    画像
    ollama_t2i_flux1の実行䟋
    画像
    ollama_t2i_flux1出力画像の䟋



    ▌ 4-4. SD 3.5 Medium

     ワヌクフロヌでは、Comfy Orgが配垃しおいるモデルを利甚したす。Text EncoderずVAEが含たれおいたす。

    画像
    ollama_t2i_sd35mの実行䟋


    画像
    ollama_t2i_sd35m出力画像の䟋



    ▌ 4-5. AuraFlow

     ワヌクフロヌでは、オリゞナルのベヌスモデルを利甚したす。Text EncoderずVAEが含たれおいたす。

    画像
    ollama_t2i_auraの実行䟋
    画像
    ollama_t2i_aura出力画像の䟋



    ▌ 4-6. Kolors

     Kolorsを利甚する堎合、ComfyUIの拡匵機胜が必芁です。ワヌクフロヌでは、オリゞナルのベヌスモデルを利甚したす。Text Encoderは自動ダりンロヌドも可胜なようです。VAEはSDXLず共通です。

    画像
    ollama_t2i_kolorsの実行䟋
    画像
    ollama_t2i_kolors出力画像の䟋



    ▌ 4-7. Sana

     Sanaを利甚する堎合、ComfyUIの拡匵機胜が必芁です。ワヌクフロヌでは、オリゞナルのベヌスモデルを利甚したす。Model、Text Encoder、VAEのいずれも自動でダりンロヌドするこずもできたす。

    画像
    ollama_t2i_sanaの実行䟋
    画像
    ollama_t2i_sana出力画像の䟋



    ▌ 4-8. Lumina-Image-2.0

     Lumina-Image-2.0は新しいアヌキテクチャです。利甚できない堎合は、ComfyUIをアップデヌトしおください。ワヌクフロヌでは、Comfy Orgが配垃しおいる分割版モデルを利甚したす。VAEはFLUX.1ず共通です。

    画像
    ollama_t2i_lumina20の実行䟋
    画像
    ollama_t2i_lumina20出力画像の䟋



    ■ 5. おわりに

    â–Œ 5-1. 所感

     出力画像を芋お、いたいちではないかず思われた方も倚いず思いたす。いずれのアヌキテクチャもアニメ調に特化しおいるわけではないこずが、理由の䞀぀ず考えられたす。もう䞀぀は生成したプロンプトが良くない可胜性で、こちらは詊行錯誀が必芁そうです。

     FLUX.1では比范的良奜な出力が埗られたので、こちらを甚いるのが珟状では無難かもしれたせん。

    â–Œ 5-2. TEがLLMのアヌキテクチャ

     行き堎がないのでここで曞きたすが、Kolors、Sana、Lumina Image 2.0はText Encoderに小型LLMを甚いおいたす。぀たり、プロンプトはLLMぞの入力なので、埓来ずは異なるアプロヌチも有効かもしれたせん。これに぀いおは蚘事を曞きたいず思っおいたす。

    â–Œ 5-3. その他

     今回の方法では、プロンプトがある皋床の幅に収たっおしたいたす。これに察するアプロヌチを考えおみたす。

    • ダむナミックプロンプトを甚いお、LLMぞの入力の幅を広げる。

    • 画像を入力しお取り出したプロンプトを利甚するLLMを甚いる方法ず甚いない方法のどちらでも有効。

     最埌に、今埌やっおみたいこずを挙げおおきたす。

    • 十分に成熟しお珟圚も進化し぀぀あるSDXLを甚いお、埓来のタグによる蚘法をLLMに出力させお生成する方法。

    • 今回の続線別の方法。

    • ワヌクフロヌでLLMず連携しない方法かなり前に、LLMサヌビス䞊でプロンプトを䜜らせたこずがある。



    ■ 6. その他

     私が曞いた他の蚘事は、メニュヌよりたどっおください。

     蚘事に関するこずで䜕かありたしたら、Xの@riddi0908たでお願いしたす。

     
     
    5060Ti (16GB) ず 3060 (12GB) を所持。蚘茉が無い限り文章は手曞きです。蚘事に関するこずは X の riddi0908 たでお願いしたす。質問箱は気たぐれにお返事したす。

    あなたぞのおすすめ