stable-diffusion-webui icon indicating copy to clipboard operation
stable-diffusion-webui copied to clipboard

[Feature Request]: make UI more responsive

Open spotlesscoder opened this issue 1 year ago • 3 comments

Is there an existing issue for this?

  • [X] I have searched the existing issues and checked the recent builds/commits

What would your feature do ?

I often have to forcibly exit the process running as webui to quickly cancel a long running generation process of a large or many images when I realize that the prompt is not correct

then I just start the bat file again, put the window in the background, go back to the still opened tab in my browser where I already change the settings still entered from the previous generation

but I have to wait for quite some time until the backend service becomes responsive again so that the generation is successfully started when I press the big generate button

Proposed workflow

Multiple possible solutions are possible In the end the web server handling the generate button must start as quickly as possible

Additional information

No response

spotlesscoder avatar Jan 29 '24 15:01 spotlesscoder

so what's the issue with the big interrupt | skip buttons?

w-e-w avatar Jan 29 '24 15:01 w-e-w

Multiple issues for me

  1. the meaning of them is not completely clear - what exactly does each of these buttons do - maybe a tooltip on each of the buttons helps
  2. when generating 100 batches in a single run, none of the two buttons seems to cancel the entire run
  3. the buttons are not very responsive, the UI takes quite some time to reflect that the button was pressend in terms of the progress bar advancing

spotlesscoder avatar Jan 29 '24 15:01 spotlesscoder

interrupt : stops generation of the current image skips : stop generation of the current image and continues on to next batch

(basically if you see in live preview that you don't like the image you can click Skip and continue on to the next batch (personally never found this to be useful))

  • in https://github.com/AUTOMATIC1111/stable-diffusion-webui/pull/13653 an option was enabled by default so that the interrupt button only interrupt after the current generation is done

  • in https://github.com/AUTOMATIC1111/stable-diffusion-webui/pull/14659 I implemented in additional to https://github.com/AUTOMATIC1111/stable-diffusion-webui/pull/13653 so that when you click the interrupt button the second time it stops it immediately

if Interrupt generation after current image is finished on batch processing is enabled the quickest way to stop a generation would be to click interrupt and then click skip

basically once the interrupt command is received by the server it should stop the job as quickly as possible note it does need to finish the current job up to the next interrupt check but it should stop in mid generation Interruption command is only check between steps but not in steps so it can only stop between steps but it cannot stop in steps

unless you have a low end GPU and each step takes multiple seconds it should be pretty responsive it's not instantaneous but it should also be perfectly usable

after the command it received it also have to do some work, like to send the already completed images to the UI

some extensions may not Implement checking of interruption properly in this case it will not be able to stop during those periods

w-e-w avatar Jan 29 '24 16:01 w-e-w

OK, I will try that next time Still, some tooltips on those buttons would be very beneficial

spotlesscoder avatar Jan 30 '24 19:01 spotlesscoder

  • https://github.com/AUTOMATIC1111/stable-diffusion-webui/pull/14803

w-e-w avatar Jan 30 '24 19:01 w-e-w