AI

Tady AI

Ruined Foocus 2 – pokročilá nastavení

Odkazy v článku odkazují na příslušnou část videa. Při čtení můžete otevřít video pro “náhled” přesně v tom čase, ke kterému text odkazuje.

Odkazy ke stažení:
Ruined Fooocus
Upscalery na Hugging Face
Frankenstyle Patchwork LoRa
Obě ruce pravé LoRa – Perfect Hands

Druhá část o Ruined Fooocusu se bude věnovat pokročilejším možnostem a nastavením tohoto programu. Jestli jste neviděli první část, asi bude lepší začít tam.
Většinu toho, co budu ukazovat, si můžete sami najít v dokumentaci na Githubu, a já vyberu to, co mi přijde důležité a užitečné. Pokud se vám něco zdá příliš složité nebo nepotřebné, jednoduše přeskočte do další kapitoly tohoto videa, protože ta bude zaručeně o něčem úplně jiném.

Ruined Fooocus umí Interrogate CLIP, vyšetřovat obrázky. Ve Stable Diffusion se v obrázku samotném nachází metadata, která obsahují kompletní prompt i nastavení použité při generování. Hodíte-li na hlavní okno Ruined Fooocusu obrázek vygenerovaný Ruined Fooocusem, dostanete prompt, negativní prompt, model, a všechna nastavení… Tady vidíte jeden z hlubokých nádechů, generovaný před pár týdny.
Ruined Fooocus umí vytvořit i prompt pro obrázek generovaný někde jinde, je to podobné jako funkce /describe v Midjourney.
Beru obrázek vygenerovaný v Leonardu, vidíte originální prompt, negativní prompt a velikost.
Ruined Fooocus vygeneroval nějaký prompt, ze kterého by měl dokázat vytvořit podobný obrázek. Těch 8 8 8 8 na konci asi nebude veřejný DNS Googlu, ale nějaký tajný kód pro krájení zeleniny.

Pro obrázek právě vygenerovaný tuto informaci taky vidíte v tabu Info. Vaše geniální prompty tedy nejsou ztraceny, aspoň ne dokud máte vygenerovaný obrázek a nástroj, kterým byl vygenerován.

Generování obrázku podle jiného obrázku jako předlohy se dělá v Power Up, tabu pro mocné uživatele.
Je to volba Img2img, přetahuju elektroluminiscentní segwaye do části Input Image, a chci obrázek z muzea v podobném stylu, ale s voskovými figurínami. Prompt píšu takto krátký a nechám se překvapit.
A dostávám podobný záběr, psychedelické barvy zmizely a objevily se nějaké figuríny. Proč ne.
Je tu samozřejmě i Inpainting. Stačí zatrhnout tuhle možnost v pravém horním rohu hlavní fotky a mám tu nástroje. Sliderem můžu měnit velikost štětce. Zamaluju obličej a ruce a vydávám jasný příkaz: Jedna žena.
A vskutku se zhmotňuje jeden ženský obličej a ruce patrně v rukávníku z agresivní vydry.
Předpokládám, že tyhle dva nástroje jsou jasné a není potřeba nějak víc vysvětlovat, jak se maluje do obrázku.

Dál tu máme Upscale. V defaultu je upscaler, který není špatný, ale… Já mám svůj oblíbený, vidíte jeho název – 8x_NMKD-Typescale_175k, odkaz je pod videem. Pokud přetáhnete fotku do Input Image a zvolíte Upscale, nemáte žádné možnosti a obrázek se upscaluje defaultním Upscalerem, i když už máte stažený jiný.
Já mám tento Upscaler v RuinedFooocus/models/upscale_models/ vidíte, že tu máte instrukci: ukládejte upscalery sem. Jiný než default upscaler přinutím pracovat takhle: Místo Upscale vyberu Custom, tady jsou ty samé možnosti, několik Controlnetů, img2img a Upscale. Krom toho, že můžu nastavit další parametry, tak dole můžu vybrat, který ze souborů se použije.
A tady je výsledek. Originálně generovaný obrázek má 1344 pixelů na šířku, default Upscaler vytvořil obrázek o šířce 5420 pixelů, a můj Upscaler dodává 10840 pixelů na šířku a výrazně lepší kvalitu, méně těch digitálních artefaktů… Můžete si svoji vysněnou ženu vytisknout na billboard a obdivovat krásu její pihovaté tváře, uhrančivý pohled jejích zelených očí a dokonalou barvu jejích vlasů.

