lllyasviel / stable-diffusion-webui-forge

GNU Affero General Public License v3.0
8.73k stars 867 forks source link

Deforum support #96

Closed litvagen closed 9 months ago

litvagen commented 10 months ago

Checklist

What happened?

I get error in console - TypeError: cannot unpack non-iterable OutputPanel object

Steps to reproduce the problem

Deforum not runing in webui

What should have happened?

Webui not show me deforum tab

What browsers do you use to access the UI ?

Google Chrome

Sysinfo

sysinfo-2024-02-07-07-48.json

Console logs

2024-02-07 10:43:03,051 - ControlNet - INFO - ControlNet UI callback registered.
*** Error executing callback ui_tabs_callback for C:\Forge\stable-diffusion-webui-forge\extensions\deforum-for-automatic1111-webui\scripts\deforum.py
    Traceback (most recent call last):
      File "C:\Forge\stable-diffusion-webui-forge\modules\script_callbacks.py", line 169, in ui_tabs_callback
        res += c.callback() or []
      File "C:\Forge\stable-diffusion-webui-forge\extensions\deforum-for-automatic1111-webui\scripts\deforum_helpers\ui_right.py", line 92, in on_ui_tabs
        deforum_gallery, generation_info, html_info, _ = create_output_panel("deforum", opts.outdir_img2img_samples)
    TypeError: cannot unpack non-iterable OutputPanel object

---
model_type EPS
UNet ADM Dimension 0
Running on local URL:  http://127.0.0.1:7860

Additional information

No response

Lareinz commented 10 months ago

Same issue, Deforum is not working with SD Forge

recoilme commented 10 months ago

Same issue, Deforum is not working with SD Forge

kuzivas commented 10 months ago

Deforum, ReActor, FaceFusion do not work. FaceSwaplab doesn't save images in the output. I haven't tested anything else yet. I was thinking of switching to this UI, but now I don't know.

optisynapsis commented 9 months ago

Same issue here also.

optisynapsis commented 9 months ago

I compared ui_common.py in forge and vanilla automatic1111 and looks like the class OutputPanel() doesn't exist in the vanilla version. That's the class the error message is complaining about.

create_output_panel() in forge uses the class extensively and it's assigned to res, which is referenced in the error message.

I'm not skilled enough to refactor the code but I hope that helps with identifying and fixing the issue.

optisynapsis commented 9 months ago

Quick update : replacing ui.py, ui_common.py, and ui_postprocessing.py with the versions from vanilla automatic1111 seems to enable deforum, and no error messages on the command line. I replaced these three as they all referenced create_output_panel() which isn't in the vanilla code.

Will do some further testing.

optisynapsis commented 9 months ago

So deforum wants the sd-webui-controlnet extension to be installed to work properly. It won't do much unless it can detect it. It's disabled by default even if you install it as an extension, after restarting the UI it will still be disabled.

optisynapsis commented 9 months ago

forge has it's own extension, sd_forge_controlnet, and a couple other related controlnet extensions, disabling these is possible but it's still not possible to enable the sd-webui-controlnet extension

optisynapsis commented 9 months ago

Hacking together a simple fix for deforum even just for personal use might be difficult. It uses the code :

cnet = importlib.import_module('extensions.sd-webui-controlnet.scripts.external_code', 'external_code')

but the built in controlnet isn't accessible as an extension as far as I can tell.

optisynapsis commented 9 months ago

The builtin sd_forge_controlnet extension does not include external_code.py which is what deforum is looking for.

optisynapsis commented 9 months ago

external_code.py is included in the folder

extensions-builtin\sd_forge_controlnet\lib_controlnet

modifying deforum to include this, instead of sd-webui-controlnet.scripts.external_code, throws an error about not being able to find get_models().

That's after replacing the aforementioned ui scripts, or it won't get that far.

In forge, get_models is defined in ldm_patched\modules\controlnet.py

Like I said, I've probably not got the credentials to go much deeper than this in terms of analysis. I'm guessing, unless someone has a better overview of the codebase in general, it'd be a lot of work to hack a fix together.

TheRealPhooney commented 9 months ago

Same issue for me, seems you've already looked further into it than I have the skills to do...

rewbs commented 9 months ago

I'll be looking into it next week. Here a super quick hack to at least get something rendering: https://github.com/rewbs/deforum-for-automatic1111-webui/tree/forge-experimentation now https://github.com/deforum-art/sd-forge-deforum . No controlnet yet, so this is really just a very early hack to help me start to understand the landscape. :)

kuzivas commented 9 months ago

Thank you very much for your efforts. Deforum is still a very cool program. I really hope that you will succeed

