lllyasviel / stable-diffusion-webui-forge

GNU Affero General Public License v3.0
7.32k stars 709 forks source link

[Question]: Multidiffusion-upscaler-for-automatic1111 integrated or not? #124

Closed Vigilence closed 7 months ago

Vigilence commented 7 months ago

Is there an existing issue for this?

What would your feature do ?

I know the project page says multidiffusion-upscaler-for-automatic1111 is integrated into forge but I don't see any of the functions that are similar to the original multidiffusion project, included Tiled Vae, Tiled Diffusion (with upscale), Tiled Noise Inversion, and Regional Prompt Control.

Could it be that the extension mentioned for removal is wrong?

About Extensions ControlNet and TiledVAE are integrated, and you should uninstall these two extensions:

sd-webui-controlnet multidiffusion-upscaler-for-automatic1111

adnanT11 commented 7 months ago

this is the only reason I'm not fuly switching to forge now. the tiled vae does work but its many times slower than the TiledVae option in Multidiffusion-upscaler extension

lllyasviel commented 7 months ago

I have heard some similar reports about the integrated Tiled VAE not as good/fast as the old Tiled VAE,

but no one ever shown an example and it is very difficult for us to judge.

I tested a lot of images and i never see difference.

Help wanted if someone can give some examples that I can reproduce and look at

Vigilence commented 7 months ago

I have heard some similar reports about the integrated Tiled VAE not as good/fast as the old Tiled VAE,

but no one ever shown an example and it is very difficult for us to judge.

I tested a lot of images and i never see difference.

Help wanted if someone can give some examples that I can reproduce and look at

Hello!

The issue this post brings up is that the page for this project indicates that tiled diffusion is integrated into forge, if it’s not then the instructions should be corrected so people know that tiled diffusion isn’t integrated.

What is actually integrated is hypertile which is something else.

lllyasviel commented 7 months ago

Hi please note that Tiled VAE is integrated and enabled automatically when image is too large for your GPU, and, the native diffusion resolution from Forge without using tiled diffusion is bigger than what i used to often use with standard webui + tiled diffusion.

In theory tiled diffusion can support infinite resolution, but when people go to like 16k, they are using low denoising strength and in that case Ultimate SD Upscale is much better not only in live preview user experience but also for several avaliable options like how to fix seams

