adieyal / sd-dynamic-prompts

A custom script for AUTOMATIC1111/stable-diffusion-webui to implement a tiny template language for random prompt generation
MIT License
2.02k stars 261 forks source link

New Magic Prompt being applied to each ADetailer prompt #711

Open wiseoldowl-66 opened 8 months ago

wiseoldowl-66 commented 8 months ago

Hello all,

The ask: can magic prompt be disabled for ADetailer prompts in the same way that it can be for negative prompts?

I've noticed that when Magic Prompt is enabled, it applies a new set of prompts to each detected item in the same picture, resulting in some interesting styles specific to certain body parts.

For example, with a prompt that just says "hands" when three were detected:

image

There is already an option "Don't apply to negative prompts".

I wonder whether a similar option can be added along the lines of "Don't apply to ADetailer prompts"? Additionally, should the default behaviour when it is enabled be to use the same magic prompts as the main image, rather than generate new ones for each ADetailer prompt?

Thank you in advance.

akx commented 8 months ago

I haven't used ADetailer and I don't know how it does its thing (all I know it interacts in many strange ways with this extension).

"Don't apply to negative prompts" is easy, because we simply have a different list of prompts and negative prompts: https://github.com/adieyal/sd-dynamic-prompts/blob/main/sd_dynamic_prompts/dynamic_prompting.py#L464-L468

but this extension is utterly unaware of ADetailer at all.

wiseoldowl-66 commented 8 months ago

Ah okay.

I can tell you the arguments in ADetailer appear to be ad_prompt and ad_negative_prompt but whether those can be disapplied in this extension or it's just an inherent incompatibility, I shall defer to your expertise!