Hires prompts are not properly modified to remove __wildcard__ tokens. Stepping through the debugger in sample_hr_pass in processing.py in the main stable-diffusion repo, I see that a number of hires-related prompt variables do not have the wildcards properly replaced: at least self.all_hr_prompts, self.hr_prompts, and self.hr_prompt. Anecdotally, this explains why all of my generations look decent on the first txt2img pass, but become very same-y after the hires pass.
Hires prompts are not properly modified to remove __wildcard__ tokens. Stepping through the debugger in
sample_hr_pass
inprocessing.py
in the main stable-diffusion repo, I see that a number of hires-related prompt variables do not have the wildcards properly replaced: at leastself.all_hr_prompts
,self.hr_prompts
, andself.hr_prompt
. Anecdotally, this explains why all of my generations look decent on the first txt2img pass, but become very same-y after the hires pass.I have to assume this was broken a long time ago when the base repo introduced the ability to set a different prompt for the hires pass https://github.com/AUTOMATIC1111/stable-diffusion-webui/commit/ff0e17174f8d93a71fdd5a4a80a4629bbf97f822
The dynamic prompts extension had to put in a fix for this, so I assume it's also needed here https://github.com/adieyal/sd-dynamic-prompts/issues/474