But tiled diffusion has several other functionalities like noise inversion, regional XXX, etc. But those functionalities are not updated for half a year and I am not sure do they even work in original webui 1.7.0. If they do not, then we can ignore them, but if they do, then we can add somethings to to-do (but for god sake do they really still works now?

lllyasviel commented 7 months ago

I added help wanted and see if anyone want to maintain a new extension for tiled diffusion. With forge that should need about 200 lines of codes

lllyasviel commented 7 months ago

Multi-Diffusion is also intergrated now, feel free to open other issues if they have some problems

Vigilence commented 7 months ago

Hi please note that Tiled VAE is integrated and enabled automatically when image is too large for your GPU, and, the native diffusion resolution from Forge without using tiled diffusion is bigger than what i used to often use with standard webui + tiled diffusion.

In theory tiled diffusion can support infinite resolution, but when people go to like 16k, they are using low denoising strength and in that case Ultimate SD Upscale is much better not only in live preview user experience but also for several avaliable options like how to fix seams

But tiled diffusion has several other functionalities like noise inversion, regional XXX, etc. But those functionalities are not updated for half a year and I am not sure do they even work in original webui 1.7.0. If they do not, then we can ignore them, but if they do, then we can add somethings to to-do (but for god sake do they really still works now?

@lllyasviel Thank you for clarifying! Tiled Diffusion works exceptionally well for me once I figured out the issue it was having, which is that the scale factor must match "resize by" or "resize to" size. I manage to go to 16k with increase in detail and no visible seems with little effort on my part.

So currently since tiled vae and multi diffusion is integrated, but does not have the upscale function of the original extension, what would we do for the upscaler? In other words, how would upscale using the integrated tiled diffusion if the upscale model is no longer selectable?

If its not too much trouble can you add some info on what the HyperTile Integrated tab does and how to use it, or point me to the original extension page that has that info?

Thank you.

Screenshot 2024-02-09 225157 Screenshot 2024-02-09 225207

leucome commented 6 months ago

Multi-Diffusion is also intergrated now, feel free to open other issues if they have some problems

I am trying but so far it only generate different tiles. So what are the requirement to get it to works as intended? As far as I know the other feature still work as intended on A1111. I use region control and noise inversion relatively often.

There an examples of the tiles not working properly in Forge. 00334-Restart-dreamshaper_7

There an example of the region control made in A1111 1.7. This feature is still working as expected and it is really useful to make specific image composition or to include multiple character in scene.

dreamshaper_7_Restart_2271399341_022167

darebgd commented 6 months ago

3 weeks and no answer? Please @lllyasviel enlighten us how to use tiling to resize an image ? Nothing I tried works properly.

Susanoo1337 commented 6 months ago

I switched to Forge 4 days ago and am loving the speedups, however TiledDiffusion and TiledVAE is a core part of my workflow, especially with Noise Inversion which is sorely missing in Forge, unless I'm too dumb to find it. So suddenly not having them available slows me down overall. Not only that, the tiledVAE function of Multidiffusion let's you select slow encoder and decoder, which take considerably longer to process but reduce undesired artifacts significantly, without that tiled upscaling is almost impossible under some circumstances.

Multidiffusion extension also added DemoFusion in a commit yesterday which seems quite interesting. It would be great if I could enable that extension in Forge, but every time I try it just disables again, even when I manually disable the built-in forge multidiffusion.

retronomi commented 6 months ago

I am also in need of the full set of features from Multidiffusion and cannot seem to get it enabled, even after removing the built-in version.

Vigilence commented 6 months ago

I am also in need of the full set of features from Multidiffusion and cannot seem to get it enabled, even after removing the built-in version.

I switched to Forge 4 days ago and am loving the speedups, however TiledDiffusion and TiledVAE is a core part of my workflow, especially with Noise Inversion which is sorely missing in Forge, unless I'm too dumb to find it. So suddenly not having them available slows me down overall. Not only that, the tiledVAE function of Multidiffusion let's you select slow encoder and decoder, which take considerably longer to process but reduce undesired artifacts significantly, without that tiled upscaling is almost impossible under some circumstances.

Multidiffusion extension also added DemoFusion in a commit yesterday which seems quite interesting. It would be great if I could enable that extension in Forge, but every time I try it just disables again, even when I manually disable the built-in forge multidiffusion.

I believe forge was coded to block this extension.

wangwenqiao666 commented 5 months ago

Multidiffusion

I also tried to remove the built-in version and install Multidiffusion, but it still didn't work

wangwenqiao666 commented 5 months ago

Why did it shut down without fixing the problem

Iter8tion commented 5 months ago

I would also like to ask/plea/upvote for the addition back into Forge the "Regional Prompt Control" module of the Tiled Vae extension (from pkuliyi2015). That was an easy-to-use and super useful module of that extension for character/item placement within an image generation. Similar to Regional Prompter or Latent Couple.

valery016 commented 4 months ago

I too would really appreciate it if the Forge version of MultiDiffusion would have implemented all the features of the original one, in particular Noise Inversion. And like for other posters here, the lack of these features in Forge holds me back from ultimate switching to Forge from the old webui.

wangwenqiao666 commented 4 months ago

yes

TheOrganicRobot commented 3 months ago

I have switched to Forge for main generation, but still use A1111 because of the TiledDiffusion and all it's awesome features. I've found the best way to deal with it is to symlinked folders for each of my models, vae's, embeddings, and Lora's that both instances can point to so at the very least I can save on disk space.

The short of it is:

  1. Open CMD
  2. Type 'mklink /D "PathToOriginalFolder" "PathToSharedFolder" (i.e. mklink /D "C:/A1111/embeddings" "D:/SharedEmbeddings")
  3. Make sure your ORIGINAL folder no longer exists and your SHARED folder does (i.e. move all assets to new folder, delete original folder, REMEMBER the same name so your FORGE or A1111 instance can still find it, and then run the command which will remake the original folder)

What this does is spoof the folder into thinking that it exists in one location but really points to another. So 'C:/Forge/Stable-Diffusion' points to 'D:/SharedModels' and 'C:/A1111/Stable-Diffusion' would also point to 'D:/SharedModels', assuming you made two symbolic link folders.

Then just run an instance of A1111 and FORGE at the same time. Port numbers will auto adjust so one will be 'http://127.0.0.1:7860/' and the other will be http://127.0.0.1:7861/' Both are great programs, have their own unique perks, but Forge works best for me and SDXL models.