Pokud byste se raději věnovali nějaké intelektuální zábavě, pak můžete zkusit třeba velmi spoře oděné přebornice v šachu. Nebo klidně přeborníky v šachu, realistické, animované, renderované… No, když říkám realistické, tak to berte s rezervou, obvykle asi tak třiceticentimetrovou a větší rezervou. Ano, tyto modely trénují sami uživatelé a trénují je prakticky k čemukoli… Jak si asi velmi rychle všimnete při procházení Civit.ai
Při generování žádná cenzura neexistuje, cenzura těchto obrázků byla vytvořená mnou při editaci videa, mně se tenhle Youtube kanál docela líbí a hodlám si ho nechat.

Můžete si přidat vlastní poměry stran generovaných obrázků. Buďte rozumní, modely jsou trénované na určitou velikost obrázků, obvykle relativně malou, pokud budete tlačit generování do příliš velkých velikostí, polezou vám z toho nesmysly, zdeformované tváře, dvouhlaví lidé a podobně. Zopakuju to znovu, pro ty úplně nové: Čtěte dokumentaci modelu, chcete-li větší obrázek, generujte do malé, doporučené velikosti, a upscalujte upscalerem pouze ty obrázky, které se vám budou hodit.
Dle dokumentace Ruined Fooocusu máte editovat settings/resolutions.json
Podle mě to funguje tak, že se hodnoty berou ze souboru resolutions.default, takže si ho třeba zazálohujte.
Přidávám si poslední dva řádky do souboru, který pochopitelně upravuju Notepadem nebo nějakým chytrém editorem kódu, ne ve Wordu. První hodnota na řádku je název, třeba 16:9 HD, a pak přidávám šířku a výšku. Poslední řádek nemá čárku.
Po restartu vidím, že se přidala má dvě další nastavení.

Celé nastavení v tabu Settings si můžete uložit hned nahoře v Performance, dejte tomu jméno a zmáčkněte Save. Mně to funguje tak, že je potřeba to nastavení uložit až poté, co s ním vygenerujete obrázek, ne před tím.

A jedno nastavení pro ty, kteří se nepotkávají se Stable Diffusion poprvé. Pokud jako já máte asi milion gigabajtů a třicet jiných checkpointů na úplně jiném disku, než kam jste si nainstalovali Ruined Fooocus, tak vás asi, stejně jako mě, nesmírně rozčiluje ukládat najednou modely někam jinam. Určitě je nějaké nastavení, kde můžu zadat cestu někam jinam a sdílet modely s Automatic 1111, ComfyUI a všemi ostatní Stable Diffusion nástroji chaoticky nainstalovanými na mých několika discích ?
Symbolický link prý skvěle funguje na Linuxu, na Windows sice vytvořím symlink, ale Ruined Fooocus si ho nevšímá.
Lze upravit soubor „path.json“ v RuinedFooocus/settings/, nicméně nelze v něm udělat seznam několika položek pro jednu hodnotu. Musíte si zatím zvolit jen jednu cestu. Pokud na tomto novém místě nemáte stejnou kopii sd_xl_base… safetensor, tak se tento 6.5 GB soubor začne opět stahovat při příštím startu.
Je to na Githubu jako požadavek na autory, aby bylo možnost vložit seznam více lokací, ale zatím to nelze řešit nijak jinak.
Ruined Foocus ve složce modelů podporuje podsložky, takže tam nemusíte mít takový… holubník, jako tam mám já.

Wildcards. Seznamy možností, ze kterých se losuje při generování. Už jste to viděli v minulém díle, kdy se generovaly náhodné prompty. Ty prompty nejsou až tak náhodné, v adresáři RuinedFooocus/wildcards_official/ najdete seznamy slov, která se do promptů dosazují. Takový seznam si můžete udělat sami, patří do složky RuinedFooocus/wildcards, kde už najdete soubor colors.txt, jsou v něm nějaké základní barvy. Můžete si zde vytvořit vlastní soubor, já si ho pojmenuju mojebarvy.txt a vložím do něj nějaké odstíny modrých a zelených.
A jak se používá soubor v promptu?
Napíšete si prompt, ale místo barvy do něj vložíte dvě podtržítka, název souboru a další dvě podtržítka. A generujete. Při každém generování se náhodně vybere jedna z položek.

