![見出し画像](https://assets.st-note.com/production/uploads/images/144643906/rectangle_large_type_2_86f8ff9a8d9dac9e521c592616bb64cb.png?width=1200)
Prompt_injection/ComfyUIを試してみた話
今回は、この拡張機能を使って画像生成への効果について試してみました。
本家のものは別でフォーク版です。理由は不明ですが、こちらだとうまく動いたため、こちらを使用しています。
きっかけは、上の記事になります。
この記事では、「prompt_injection」を使用して、画像生成における階層の影響について検討していました。
いまだに十分は理解していませんが、モデルの階層別にプロンプトに対する反応の程度が異なるということは分かる内容でした。
さて、今回は「prompt_injection」してより良い画像生成をしてみようという話になります。
「prompt_injection」は、プロンプトを上書きするみたいな機能になります。
該当する階層だけ違うプロンプトにするみたいな感じでしょうか。
参考にした記事の内容にもありますが、シード値を固定し、ネガティブプロントとミュートした状態で変化を見たりしています。
「prompt_injection」のノードは、「prompt i」ぐらいで検索すると出てきます。
<「prompt_injection」のノードのつなげ方的なもの>
以下のような感じにつなげてみました。
![](https://assets.st-note.com/img/1718842396426-QTRtjXy7OV.png?width=1200)
「prompt_injection」のノードは、Loraみたいにモデルにつなげる感じで、別に追加で入力するプロンプトを「CLIP text encorder」で繋げるという感じです。
1girl, with a tear mole, smiles, looking at viewer, making a peace sign. Her light-colored hair blows in the wind. The background features a blue sky with white clouds. She wears casual clothes, exuding a sense of joy and openness.
![](https://assets.st-note.com/img/1718842936377-sKKEcN9Z2c.png?width=1200)
空白プロンプトをつなげた場合の変化
プロンプトがその階層だけ入力が無くなるので、画像が変わる事が想定されます。
ALL ⇒ 大きく変わりました
![](https://assets.st-note.com/img/1718843018153-wFq3PvN3vf.png?width=1200)
試した中で、変化が少なかったものと大きかったものがありました。これは参考にしたサイトでも同じでした。
変化が少なかったもの
INPUT4、INPUT5、INPUT8
Middle0
OUTPUT2、OUTPUT3、OUTPUT5
変化が多少あったもの
INPUT7:着ている服装が変わった
![](https://assets.st-note.com/img/1718843105263-rGIKlJwQM4.png?width=1200)
OUTPUT0:全体的に書き込みが減った感じ
![](https://assets.st-note.com/img/1718843226449-1OzpxWaqUs.png?width=1200)
OUTPUT1:雰囲気が変わった
![](https://assets.st-note.com/img/1718843269542-VWcDTxuMz1.png?width=1200)
OUTPUT4:若干背景の書き込みが減った
![](https://assets.st-note.com/img/1718843408403-IkYOyImslG.png?width=1200)
上記の様になりました。
参考にしたサイトだと、INPUT8の影響が大きかったとのことですが、このモデルではINPUT7でしたので、モデルによる差のようです。
<INPUT7>にもとのプロンプトを入れて見る
![](https://assets.st-note.com/img/1718843973331-8PeLzJbexS.png?width=1200)
ウェイトを2にしてみる
![](https://assets.st-note.com/img/1718844128155-qt2XIx5crt.png?width=1200)
OUTPUT0, OUTPUT4に追加する
![](https://assets.st-note.com/img/1718844449274-8uDPjDI5gD.png?width=1200)
ウェイトを2にした
![](https://assets.st-note.com/img/1718844459739-vmvG44K9w2.png?width=1200)
INPUT7, OUTPUT0, OUTPUT4をウェイト2にしたもの
![](https://assets.st-note.com/img/1718844530282-NL5OxnTiGf.png?width=1200)
OUTPUT1のみ
![](https://assets.st-note.com/img/1718844799591-M1uUu1MivJ.png?width=1200)
ウェイト2
![](https://assets.st-note.com/img/1718844817079-klYrhM8A0p.png?width=1200)
INPUT7, OUTPUT0, OUTPUT1, OUTPUT4をウェイト2にしたもの
![](https://assets.st-note.com/img/1718844638211-J94NzBdpzV.png?width=1200)
ということで、このモデルにおいては、OUTPUT1はウェイトを増やすとものが増えるということが分かりました。
プロンプトを空白にして、悪い変化があった場合に、ウェイトを上げて元のプロンプトを入れ込むことで若干良い方向になる可能性が示唆されたと思われます。
INPUT7, OUTPUT0, OUTPUT4をウェイト2で、ネガティブプロントや品質系プロンプトを追加したもの
![](https://assets.st-note.com/img/1718851363063-ikGxOPKMHg.png?width=1200)
INPUT7, OUTPUT0, OUTPUT1, OUTPUT4をウェイト2でネガティブプロントや品質系プロンプトを追加したもの
![](https://assets.st-note.com/img/1718851981025-eo9bVCuyLS.png?width=1200)
プロンプトへの反応が「あと一息」みたいな時に使用すると効果的な気がしました。