Pokročilé možnosti generování obrázků pomocí OpenAI DALL-E 3 v ChatGPT Plus

Jestli chcete vědět, jak generovat skvělé obrázky pomocí nového modelu DALL-E 3, pak se vám bude hodit znát praktické zkušenosti, které jsem s ním v posledních týdnech nasbíral.

Uveřejněno

Rubrika

Autor

O novém modelu generování obrázků DALL-E 3 od OpenAIjsem tu psal již dvakrát (když nepočítám dílčí zmínky v dalších článcích):

Objevilo se ale několik zajímavých vychytávek a v posledním týdnu OpenAI udělala jednu nenápadnou ale užitečnou změnu, a tak si dovolím ještě jeden článek shrnující mé dosavadní zkušenosti.

AI školení – nové termíny a místa (Praha, Brno, České Budějovice)

Chcete dostávat tyto články na e-mail, aby vám nic neuteklo?

Novinka: náhodný „seed“ a možnost jej změnit

Nejdřív trocha vysvětlení – generativní model DALL-E vytváří obrázky na základě 3 parametrů:

  • DALL-E zadání/prompt – text, který jde z ChatGPT či Bing Chat do DALL-E modelu – pozor, obvykle je jiný než text, který jste použili ve vašem chatu – ty vaše zadání nejdřív upraví a vytvoří z něj zadání pro DALL-E. Konkrétní použitý prompt pro DALL-E zjistíte u ChatGPT po rozkliknutí obrázku. Můžete si nicméně vynutit použití přesného promptu, například zadáním create 1 image with this exact prompt „dog“.
  • Velikost / Poměr stran – DALL-E v ChatGPT umožňuje vyžádat si široký/vysoký/čtvercový obrázek (například zadáním „vytvoř horizontální obrázek“, jinak použije předchozí, takový jaký se mu bude hodit do tématu, nebo výchozí čtvercový.
  • Seed – zjednodušeně číslo mezi -2147483648 a 2147483647, které jednoznačně identifikuje „postup“, jakým bude/byl obrázek generován. Pakliže je stejný seed, prompt i poměr stran, vygeneruje model totožný obrázek. Bude-li stejný seed ale mírně odlišný prompt, mohou být obrázky vizuálně podobné. Stejný seed i prompt a odlišný poměr stran udělá vizuálně velmi podobné obrázky s jiným poměrem stran.

Přitom jak už jsem psal ve svém návodu, lišil se přístup DALL-E v ChatGPT a Bing Chat/Create.

  • DALL-E v ChatGPT Plus používal vždy seed s hodnotou 5000 a nešlo ji změnit. Tj. když jste chtěli udělat 4 obrázky, lišily se promptem. Když jste chtěli vygenerovat obrázek s přesným promptem „dog“, byl výsledek vždy totožný. Toto se v uplynulém týdnu změnilo.
  • DALL-E v Bing Chat/Create se pro všechny 4 obrázky používá stejný prompt, liší se však seed. Ten generují náhodně a nelze jej přesně nadefinovat. Stejně tak nelze vynutit ani přesný prompt ani jej zjistit (reálný je jiný než ten co tam píší).

Co se tedy přesně změnilo a jaký to má dopad? Nově DALL-E v ChatGPT Plus používá náhodnou hodnotu pro seed. Můžete si ji ale vynutit a chtít tak konkrétní a nebo podobný obrázek.

Proč a jak používat DALL-E seed v ChatGPT Plus

Nejprve si ukažme příklad na přesné zadání „dog“ s vyžádáním seedu 1, 2, 3, 4, resp. opačném pořadí ve druhém příkladě. Mimochodem – používám v těchto ukázkách angličtinu, jinak by mohl chat mé zadání přeložit s nějakým synonymem a výsledek by mohl být jiný.

Jak vidíte, obrázky jsou opravdu totožné, jen se liší pořadím, Můžete i seed ověřit („jaký seed má 2. obrázek…).

Změna formátu

Řekněme, že jste vygenerovali obrázek s nějakým konkrétním seedem a chcete jeho horizontální či vertikální podobu.

Jak se můžete přesvědčit, obrázky jsou velmi podobné – velmi podobné prostředí, úhel, pes, výraz… (srovnejte i s čtvercovou podobou výše).

create 4 horizontal images with this exact prompt „dog“, each with different seed: 1,2,3,4
create 4 vertical images with this exact prompt „dog“, each with different seed: 1,2,3,4

Podobný styl

Řekněme, že chcete na obrázku něco změnit – například výraz psa – opět můžete použít stejný seed a upravit mírně prompt.

create 4 horizontal images with this exact prompt „sad dog“, each with different seed: 1,2,3,4
create 4 horizontal images with this exact prompt „happy dog“, each with different seed: 1,2,3,4

Jak vidíte, v tomhle případě už došlo k výraznějším změnám, samotný požadavek na smutného/veselého psa ovlivnil i „náladu“ okolí fotky a pes je také jiný, ale u komplexnějších delších zadání, kde změníte jen jednu z dílčích charakteristik, to funguje obvykle lépe, viz příklad v další kapitole.

Přidání / změna předmětu

Podobně může fungovat doplnění či změna nějakého předmětu definovaného v zadání. Opět – lépe to funguje u komplexnějších zadání, kde měníte jen jednu z dílčích věcí.

create 4 images with this exact prompt „dog with ball in mouth“, each with different seed: 1, 2, 3, 4
create 4 images with this exact prompt „dog with bone in mouth“, each with different seed: 1, 2, 3, 4

Jak zjistit seed

Jak vidíte, využívání seedu se může dost hodit, ale musíte ho znát. Bohužel jej sám od sebe chatgpt nikde nepíše. Můžete jej ale zjistit tak, že buď rovnou při dotazu napíšete, ať vám seed sdělí (např. „vytvoř obrázek psa a napiš mi jeho seed“), nebo si o něj řeknete v následujícím zadání, tj. například „jaký je seed 2. obrázku?“. Pakliže jste mezitím už generovali nějaké jiné obrázky, můžete editovat zadání (ikona bloku a tužky vpravo od zadání) bezprostředně následující po vygenerovaném obrázku a místo něj se zeptat na hodnotu seedu.

Vytváření vizuálně podobných obrázků pomocí GPT-4 V

Možná byste chtěli udělat nějaký podobný obrázek nějakému, který už máte (ne nutně generovaný). Můžete využít kombinaci DALL-E s novým rozpoznáváním obrázků pomocí GPT 4-V:

  1. zapnete si Default mód v GPT-4 a pomocí ikonky obrázku vlevo v políčku pro zadání přidáte fotografii a řeknete, ať vám napíše detailní popis (česky, nebo anglicky „write me a detailed description of this image“)
  2. zkopírujete si popis obrázku, přejdete na DALL-E mód a řeknete mu, ať vám vytvoří obrázek přesně na základě následujícího zadání (a vložíte zkopírované zadání).

Výhoda je, že s tímto zadáním můžete pak obrázek upravovat a tedy například říct „stejný obrázek, ale udělej psa veselého“.

Originál (vygenerovaný pomocí „dog“ se seed:4 a ručně nahraný v Default módu ChatGPT se zadáním „write me a detailed description of this image“
create 1 image with this exact prompt: a majestic black and tan dog, likely a Bernese Mountain Dog, gazing intently at the camera. The dog’s vibrant orange eyes are a stark contrast to its black fur. It’s resting its white and brown paws on a wooden surface. The dog is positioned in the foreground, surrounded by an inviting spread of goodies. There’s a rustic brown mug, likely filled with a warm beverage, placed near the dog’s paw. Beside the mug is an array of sweets, including intricately designed chocolate candies that resemble pumpkins and neatly sliced orange fruit, possibly dried oranges. In addition to this, a small wicker basket holding a bunch of purple grapes is also within reach of the dog.
The background paints a serene mountain scene. A couple of traditional wooden houses with sloping roofs can be seen nestled amidst lush green pastures. Towering over the houses are misty mountains, with their peaks seemingly touching the clouds. The entire ambiance evokes a sense of calm and coziness, reminiscent of a quiet morning in a mountainous village.
následně jsem se zeptal na seed předchozího obrázku (odpověď 1992012047) a řekl mu „create the same image with same prompt and seed but make the dog happy“

Tímto způsobem tak můžete vytvořit například (téměř) stejnou postavu jako tu, kterou vám to vygenerovalo, v několika prostředích či s různými výrazy.

Nedosáhnete tím ale nejspíš podobnosti k nějaké fotce konkrétní osoby, už proto, že GPT-4V automaticky rozmazává obličeje kvůli ochraně soukromí, přinejlepším dosáhnete toho, že půjde o osobu stejné rasy, věku, barvy vlasů…. K tomu slouží jiné nástroje, viz Remini: AI aplikace, která rozumí vaší podobě a vytvoří profilové fotografie, o kterých jste snili.

Pro ale nějaké obecné postavy to ale bude dostatečné, zejména když budou co nejdetailnějši vyspecifikované podobně jako v příkladu se psem. Ukázka tohoto postupu je například zde:

Multiprompt

Tahle vychytávka vám může ušetřit dost času – řekněme, že chcete vytvořit 4 podobné obrázky ve stejném prostředí, ale na jednom bude pes, na druhém kočka…

Nebo třeba 4 obrázky se psem, ale jeden bude mít v puse klacek, druhý kost, třetí míček, čtvrtý nic. A zároveň by první měl být šťastný, druhý smutný, třetí zvědavý, čtvrtý nadšený.

Mohli byste udělat samozřejmě 4 sady dotazů a nebo využijete toho, že ChatGPT umí nad vašimi dotazy přemýšlet a vytvoříte něco, čemu říkám multiprompt, kdy jednotlivé modifikace dáte do závorky, oddělíte čárkou, zbytek necháte stejný. Navíc můžete použít stejný seed, abyste zachovali vizuální podobnost (optimálně pak opět samozřejmě definovat i třeba okolní prostředí). Výsledek pak bude vypadat třeba takhle. Není to cool?

Generate 4 photos with seed:4
[happy, sad, curious, excited] dog, with [stick, bone, ball, nothing] in its mouth

Emulace „weird“ parametru známého z Midjourney

MJ má možnost doplnit k zadání parametr weird, udávající, jak moc má být fotka „divná“. Tenhle parametr DALL-E nemá, ale můžeme si ho emulovat (kudos za zajímavý tip pro Alvaro Cintas).

Vylepšil jsem původní nápad o specifikaci, že jde vždy o fotografii (jinak může střídat ilustrace atd.) a o předchozí tip, kdy nastavuji stejný seed pro všechny obrázky, takže ačkoliv se liší, budou mít něco společného. Použijte následující zadání, místo „pes“ dejte to co chcete vygenerovat.

Jiný model převodu textu na obrázek má parametr nazvaný “weird”. Čím vyšší je tento parametr, tím je obrázek divnější, v rozmezí od 0 (normální) do 3000 (nejdivnější). Chci, abys emuloval tuto funkci. Vytvoř čtyři obrázky na základě zadání, jeden má weird úrovně 0, jeden na úrovni 1000, jeden na úrovni 2000 a další na úrovni 3000. Obrázek, který po chci po tobě vytvořit, bude na zadání “pes”. Všechny 4 obrázky budou fotografie a budou mít seed 4

ChatGPT následně vytvoří 4 různá zadání, odstupňovaná od normálního pro extrémně podivného, viz popisky u fotek. Mohl bych samozřejmě mírně jiným zadáním dělat weird celou fotku včetně pozadí, tak jak to dělá Midjourney, ale chtěl jsem ukázat právě možnost „zpodivnět“ jen část obrazu.

Využijte Custom instructions a generujte snadno ilustrace a fotografie v jednotném stylu

Skvělou funkcí ChatGPT jsou Custom instructions – vlastní instrukce, které pak používá pro celou konverzaci. Psal jsem o nich v článku Novinka – ChatGPT Custom Instructions – k čemu jsou a jak je využít?, jestli jste jej nečetli, určitě si jej dejte.

Tyhle instrukce můžete používat i pro generování obrázků pro DALL-E. Například já měl minulý týden školení o možnostech AI pro 100 učitelů a desítky žáků plzeňské průmyslovky, v přednášce bylo několik desítek slajdů a chtěl jsem, aby vypadaly super a měly jednotný styl a zároveň jsem se s tím ale nechtěl moc mrcasit a kopírovat neustále stejné instrukce.

Nadefinoval jsem tak, že dělám takovou a takovou přednášku, že je to pro střední školy, takže ať nepoužívá v ilustracích malé děti, že chci aby generoval ilustrace na výšku, aby to byly černobílé tužkou kreslené „doodle“, aby vždy nejdřív promyslel, jak nejlépe ilustrovat to co mu zadám… a pak už stačilo do chatu vložit nadpis či text slajdu a měl jsem perfektní ilustrace.

Daná konverzace navíc samozřejmě zůstává v historii, takže když teď dělám další školení a potřebuji doplnit nějaké jiné slajdy, stačí tam jen nakopírovat další nadpis a vyjde mi zas ilustrace ve stejném stylu.

Mimochodem – jestli by vaše škola chtěla také nějakou takovou přednášku, školení… a třeba spolupracovat na implementaci AI do školní výuky a hlav učitelů, tak ať mě ředitel/ka kontaktují, mám pro školy speciální slevu.

Použití DALL-E pro grafická studia

A podobných instrukcí si můžete vytvořit víc, například takhle konzultuji a školím AI i jedno skvělé DTP studio a mám tak pro ně instrukce, které usnadňují tvorbu profi propagačních vizualizací atp. z velmi jednoduchých krátkých zadání a zároveň doporučí další relevantní prompty.

Další fígl, který jsem pro ně připravil, je nechat generovat jak nějaký design, tak jeho aplikaci, třeba na tričku (a ušetřit na modelkách). Prostě nechte vygenerovat design podle nějakého zadání na levé polovině horizontální fotky a na pravé si nechte zobrazit model(ku) s tímto designem. Samozřejmě to není stoprocentní, ale zabere to pár vteřin a pro nějaký první nástřel pro klienta, který se teprve rozmýšlí, je to často good-enough.

Široký obraz s ilustrací legračního psa s vtipným textem na levé straně. Na pravé straně modelka v tričku se stejným designem.

Takových příkladů mám mnoho, pro ilustraci možností to myslím stačí, každopádně podobně se dají generovat různé nálepky, loga, balící papíry, šablony prezentací, reklamy a další grafické výtvory. Podle zkušeností onoho grafického studia a marketingových oddělení firem, kde jsem to zatím ukazoval v tom vidí nejen úsporu času v řádu desítek procent, ale také příležitost pro zvýšení kreativy a získání většího počtu zakázek.

Technické kresby s rozkresem jednotlivých částí

V záplavě DALL-E ukázek, se kterými přišli uživatelé, mě zaujaly technické kresby, kdy okolo kresleného objektu jsou třeba jeho části, příslušenství atp. Jestli máte podobný vkus, tak vás třeba potěší znalost jak je dělat:

Black and white technical drawing showcasing a dog, with collar, blanket, dog tag, dog bowl, chewing toy and other dog equipment and accessories. Annotations detail for all equipment and accessories
Black and white technical drawing showcasing a nimble rogue thief with a hooded cloak, dual daggers, and various hidden tools. Annotations detail her stealth equipment and techniques.
Black and white technical drawing showcasing a simplified cross section of future european electric car with drawn parts like EV motor, battery, sensors etc. Annotations detail for equipment and features.
Detailed black and white technical sketch of the Prague castle from a side perspective. The drawing showcases the castle grandeur and intricate design. Annotations label various parts such as St. Vitus Cathedral, the entrance gate, the courtyard etc.

Trocha humoru závěrem

Rozesmály mě vtipné filmové plakáty, viz toto vlákno.

Tak když už jsem dnes nahodil psí motiv, zkusím i vlastní plakát:

Zadání: Vertical image – a movie poster very reminiscent of the Jaws movie poster, but instead of a shark emerging from the depths there will be a dog’s paw and instead of Jaws there will be Paws

A to je pro dnešek všechno, snad se vám mé praktické tipy líbily. Jestli ano, tak doufám, že je budete co nejvíc sdílet, tady dole ⬇️⬇️⬇️ jsou sdílecí tlačítka a chcete-li vědět ještě více, přihlaste se na má školení. A nezapomeňte se také přihlásit k odběru článků na mail, ať vám nic neunikne.

Nové články sem přidávám porůznu, tak jestli nechcete, aby vám něco uniklo, přidejte si můj feed do RSS čtečky, sledujte můj Twitter, Facebook a LinkedIn, případně si nechte nové příspěvky posílat mailem (žádný spam!)