Wildcards lze také použít při generování více promptů najednou.
Víc promptů na jedno generování dostanete, pokud napíšete prompty za sebou do okna pro text promptu, a oddělíte prompty třemi pomlčkami mezi sebou. Já použiju běžný prompt, chci zářící bioluminiscentní nudle v misce na stole v temné kuchyni, v záběru zespodu, a udělám čtyři varianty, obrázek červených, růžových, zelených a oranžových nudlí. Ačkoli mám nastaveno generování jednoho obrázku, dostávám čtyři, pro každý prompt jeden.
Taky můžu dál vytvářet se stejným Seedem, najdu ho v tabu Info, zruším náhodný Seed, zadávám jeden konkrétní Seed… a dostávám čtyři různé obrázky v podobném stylu, s nudlemi ve čtyřech různých barvách podle promptu.

A nakonec práce s LoRa soubory. LoRa jsou malé, specificky trénované modely na nějaký vizuální styl, kterým ovlivňují velký, základní model, checkpoint, který používáte. Na rozdíl od checkpointu, který má, jak už jste viděli, třeba 6 GB dat, LoRa obvykle mívá desítky nebo stovky MB, a nedá se použít samostatně, ale jen ve spojení s nějakým modelem.
Při generování se používá buď v promptu, kdy do špičatých závorek napíšete slovo nebo se dá naklikat v Ruined Fooocusu v tabu pro mocné uživatele.
Nejdřív si takový soubor opatřím, třeba stáhnu z Civit.ai. Tady mě zaujal záplatovaný Frankenstein, stahuju a ukládám do RuinedFooocus/models/lora kam soubor patří.
Vidíte na stránce modelu, že si můžete zkopírovat triggerword, spouštěcí slovo, a přečíst si přátelské rady autorů, jakým způsobem soubor použít.
První způsob je klikací. Pokud LoRa není vidět hned po stažení, je potřeba načíst složku znovu, vybrat správný soubor… a tady se vám i vypíše triggerword. Hodnota 2 vedle vybraného souboru je váha.
Druhý způsob je napsat všechny LoRa soubory, které používáte do promptu, a v tomhle případě ještě autoři doporučují pár slov navíc – triggerword a „záplatovaný sešitý dohromady“
Očekávejte, že budete muset trochu experimentovat s váhou a psaním slov do promptu, protože tohle je tak trochu míchání magických lektvarů dohromady.
Ruined Fooocus vám umožní naklikat si až 5 LoRa souborů, ale v promptu jich můžete použít víc.
Tady mám LoRa soubor na pěstění rukou, tedy opravy příliš mnoho prstů a kloubů, je to LoRa jak pro Stable Diffusion 1.5 tak pro SDXL. Používám různá nastavení v promptu a další různá magická slova, a nějak to funguje. Rozhodně ne ideálně, ale je to lepší než drátem, nebo sedmým prstem, do oka.

A tip pro ty, co to vydrželi až do konce. Tlačítko Generovat není potřeba mačkat, můžete použít klávesy Ctrl+Enter, což už možná znáte z jiných prostředí typu ComfyUI.

Ruined Fooocus je podle mého dobré seznámení se s možnostmi Stable Diffusion, zvlášť pokud sem přicházíte s nějakou zkušeností z uživatelsky příjemnějších, a často placených nástrojů.
Nároky na generování obrázků dnes splňuje i každý novější notebook, máte-li k dispozici desktop, pak jste velmi pravděpodobně za vodou.
Zároveň to berte jako vstupní test do světa open-source: světa neomezených, uživateli tvořených nástrojů. V tuto chvíli platí, že pokud se nedokážete prokousat úvodním dobrodružstvím v podobě čtení instrukcí k základním funkcím nástrojů a modelů, a poté formulovat svoje požadavky na stroje tak, že vás stroje budou obsluhovat, a ne trápit… Pak je asi rozumnější zaplatit za pohodlné uživatelské prostředí, které zvládnete bez učení.
To se časem jistě změní, ale zatím platí, že buď někomu platíte a někdo za vás udělá tu špinavou práci a nastaví vám svoje pravidla, nebo to máte zadarmo, podle vlastních pravidel, ale musíte se něco naučit.

Moje návody budou i v budoucnu zaměřeny na obě tyto možnosti, jak open-source pro hračičky, tak pohodlí pro ty, kteří chtějí jen chrlit obrázky.