[Sammelthread] AI - Bildgenerierung (Stable Diffusion, Midjourney & Co)

@Ayo34 Guter Artikel :)

Die Tech Specs decken sich mit meinen Erfahrungen. Ich ertappe mich dabei, mit 64GB RAM zu liebäugeln, weil mit 32GB bin ich jetzt immer mal wieder über die Grenze geschossen.
Dann braucht der Computer entweder Minuten bis er sich fängt oder er hängt sich ganz weg.
 
  • Gefällt mir
Reaktionen: Ayo34
Die 8-Bit habe ich und nutze ich auch meistens - dann ist das kein Problem.

Aber manchmal will man ja das ein- oder andere testen und dann wird's teils kritisch^^
 
Da es für Flux noch keine integrierten Nodes für ControlNet u.s.w gibt, behelfen sich aktuell wohl viele mit Img2Img-Konstruktionen, d.h. es wird wie gewohnt ein Bild in SD15/XL gerechnet und das Ergebnis dann VAEencoded in einen Flux- CustomSampler überführt, mit kleinen bis mittleren Denoising-Werten. Der Pass durch Flux kann gewisse Probleme mit Händen, Gesichtszügen oder Texten korrigieren, wenn man Ausgangsbild und Denosing entsprechend wählt. Darauf hin dann ein weiterer Durchgang zum Upsampling, ich benutze im Moment noch Ultimate SDUpscale, da er relativ schnell ist und meistens okaye Ergebnisse bringt, andere Tiled-Upscaler sollten auch funktionieren trotz wenig VRAM, z.B. PixelKSampler (mit Tiling, er braucht aber doppelt so lange die UltimateSD) und SUPIR sollten auch funktionieren. Upscaling 1,5x oder 2x bringt nochmal Details und Schärfe, darüber hinaus wohl nicht unbedingt, meine GPU ist aber auch zu langsam um in diesem Grössenbereich sehr viel zu experimentieren, ich nehme dann Topaz Gigapixel zum vergrössern.
 
Die jüngsten ComfyUI Updates haben einige Dinge für meine Kiste verbessert. Bei ein paar Gegentests mit FP8 schnell safetensor ist die RAM Auslastung jetzt deutlich vorhersehbarer und niedriger (pt_main_thread @ 14GB vs >20GB).

Zudem ist es reproduzierbar etwas schneller geworden als zu Beginn. Wenn alle Models im RAM gecached sind schafft meine AMD Karte jetzt eine 1024x1024 Inferenz mit 4 Step in knapp 79 Sekunden (damit ist es etwa 15x langsamer als SDXL).
 
Wenn es besser wird ist es schön, aber die 4080 mit ebenfalls 16GB VRAM braucht für Flux Schnell 8Bit gerade mal 6-7 Sekunden und selbst das 16Bit Model ist in 15-17 Sekunden fertig. Irgendwie schade, dass die AMD Karten hinterherhinken. In 80 Sekunden kann ich fast zweimal das Dev 16 Bit Model laufen lassen mit 20 Steps.

Weiß jemand wie es mit den 24GB AMD Karten ausschaut?
 
RDNA2 unterstützt (meines Wissens nach) BF16 nicht in Hardware und muss alles Brute-Force umrechnen. Wäre interessant wie sich RDNA3 im Vergleich schlägt. Viele Features sind aber auch hier noch CDNA vorbehalten.

Insgesamt schlägt hier immer noch der Architektur-Unterschied mit seinem unterschiedlichen Aufbau der CUs durch. In reinem FP32 wäre der Unterschied vermutlich deutlich kleiner, allerdings macht das client side außerhalb vom Training wenig Sinn. Und da fehlt es den Consumerkarten dann eh in der Regel am VRAM.
 
https://www.reddit.com/r/StableDiff...bitsandbytes_guidelines_and_flux_6gb8gb_vram/

FLUX jetzt auch in Forge (neue nf4 und fp8 Variante bisher).

Links zu den Files und weitere Info hier: https://github.com/lllyasviel/stable-diffusion-webui-forge/discussions/981

Dort behauptet der Macher lllyasviel (nicht gerade ein nobody ^^) auch, man könne SDXL mit nf4 benutzen und hätte einen enormen Geschwindigkeitsschub dadurch:

Using this option, you can even try SDXL in nf4 and see what will happen - in my case SDXL now really works like SD1.5 fast and images are spilling out!

Ergänzung ()