17 лютого 2024, 21:45:05, від "Robin Fernandes" @.***>:

I'll be looking into it next week. Here a super quick hack to at least get something rendering: https://github.com/rewbs/deforum-for-automatic1111-webui/tree/forge-experimentation . No controlnet yet, so this is really just a very early hack to help me start to understand the landscape. :) — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

--=-PA9uDFLdMnswM491OA5B Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: base64

PGh0bWw+PGJvZHk+PHNwYW4gc3R5bGU9ImRpc3BsYXk6YmxvY2s7IiBjbGFzcz0ieGZtXzQzNDYx OTY3Ij48ZGl2PjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpBcmlhbDtmb250LXNpemU6MTJwdDts aW5lLWhlaWdodDoxNHB0OyI+VGhhbmsgeW91IHZlcnkgbXVjaCBmb3IgeW91ciBlZmZvcnRzLiBE ZWZvcnVtIGlzIHN0aWxsIGEgdmVyeSBjb29sIHByb2dyYW0uIEkgcmVhbGx5IGhvcGUgdGhhdCB5 b3Ugd2lsbCBzdWNjZWVkPC9zcGFuPjwvZGl2Pg0KPGRpdj48YnIvPjwvZGl2Pg0KPGRpdj48aT48 c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwcHQ7bGluZS1oZWlnaHQ6MTJwdDsiPjxzcGFuIHN0eWxl PSJmb250LWZhbWlseTpBcmlhbDsiPjE3INC70Y7RgtC+0LPQviAyMDI0LCAyMTo0NTowNSwg0LLR ltC0DQogICAgIlJvYmluIEZlcm5hbmRlcyIgJmx0Ozwvc3Bhbj48YSBocmVmPSJtYWlsdG86bm90 aWZpY2F0aW9uc0BnaXRodWIuY29tIiB0YXJnZXQ9Il9ibGFuayI+PHNwYW4gc3R5bGU9ImZvbnQt ZmFtaWx5OkFyaWFsOyI+bm90aWZpY2F0aW9uc0BnaXRodWIuY29tPC9zcGFuPjwvYT48c3BhbiBz dHlsZT0iZm9udC1mYW1pbHk6QXJpYWw7Ij4mZ3Q7Og0KPC9zcGFuPjwvc3Bhbj48L2k+PC9kaXY+ DQo8ZGl2Pjxici8+PC9kaXY+DQo8YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyLWxlZnQ6MXB4IHNv bGlkICNjY2NjY2M7bWFyZ2luOjBweCAwcHggMHB4IDAuOGV4O3BhZGRpbmctbGVmdDoxZXg7Ij4N CjxkaXYgc3R5bGU9ImRpc3BsYXk6YmxvY2s7Ij4NCjxkaXY+PC9kaXY+DQo8ZGl2PkknbGwgYmUg bG9va2luZyBpbnRvIGl0IG5leHQgd2Vlay4gSGVyZSBhIHN1cGVyIHF1aWNrIGhhY2sgdG8gYXQg bGVhc3QgZ2V0IDxiPnNvbWV0aGluZzwvYj4gcmVuZGVyaW5nOiA8YSBocmVmPSJodHRwczovL2dp dGh1Yi5jb20vcmV3YnMvZGVmb3J1bS1mb3ItYXV0b21hdGljMTExMS13ZWJ1aS90cmVlL2Zvcmdl LWV4cGVyaW1lbnRhdGlvbiIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9yZWZlcnJlciBub29wZW5l ciI+aHR0cHM6Ly9naXRodWIuY29tL3Jld2JzL2RlZm9ydW0tZm9yLWF1dG9tYXRpYzExMTEtd2Vi dWkvdHJlZS9mb3JnZS1leHBlcmltZW50YXRpb248L2E+IC4gTm8gY29udHJvbG5ldCB5ZXQsIHNv IHRoaXMgaXMgcmVhbGx5IGp1c3QgYSA8Yj52ZXJ5PC9iPiBlYXJseSBoYWNrIHRvIGhlbHAgbWUg c3RhcnQgdG8gdW5kZXJzdGFuZCB0aGUgbGFuZHNjYXBlLiA6KTwvZGl2Pg0KPGRpdj48c3BhbiBz dHlsZT0iZm9udC1zaXplOnNtYWxsO2NvbG9yOiM2NjY7Ij7igJQ8YnIvPlJlcGx5IHRvIHRoaXMg ZW1haWwgZGlyZWN0bHksIDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9sbGx5YXN2aWVsL3N0 YWJsZS1kaWZmdXNpb24td2VidWktZm9yZ2UvaXNzdWVzLzk2I2lzc3VlY29tbWVudC0xOTUwMjky OTA4IiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub3JlZmVycmVyIG5vb3BlbmVyIj52aWV3IGl0IG9u IEdpdEh1YjwvYT4sIG9yIDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9ub3RpZmljYXRpb25z L3Vuc3Vic2NyaWJlLWF1dGgvQkdBUlVTMkxEVFVGV1dQWVdRRFVBSjNZVUVDRUJBVkNORlNNNkFB QUFBQkM1S1RaNzJWSEkyRFNNVlFXSVgzTE1WNDNPU0xUT04yV0tRM1BOVldXSzNUVUhNWVRTTkpR R0k0VEVPSlFIQSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9yZWZlcnJlciBub29wZW5lciI+dW5z dWJzY3JpYmU8L2E+Ljxici8+WW91IGFyZSByZWNlaXZpbmcgdGhpcyBiZWNhdXNlIHlvdSBjb21t ZW50ZWQuPGltZyBzcmM9Imh0dHBzOi8vZ2l0aHViLmNvbS9ub3RpZmljYXRpb25zL2JlYWNvbi9C R0FSVVM1MjNLQ1FURk5aTkVVNURPRFlVRUNFQkE1Q05GU002QUFBQUFCQzVLVFo3MldHRzMzTk5W U1c0NUM3T1I0WEFaTk1KRlpYRzVMRklOWFcyM0xGTloyS1VZM1BOVldXSzNUVUw1VVdKVFRVSDRO MlkuZ2lmIiBoZWlnaHQ9IjEiIHdpZHRoPSIxIiBhbHQ9IiIvPjwvc3Bhbj48c3BhbiBzdHlsZT0i Zm9udC1zaXplOjA7Y29sb3I6dHJhbnNwYXJlbnQ7ZGlzcGxheTpub25lO292ZXJmbG93OmhpZGRl bjt3aWR0aDowO2hlaWdodDowO21heC13aWR0aDowO21heC1oZWlnaHQ6MDsiPk1lc3NhZ2UgSUQ6 ICZsdDtsbGx5YXN2aWVsL3N0YWJsZS1kaWZmdXNpb24td2VidWktZm9yZ2UvaXNzdWVzLzk2LzE5 NTAyOTI5MDhAZ2l0aHViLmNvbSZndDs8L3NwYW4+PC9kaXY+DQo8L2Rpdj4NCjwvYmxvY2txdW90 ZT48L3NwYW4+PC9ib2R5PjwvaHRtbD4NCg==

