NVIDIA před časem představila platformu NIM a s ní i AI Blueprints – připravené pracovní postupy pro nasazení umělé inteligence. Usnadňují zprovoznění modelů pro AI i bez znalosti programování, lokálně či v cloudu. Na blueprintu, který propojuje Blender, ComfyUI a modely FLUX v nástroj, s nímž budete mít lepší kontrolu nad generováním obrázků pomocí AI, si celý postup vyzkoušíme a přiblížíme si, jak blueprinty fungují a jak se s nimi pracuje.
Jak to funguje?
S blueprintem 3D Guided Generative AI můžete s pomocí 3D softwaru Blender připravit s maketami trojrozměrnou kompozici, z níž se automaticky vygeneruje hloubková mapa, která slouží jako podklad pro model generativní AI. Doplníte to textovým promptem a díky propojení Blenderu, ComfyUI a modelu FLUX pro generování obrázků můžete začít generovat fotorealistické výstupy, které budou na vstupu kombinovat scénu ve 3D vytvořenou v Blenderu s textovým zadáním, jak má vypadat generované prostředí.
V blueprintu je připravená i ukázková scéna pro Blender s grafem uzlů. Hloubková mapa z Blenderu vstupuje do uzlu Depth Conditioning (podporovaného modelem FLUX.1-Depth), který ji použije jako kontrolní vstup pro generování. Současně textový prompt vstupuje do textového uzlu. Dále v rozhraní nastavíte ostatní parametry, které ovlivňují generovaný obrázek: rozlišení výstupu, počet difuzních kroků (např. 30), seed (pro náhodnost vs. reprodukovatelnost), vlivu hloubky a textového promptu na výsledek. Všechny vstupní informace a parametry jsou pak předány generativnímu modelu.
Scénu si následně přebere mikroslužba NIM pro generativní model FLUX.1. Ten běží uvnitř NIM jako kontejner optimalizovaný pro podporovaná GPU – aktuálně jsou to GeForce RTX 5090, GeForce RTX 5080, GeForce RTX 4090, GeForce RTX 4080, GeForce RTX 4090 Laptop a NVIDIA RTX 6000 z generace Lovelace.
Vygenerovaný obrázek se pak přes pipeline v Comfy UI vrátí zpět do blenderu a zároveň uloží na zadanou cestu na disku. Výsledek vidíte přímo v Blenderu okamžitě po vygenerování a podle potřeby můžete libovolně měnit textové zadání nebo upravovat 3D scénu (přesouvat objekty, měnit jejich velikost, přidávat je, ubírat nebo měnit úhel kamery) a znovu spustit generování. Díky tomu lze rychle zkoušet různé kompozice, aniž byste museli ručně exportovat výstupy z Blenderu a vkládat je do rozhraní pro FLUX.1.
Blueprint existuje aktuálně ve dvou vývojových větvích – main a bugfix. Verze main je tři měsíce stará a odkazy na některé z repozitářů už nejsou funkční. Aktivní vývoj probíhá u větve bug_fix, která opravuje cesty k nefunkčním repozitářům a její vývojáři pracují i na doplnění dalších funkcí, jako je generování 3D modelů na základě textového promptu. Více se toho instaluje už v úvodu.
Celé řešení v hlavní větvi je sestavené z následujících komponent:
- Blender 4.2 LTS – slouží k sestavení 3D scény a interaktivnímu ovládání kamery. Z 3D scény generuje hloubkovou mapu pro AI (pomocí scriptu) a umožňuje uživateli vizuálně rozvrhnout kompozici
- ComfyUI – Open-source rozhraní s uzly pro generativní modely. V blueprintu zajišťuje řízení řetězce úloh pro AI – zpracování vstupů/výstupů. ComfyUI funguje jako jádro, které spravuje tok dat mezi Blenderem, modely a výstupem
- ComfyUI BlenderAI Plugin – doplněk pro Blender, který propojuje Blender s ComfyUI. Umožňuje spouštět ComfyUI server přímo z Blenderu, předávat do něj data (hloubku scény, prompt) a případně importovat generované výstupy zpět do Blenderu
- FLUX.1-dev (Black Forest Labs) – model generativní AI pro syntézu obrazů. Sada modelů FLUX.1 zahrnuje varianty pro různé typy vstupů (hloubka, hrany apod.) – blueprint využívá FLUX.1-Depth, která při generování scény pracuje s hloubkovou mapou.
- NVIDIA NIM (Neural Inference Microservice) – Platforma NVIDIA pro provoz AI modelů jako mikroslužeb. V ukázkovém projektu byl FLUX.1 model zabalen do NIM kontejneru, který běží pod Windows v prostředí WSL2. NIM se stará o efektivní inferenci modelu – využívá TensorRT a kvantizované váhy modelu k akceleraci na GPU. ComfyUI komunikuje s kontejnerem NIM prostřednictvím speciálních uzlů (NIM nodes) – inicializuje kontejner, předá mu vstupy a získá výstup (obrázek).
- TensorRT – knihovna NVIDIA pro akceleraci AI inferencí na GPU. V rámci kontejneru NIM je nasazený model FLUX, který využívá optimalizace TensorRT (např. formát FP8/FP4 místo FP16 pro vyšší rychlost). Díky tomu inference běží výrazně rychleji – podle NVIDIA až dvojnásobnou rychlostí oproti nativní implementaci PyTorch.
- Hub Hugging Face – Úložiště modelů, odkud se automaticky stahují váhy modelů (FLUX.1-dev a varianty) při prvním spuštění. Abyste jej blueprint mohl automaticky stáhnout, musíte vygenerovat token Hugging Face API a přijmout licenční podmínky modelů (mimo jiné i to, že jej nebudete využívat komerčně).
- Další nástroje: Instalátor z Blueprintu doinstalovává také další potřebné komponenty: vložený přenosný Python, Git, knihovny Microsoft Visual C++ Redistributable (pro některé binární knihovny), a 7-zip (pro rozbalování archivů). Většina z těchto nástrojů nezbytných pro správný chod pipeline se instaluje automaticky spuštěním přiloženého skriptu.
Požadavky na hardware a instalaci
GPU: Vývojáři doporučují highendová GPU NVIDIA s architekturou Ada Lovelace nebo novější. Oficiálně jsou podporovány karty řady GeForce RTX 4080, 4090 a nová generace RTX 5080, 5090, případně profesionální RTX 6000 Ada. Minimem pro spuštění je RTX 4080 se 16 GB VRAM – blueprint vyžaduje alespoň tuto úroveň karty pro plynulý běh. Důvodem je využití formátů FP8/FP4, které starší architektury nepodporují, a obecně vysoké paměťové nároky modelu. Do 16 GB VRAM karta se model díky optimalizacím vejde, slabší grafiky měly problém s kapacitou pamětí či výkonem.
RAM: Doporučeno je minimálně 48 GB systémové paměti. Instalace a běh kontejneru s modelem i Blenderu a ComfyUI zároveň znamená, že systém musí mít dostatek RAM pro načtení modelových vah (desítky GB při FP16, resp. ~8–16 GB při kvantizaci), plus rezervu pro OS. (Ale nim jsem zprovoznil i na sestavě se 32 GB RAM).
Operační systém: Prostředí je koncipováno pro Windows 11. Nicméně model samotný běží v kontejneru pod WSL2 (Windows Subsystem for Linux)
Místo na disku: cca 150 GB. Nároky na místo se liší v závislosti na tom, které součásti se budou stahovat a jak bude Windows hospodařit s virtuální pamětí. Začínal jsem zhruba s 200 GB místa, po stažení repozitářů, virtuálních strojů, modelů pro AI a dalšího softwaru ubylo zhruba 110 GB a pak už záleželo na tom, kolik si systém odkládal do swapu. Větev bugfix je na místo na disku náročnější.
Požadavkem je mít zapnutou virtualizaci ve firmwaru desky (obvykle označená jako VT-x, AMD-V nebo SVM Mode), Windows a nainstalovaný WSL (Linux subsystem) s podpůrnými nástroji. Oficiálně je WSL uveden jako podporovaný „OS“, takže primární cílová platforma je Windows + WSL. (Teoreticky by šlo řešení zprovoznit i na plnohodnotném Linuxu, protože Blender, ComfyUI i NIM kontejnery existují i tam, ale instalační skripty a testování jsou zaměřeny na Windows.)
⠀









No, už jen zřídit multimodálního agenta nad celou platformou, který sám zvolí sadu odpovídající úkolu a vše zařídí na základě obecného uživatelského vstupu.
Na snímcích, co se vyznačují více detaily (okrasné prvky fasád, zábradlí), nebo jemnými texturami (jako mají například tkaniny) se zatím hodně podepisují ty upscalovací mezikroky, jako doslova probublávají. Pořád je to myslím nástroj spíše pro ty pixarovské (ghibliovské) obrázky. A teda pokud přežijete ten všudypřítomný nános kýče, ale možná to tak vnímám jenom já?
Je to povětšinou jak artworky z her. Otázka je, do jaké míry je to věc promptu a do jaké toho, na jakých datech se to trénuje.
Třeba ta podmořská scéna na druhém obrázku v poslední kapitole vypadá fotorealističtěji, ale promptem se mi nepovedlo dokopat ho k tomu, aby to nasvětlil jen jedním bodovým kuželem světla. Ještě víc jsem zíral na to, že mi na fontánu pod vodou pořád cpal tekoucí vodu.