yspacedev / Expanded-XY-grid

Custom script for AUTOMATIC1111's stable-diffusion-webui that adds more features to the standard xy grid
16 stars 2 forks source link

Question #4

Open system1system2 opened 1 year ago

system1system2 commented 1 year ago

I published this idea on the AUTOMATIC1111 Discussion forum here, but now I realize that maybe Expanded-XY-grid already does it:

Right now, the X/Y Plot script for AUTOMATIC1111 can already compare multiple models with the Checkpoint name type. It works well if you are comparing models that have no activation tokens (e.g.: SD 1.4 vs 1.5 vs 2.0).

But it doesn't work well if, for example, you want to compare classicAnim-v1.ckpt vs moDi-v1-pruned.ckpt vs robo-diffusion-v1.ckpt, etc. And that's because these checkpoint need an activation token: classic disney style, modern disney style, nousr robot, etc.

You could theoretically use Checkpoint name for the X type and Prompt S/R for the Y type, but it would produce a lot of unnecessary outputs.

It would be much better if the X/Y Plot script could associate an activation token to each checkpoint in the X type.

Is it possible to do it with your script?

yspacedev commented 1 year ago

No, my script does not do that currently. I could update it, but it seems like that would require somewhat significant changes to the code and testing to see if it works. You can do Prompt S/R and Prompt S/R placeholder on the prompt. That could work.

Like: Prompt: style, darth vader riding a bicycle X params: Multitool: Checkpoint names: ... | Prompt S/R: style, classic disney style, modern disney style, nousr robot

But I've never used activation tokens, so I don't know how they work

system1system2 commented 1 year ago

Thank you.

Activations tokens are keywords that you need to add to your prompt (most people suggest at the beginning of the prompt) to trigger the style of the DreamBooth model you are using.

For example, if you loaded the moDi-v1-pruned.ckpt model and your prompt is knight in shiny armor, no Disney-like image gets generated. If, instead, your prompt is modern disney style knight in shiny armor, you get the typical Disney like image you'd expect.

So, if I want to test the same prompt across various models, the scripts should generate the following iterations:

Prompt: knight in shiny armor Iteration 1: moDi-v1-pruned.ckpt + modern disney style + $prompt Iteration 2: classicAnim-v1.ckpt + classic disney style + $prompt Iteration 3: robo-diffusion-v1.ckpt + nousr robot + $prompt

If the script also mixes the checkpoint names with the activation tokens, for example by producing Iteration 4: moDi-v1-pruned.ckpt + nousr robot + $prompt, that is a waste of cycles that should be avoided as it will not produce anything meaningful.