--=-PA9uDFLdMnswM491OA5B--

JumpIntoCoding commented 9 months ago

same issue with "infinite-zoom" extension.

D:\tools\AI\stable-diffusion-webui\extensions\infinite-zoom-automatic1111-webui-main\iz_helpers\ui.py:253: GradioDeprecationWarning: The `style` method is deprecated. Please set these arguments in the constructor instead.
  output_video = gr.Video(label="Output").style(width=512, height=512)
*** Error executing callback ui_tabs_callback for D:\tools\AI\stable-diffusion-webui\extensions\infinite-zoom-automatic1111-webui-main\scripts\infinite-zoom.py
    Traceback (most recent call last):
      File "D:\tools\AI\stable-diffusion-webui\modules\script_callbacks.py", line 183, in ui_tabs_callback
        res += c.callback() or []
      File "D:\tools\AI\stable-diffusion-webui\extensions\infinite-zoom-automatic1111-webui-main\iz_helpers\ui.py", line 254, in on_ui_tabs
        (
    TypeError: cannot unpack non-iterable OutputPanel object

---
Running on local URL:  http://127.0.0.1:7860
optisynapsis commented 9 months ago

Thank you sir rewbs :) tried this and it worked for my purposes. I don't use controlnet as of yet, haven't really felt the need, so just being able to interpolate between some parameters works perfectly, and a second or two less per iteration, which helps for long animations.

rewbs commented 9 months ago

New home for the Deforum extension for Forge: https://github.com/deforum-art/sd-forge-deforum

humanplugged commented 9 months ago

KUDOS to Rewbs and all developers for these amazing tools! =D

Here's a lowres minimal test using Deforum and Parseq on forge.

Settings: Dreamshaper LCM model, LCM sampler, steps 8, CFG 2.

https://github.com/lllyasviel/stable-diffusion-webui-forge/assets/100067013/1401cd66-2ae1-4e52-a989-38ec44f54972

optisynapsis commented 9 months ago

That's great work :)

humanplugged commented 9 months ago

That's great work :)

Thank you optisynapsis.

There's lots to learn still. 👽

rewbs commented 9 months ago

I think this issue can be closed now that there is a working deforum extension for Forge.

https://github.com/deforum-art/sd-forge-deforum