twx24 schrieb:
Da es für Flux noch keine integrierten Nodes für ControlNet u.s.w gibt, behelfen sich aktuell wohl viele mit Img2Img-Konstruktionen, d.h. es wird wie gewohnt ein Bild in SD15/XL gerechnet und das Ergebnis dann VAEencoded in einen Flux- CustomSampler überführt, mit kleinen bis mittleren Denoising-Werten. (...)
Ein Grund für SDXL im Upscaleprozess ist für manche ggf. dadurch noch realistischere Haut hinzubekommen, oder dass weniger Ressourcen verbraucht werden. Da Flux desöfteren noch etwas airbrushed/polished aussehen kann, je nach Foto setting(!); bei Film/Analog/Footage usw) sieht es aber dann doch wieder extrem realistisch aus ohne weitere Mittel. Hier hat jemand ein paar Upscaleprozesse verglichen: https://www.reddit.com/r/StableDiff.../flux_dev_upscaling_various_methods_compared/

Ich habe mich gestern erstmal mit SwarmUI beschäftigt und damit noch ein paar Bilder generiert und kurz vorm Schlafengehen auch Upscale mit latent und Upscalern damit gemacht, das war noch zu wenig um aussagekräftig zu sein. Habe schon sehr schöne Bilder mit diversen Upscalern gesehen. Neues Level überall ^^ Inpainting mit FLUX habe ich auch schon erfolgreich gemacht in SwarmUI in dem Fall.
 
Zuletzt bearbeitet:
Forge ist seit einer Weile bei mir nicht mehr lauffähig. Irgendwann wurden einige CUDA checks hardgecoded die sich auch trotz --skip-cuda-test nicht ohne Weiteres beheben lassen. Vielleicht übersehe ich etwas Offensichtliches, aber ich hab da noch keine weitere Zeit für aufgewendet. A1111 läuft nach wie vor tadellos.

Edit: Könnte aber auch eine akute Regression wegen der BitsnBytes Implementierung sein. Vielleicht wird das noch angepasst.

Code:
File "/media/scratch/StableDiffusion/Forge/stable-diffusion-webui-forge/backend/memory_management.py", line 1084, in can_install_bnb
    cuda_version = tuple(int(x) for x in torch.version.cuda.split('.'))
 
Zuletzt bearbeitet:
Es war auch zwischenzeitlich ein "verlassenes" Projekt. Weshalb es auch reForge gab, die versucht haben, es am Leben zu halten (Fork). Seit ein paar Tagen wird Forge aber vom Macher auf Vordermann gebracht, inkl. FLUX-Integration. Ich teste es grade.. Habe meine alte Version upgedated. Es kommen noch ein paar Errors bzgl. Extensions, aber es startet. Jetzt teste ich gleich mal FLUX damit..
 
Bei mir kommt in Forge mit Flux aktuell nur 'TypeError: 'NoneType' object is not iterable'
Versucht habe ich es mit zwei von den Checkpoints, die Flux + Clip + VAE in einer Datei kombinieren.

Außerdem wurde an der UI so viel rum gefummelt, dass ich erstmal den VAE Selector wieder finden musste...
 
Rickmer schrieb:
Bei mir kommt in Forge mit Flux aktuell nur 'TypeError: 'NoneType' object is not iterable'
Das ist laut GitHub wohl ein Bug mit xformers

Code:
Update Aug 11: Hey everyone it seems that xformers are somewhat broken now - if you see "NoneType object is not iterable", just uninstall xformers. I will find a fix later when I get more free time.
 
SpartanerTom schrieb:
Das ist laut GitHub wohl ein Bug mit xformers
Ahso
Da ich weiterhin xformers mit SDXL und SD1.5 nutzen will warte ich lieber auf einen Bugfix...
 
  • Gefällt mir
Reaktionen: SpartanerTom
Ich muss bei mir demnächst mal Ausmisten. Hab allein 96GB Python Umgebungen, weil eine Zeit lang viele Projekte die Unsitte hatten hardgecodede requirements zu erfordern und ich keine Lust hatte ständig Packages zu swappen.

1723369490229.png


:rolleyes:
 
Rickmer schrieb:
Bei mir kommt in Forge mit Flux aktuell nur 'TypeError: 'NoneType' object is not iterable'
Versucht habe ich es mit zwei von den Checkpoints, die Flux + Clip + VAE in einer Datei kombinieren.

