Magazín · Téma · ve čtvrtek 30. 1. 2025 15:18
Vlastní AI? Stačí jen grafická karta...
Článek vznikl v rámci placené spolupráce.
Umělá inteligence jde každým dnem dopředu. Není to tak dlouho, co společnost NVIDIA konečně oznámila karty nové generace, které ještě více sází právě na AI. Ať už jde o generování snímků nebo upscaling. Pro hráče a hry jde zkrátka o budoucnost, abychom dosáhli co nejlepších výsledků a zároveň mohli využít nejnovější grafické technologie – a zejména tedy ray-tracing nebo přímo path-tracing.
Tahle neustále vyvíjená cesta, kterou umělá inteligence kráčí, by se ale o něco lépe dala přirovnat spíše k řece. Občas se rozdvojí a jede dvěma směry, ale rovněž se nesmí zapomínat na ty úplně první kroky, na kterých se také stále pracuje. Takzvaná generativní AI sice v dnešní době zvládá být velmi solidním komunikačním pomocníkem, dokáže generovat kvalitní videa nebo hlasy; ale jak si ještě možná dobře pamatujete, vše to začalo u obrázků. Právě na ty se dnes se společností Nvidia chceme podívat.
Zdroj: NvidiaNvidia na CES 2025 představila GeForce RTX řady 50 s DLSS 4. Odhaleny české ceny
Generování obrázků asi využil kdekdo z vás. Ať už skrze uzavřené platformy, jako třeba v ChatGPT nebo novějších verzích Photoshopu, tak i přes open-source modely jako je třeba Stable Diffusion, který patří mezi ty zcela nejoblíbenější. Open-source modely mají hned několik výhod. Tím, že jsou rovněž lokální, zajišťují jak soukromí, tak modularitu. Dají se více nastavit, lépe trénovat, detailněji měnit, a protože převážně nepodléhají pravidlům nějaké společnosti, nemají ani tendenci moc věcí cenzurovat. Všichni asi víme, co to znamená…
Stable Diffusion, jak už tedy padlo, je tím nejoblíbenějším z mnoha důvodů. A jedním je i jeho dostupnost a obecná rychlost. Pro jeho využití i testování využijeme populární lokální webový front-end Automatic1111. Po jeho instalaci skrze Github ale ještě nekončíme; teď je potřeba stáhnout samotný model. Na to využijeme stránku Hugging Face – shromaždiště všeho důležitého ohledně generativní AI. Kde si mimochodem můžete velmi jednoduše vyzkoušet nejen modely, které si dnes ukážeme, ale i další. A to rychle a zdarma, aniž byste se museli trápit tím, že na to třeba nemáte aktuálně silný počítač.
A jde nejen o samotný Stable Diffusion, ale také třeba Gemini Coder, který vám v rychlosti vygeneruje jednoduchou aplikaci. Ale o tom a dalších podobných věcech zase případně někdy jindy. Teď se pojďme zaměřit především na to generování obrázků. Pro základní testování pojďme najít některé původní verze Stable Diffusion. V první řadě verzi 1.5 a poté o něco novější SDXL.
Ty, jakmile máme ve složce s modely, můžeme i bez nutnosti dalšího nastavování otestovat. A proč to rovnou neotestovat na něčem herním. Začneme něčím snadným, a to je se Stable Diffusion 1.5 Lara Croft v egyptské kobce bez dalšího popisu. Doba generování byla doslova na mrknutí oka, ale s tím se dá počítat vzhledem k velikosti výsledného obrázku 512 na 512 pixelů. Pojďme se také podívat, co ten stejný prompt udělá s lepším nastavením nejen rozlišení, ale i dalších věcí. Jak si můžete všimnout na obrázcích níže, tak je to docela noční můra. Velmi rychle jsme narazili na zásadní limitaci Stable Diffusionu 1.5 při pokusu o generaci obrázku ve větším rozlišení. Protože neví, jak lépe ho zaplnit, vygeneruje více postav i přesto, že to absolutně nedává smysl.
Výsledek, jak sami vidíte a snad uznáte, je přinejlepším dost neuspokojivý, a především konzistentně hrozný. Obzvlášť s tím, že generování trvá půl minuty. Snížení rozlišení na předešlých 512 × 512 pixelů sice vyprodukuje lepší výsledek, ale kombinace nízkého rozlišení, a přesto ne moc dobré generace zkrátka nevytváří nic, co by stálo za řeč.
Zkusme tedy přejít na novější Stable Diffusion XL. Stejné nastavení, stejný prompt. Generování obrázku i s rozlišením 512 × 512 pixelů trvá o něco déle – pár vteřin – a výsledek není úplně o nic lepší. Vygenerované obrázky jsou sice variabilnější, ale to rovněž vytváří mnohem více prostoru pro chyby nebo výsledky, které vůbec neodpovídají tomu, co bychom si přáli. Paradoxní je, že s vyšším rozlišením – tedy testované Full HD – jsou obrázky oproti předchozí verzi Stable Diffusion i onomu nižšímu rozlišení výrazně konzistentnější, kvalitnější a generování i o průměrně pět vteřin rychlejší. Častokrát generovaný výsledek stále ujde, ale tu a tam je vidět, že už se to blíží nějakému celkem dobrému výsledku.
Zde tedy uvedeme ještě další možnosti nastavení, jako je samplovací metoda, fixování a další věci. Na jejich vysvětlení není dnes bohužel čas, protože by to samo vydalo na další články, ale stručně řečeno se tím více ladí, jak moc se má model jednotlivými kroky generování zabývat a jaký použít algoritmus. Po troše šťourání jsme po minutě dostali (druhý) obrázek níže. V něčem lepší a v něčem horší výsledky, ale stále daleko od toho „dokonalého“ výsledku, po kterém toužíme.
Stable Diffusion XL vyšel v polovině roku 2023 a jeho hlavní předností byla správnější generace končetin a nativní generace obrázků v rozlišení 1024 × 1024. Do určité míry tak naše dosavadní testy nejsou reprezentativní vůči tomu, na co byly modely stavěné. Ale to má svůj důvod, protože teď se podíváme na loňský Stable Diffusion 3, potažmo jeho vylepšenou verzi 3.5.
K tomu ale budeme rovněž muset přejít na lepší front-end, a to konkrétně ComfyUI. Jde o něco složitější, ale rovněž i modulárnější platformu pro řešení generativní umělé inteligence, která nám dovolí nejnovější verze Stable Diffusionu používat.
S trochou základního nastavení se můžeme na výsledek po chvíli čekání, nějakých zhruba 25 vteřin s medium verzí modelu, rovnou podívat (viz níže). Jak sami můžete vidět, výsledek je… jakýsi. Ale to má jednoduchý důvod. Celou dobu totiž v rámci našeho promptu používáme pouze jednoduchou větu bez většího množství detailů a popisů. To je něco, na co je nutné pamatovat. Pokud tedy chceme přesnější výsledek, je potřeba i přesnější popis. A zde následně přichází spousta iterací a neustálého přepisování, dopisování a měnění nastavení, abychom se dostali k něčemu, co bychom považovali za použitelné. Tím se postupně zvyšuje i čas generování a z nějaké půl minuty se dostaneme klidně i ke dvěma minutám a výš. Ale výsledek za to postupně stojí víc a víc.
Je však na čase přejít k tomu hlavnímu. FLUX je nový generativní model vydaný koncem minulého roku, který má za cíl posunout hranici zase o něco výš. A toho chce dosáhnout hned několika způsoby. Pojďme to tedy zkusit na nejlepší veřejně dostupné verzi – Flux.1 [DEV]. Na to je potřeba v ComfyUI zase trochu jiné nastavení, naštěstí se dá i velmi snadno najít na internetu. A vyzkoušíme na něm ve stejném rozlišení náš stejný, dosavadní vylepšený prompt.
Oproti našemu poslednímu obrázku nám to vygenerovalo sice dvakrát rychlejší výsledek, ale kvalitou horší. Protože předtím jsme nasadili kvalitu opravdu vysoko a tady jsme ji tolik neřešili. Pokud se ale zaměříte na přesnost samotného generování, velmi rychle si všimnete, že byla vlastně přesnější a více odpovídá tomu, co jsme chtěli. Rovněž jsme zkusili nastavit počet samplovacích kroků z 20 na 150. Výsledkem je mnohem lepší obrázek, který v podstatě už dokonale vyobrazuje to, co jsme umělé inteligenci zadali. I přesto že generace trvala mimořádně dlouho, a to necelých 9 minut. Pojďme tedy paradoxně ještě o krok zpět.
Celou dobu všechna generování testujeme na grafické kartě NVIDIA GeForce RTX 4080, která disponuje 16 GB grafické paměti. Právě ta, jinak řečeno VRAM, je v podstatě alfou a omegou toho, co vás na výkonu generativní AI zajímá. Ať už se bavíme o generování obrázků, textů, zvuků a čehokoliv dalšího. DEV verze modelu Flux.1 patří mezi náročné a 16 GB VRAM v kombinaci se 32 GB klasické RAM nemusí stačit pro úplně nejrychlejší výsledek. Přesně tak, jak jsme teď mohli vidět. Velkou roli v tom má i těch 150 kroků, které, zcela upřímně, jsou zbytečný přestřel.
Jenže zatímco třeba Stable Diffusion potřebuje vyšší počet kroků, aby dosáhl dobrého výsledku, Flux si poradí i s menším počtem. A to souběžně znamená rychlejší generaci. Pojďme tedy s pouhými čtyřmi kroky a jinak stejným promptem vyzkoušet méně náročný Schnell model Flux.1 a snížit preciznost floating pointu ze 16 na 8. Nemusíte úplně vědět, co to znamená. V praxi to uvidíte hned, protože na to už postačí grafická karta s 8 GB VRAM, což má dnes téměř každá. Za pouhých 13 nebo 14 vteřin jsme dostali víceméně solidní obrázek. Ne každý je perfektní, ale při větší sérii generací uvidíte, že stačí jenom chvilka, abychom se dostali tam, kam předtím za několik minut. A to je ta kvalita i obecně stále lepší.
Jako poslední nám zbývá takové všeobecné porovnání. Vytvořili jsme několik specifických a detailních promptů k otestování všemožných promptů jak na Stable Diffusion 3 Large, tak následně FLUX.1 v DEV i SCHNELL verzi a změřili jejich výkonnost i kvalitu.
Poznámka: Podívejte se na naše video pro více srovnání.
Jak můžete obecně sami vidět, FLUX 1 celkově nabízí přesnější výsledek za stejný nebo v některých ohledech i trochu rychlejší čas než například Stable Diffusion. Jde tak o skvělý krok kupředu pro generování obrázků. A ano, občas se netrefí nebo není výsledek tak perfektní, jak by možná mohl být. Je ale nutno brát na paměti, že naše nastavení je víceméně základní a výsledkem je to, čeho sami můžete dosáhnout bez větších zásahů. Pokud bychom si s tím opravdu vyhráli, dá se použít více iteračních kroků, jiné denoisery, takzvané Lory, upscaling, in-painting, jiné samplery a schedulery k dosáhnutí jiných vizuálních stylů a hromada dalších algoritmů a funkcí k dosažení perfektního výsledku. Ano, generování se pak protáhne, ale pokud si vzpomenete, že dříve jen zlomek kvality trval několik minut, to, kam jsme se v posledních letech posunuli, obzvlášť v kombinaci s hardwarem, jako jsou právě karty od Nvidie coby průkopníkem umělé inteligence, je neuvěřitelné. No ne?