Außerdem wurde an der UI so viel rum gefummelt, dass ich erstmal den VAE Selector wieder finden musste...
Ich meine mich zu erinnern, dass bei forge andere Verfahren xformers überflüssig gemacht hatten. VAE usw. ist bei den aktuell verfügbaren FLUX checkpoints für forge (nf4 fp8) schon built in. Das aktualisierte GRADIO Interface ist echt gut, insbesondere für inpainting (auch sketch) funktioniert es sehr gut und mit Flux habe ich bisher alle Hände gefixt bekommen, wenn sie nicht eh schon gut (von Beginn oder nach upscale waren), was krass ist. Hoffe Forge wird weiter aktualisiert, es funktioniert zb mein geliebter image browser noch nicht. Momentan schwanke ich zwischen SwarmUI und Forge für Flux Nutzung. Klar ich bin im Flux-Fieber ^^ für anderes, controlnet ip adapter etc. bei mir weiterhin der bewährte A1111.

Update: Neues VAE System und FP16 support in Forge.
und neue Version des NF4 Models
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Ayo34
  • Gefällt mir
Reaktionen: SpartanerTom
@MechanimaL Danke aber ich habe weder Windows noch ZLUDA. Außerdem sind die ROCm Binaries und Pytorch in dem Beispiel steinalt. Die Performance ist im direkten Vergleich zu meiner 6800 auch nicht berauschend, auch wenn ich FHD wahrscheinlich in meinen VRAM gar nicht reinbekommen würde.

Aber womöglich für andere Windows Nutzer trotzdem interessant, weil da der Support außerhalb von DirectML noch sehr mäßig ist.

ZLUDA werde ich mir trotzdem irgendwann mal anschauen. Scheint ja trotz der Vorgeschichte nicht ganz fallen gelassen worden zu sein und ist ein drop in replacement für die CUDA compilierten Pytorch packages.
 
  • Gefällt mir
Reaktionen: MechanimaL
Damit es nicht langweilig wird. Workflow ist im PNG eingebetet. ComfyUI ist voraussetzung.

ComfyUI_temp_foevu_00001_.png
 
  • Gefällt mir
Reaktionen: Kaulin und Ayo34
Ich habe zuletzt mit Flux in Forge experimentiert, da das Xformers Problem mittlerweile gefixt (oder zumindest umgangen?) ist.

Einmal was sich bei Auflösung machen lässt - wobei ich schon nach einer Verdoppelung schon aufgeben musste. 32GB RAM reichen einfach nicht. Ich wollte eigentlich nicht mehr in die AM4 Plattform investieren, aber die 55€ habe ich jetzt doch noch ausgegeben. Die zweite Verdoppelung hatte dann das ultimate Upscale Skript genutzt.

Fragt nicht wegen dem Motiv... das war eine absichtlich wilde Zusammenstellung um das Prompt-Verständnis ein wenig zu testen.
00006-3874841881.jpg


Was mir bei diesem Bild in Flux on Forge aufgefallen war:
00018-3870195128.png
Warum sind bei langsamen Gradienten in der Farbe (hier im Hintergrund) immer Bildartefakte zu sehen? Ist das irgendwas Flux/Forge spezifisches, oder wurde Flux mit zu vielen Bildern mit Kompressionsartefakten trainiert?...


Ich hatte dann noch mit LoRas experimentiert, insbesondere mehrere gleichzeitig... klappt.
Also abgesehen davon, dass mir der Arbeitsspeicher dann noch häufiger ausgeht. Jedesmal wenn der überläuft sind das dann ein paar Dutzend GB mehr Writes auf der SSD (bei meiner SSD kein Problem) und das System ist für einige Minuten komplett unreaktiv (nervig).

00011-4131336987.png

Ich bin froh, dass es mit Flux jetzt ein Modell gibt, das insbesondere in Sachen Promptverständnis liefern kann, wo SD1.5 und SDXL versagt haben.

Flux scheint auch SD3 komplett das Wasser abgegraben zu haben. Allein schon wenn ich schaue, wie viele LoRa es für Flux vs SD3 gibt...
 
  • Gefällt mir
Reaktionen: Kaulin
Ein paar Bilder bezüglich Text mit Imagen 3 (Gemini) und Ideogram 2:

image_fx_ (1).png
image_fx_ (3).png
Gemini3-1.jpg
ComfyUI_00270_.png
ComfyUI_00268_.png
 
  • Gefällt mir
Reaktionen: Kaulin
Zurück
Oben