Podcast

Data Talk #91: Jan Malý & Lukáš Koucký (1337)

epizoda#91 |  vyšlo  |  délka  | 562 poslechů |   |  mp3

Do dalšího dílu data talku přijali pozvání Jan Malý a Lukáš Koucký z 1337. Rozhovorem vás provedou Hynek Walner a Barbora Hinnerová . A vy uslyšíte: 

  • o Honzově a Lukášově cestě do STRV a z něj do 1337
  • o stavění gen-ai first startupu z nuly po boomu chatu gpt
  • o produktovém pivotu z ai-generated person přes automatizaci social media influencera k digital twin

Strojový přepis

Dobrý den všem, mé jméno je Hinek Volner.

Ahoj, já jsem Barbora Hinerová.

Vítáme vás u dalšího dílu Data Talku. Dnes tu máme hned dva hosty, Honzu Malého, spoluzakladatele a CTO, a Lukáše Kouckého, prvního zaměstnance firmy Leet. Ahoj kluci, vítejte!

Ahoj.
Ahoj.

Zvládneme to. Dnes jsme si do studia pozvali Honzu a Lukáše, aby nám trochu poodhalili oponu tajemného česko-amerického startupu Leet. Ale ještě než se pustíme do tohoto tématu a probereme, jaké to je v roce 2023 a 2024 budovat firmu, která je zaměřená na generativní umělou inteligenci, Lukáši a Honzo, pojďme nejdřív poznat vás. Jak jste se potkali v Leetu? Jaká byla vaše pracovní cesta a jestli jste se vůbec začali zajímat o toto odvětví? Lukáši, pojď nás prosím vykopnout.

Dobře. Po studiu kybernetiky a robotiky na ČVUT FEL jsem nastoupil do firmy Porsche Engineering, protože mě bavilo automotive. Postupně jsem se ale profiloval víc k machine learningu – od projektů zaměřených na elektrická auta až k autonomnímu řízení. To mě hodně bavilo, ale po téměř sedmi letech ve firmě jsem už hledal novou motivaci. Nastoupil jsem do firmy STRV, kde Honza zakládal machine learningové oddělení. Tam jsme se vlastně poprvé potkali a téměř rok jsme to táhli jen ve dvou, než přišli další lidé.

Měli jsme spoustu zajímavých projektů zejména pro startupy převážně z Ameriky, kde jsme dělali takový old school machine learning. Dnes se tomu už může říkat stará škola, protože nyní je všechno založené na velkých jazykových modelech - tedy na new school.

Je to tak i s tím, co jste studovali na FELu, že?

To je pravda. Můžeš nám ještě říct, v jakém roce se to setkání ve STRV vlastně stalo?

Myslím, že to bylo v roce 2020, během covidu, kdy jsme pracovali stále z domova. Honza bydlel kousek ode mě, takže jsme se občas potkali, šli třeba k sobě a pracovali takto, protože kanceláře byly zavřené.

Mělo to takový startupový vibe, určitě to byl první rok covidu.

Dobře, tak už slyšíme, že počátky tohoto dynamického dua začaly před pandemií. Honzo, jak ses vlastně dostal do STRV?

Možná to vezmu trochu zeširoka. K umělé inteligenci mě přivedlo to, že jsem rád programoval hry. Na platformě GIMP jsem zkoušel programovat hry a při programování her se člověk zabývá například tím, jak by se měl chovat protivník. To mě nakonec přivedlo na FEL, do oboru AI – umělé inteligence.

A v jakém roce jsi byl na FELu?

Řekl bych okolo roku 2022.

Můžeš nám prozradit, jaká byla tvoje první hra na GIMPu?

No, asi si někteří pamatujete Game Maker, to byla platforma, na které jsem hru dělal. Byla to nějaká adventura nebo něco podobného.

A jak se choval tvůj protivník?

V té hře to úplně nebylo o oponentovi, spíše o rozmístění ovoce v herní mapě a generování mapy.

Příběh těch her mě celý studijní pobyt v AI doprovázel. V rámci diplomky jsem vyvíjel agenta s reinforcement learningem, který se učil z lidských záznamů hrát StarCraft. V některých scénářích dokázal překonat vestavěnou AI.

Nevím, jestli je potřeba StarCraft představovat?

Ne, není, díky.

To zní super! V rámci diplomky tedy jsi tvořil herního agenta do StarCraftu, který se učil pomocí reinforcement learningu z lidských záznamů. Někdy to bylo schopné porazit i vestavěnou umělou inteligenci. To mě bavilo. A tohle je myslím skvělý příklad toho, kam se naše oblast, naše odvětví, kam se AI posunulo za poslední roky.

Když jsem to dělal v letech 2016, 2017 nebo později, byla to doba, kdy vyšlo AlphaGo a podobné algoritmy, což bylo velkou inspirací.

Je zajímavé, kam se AI od konce našeho studia posunula a jak neustále postupuje, což sledujeme v průběhu naší kariéry.

Honzo, než otevřeme hlavní téma vývoje AI v posledních letech, co se stalo po tvé diplomce? Už jsme odhalili, že ses potkal s Lukášem ve STRV, vedla tvá cesta rovnou tam nebo jsi zkoušel i jiné varianty?

Vlastně jsem před STRV prošel několika startupy, kde jsem pracoval jako machine learning engineer a vyvíjel různé machine learningové vlastnosti přímo do jejich produktů. Během té cesty jsem si uvědomil, že startupy často nemají dostatek dat, protože bez produktu nejsou ani data.

Proto jsem udělal odbočku do korporátu, do telekomunikačního světa, kde data byla a bylo mnoho případů využití. Ale z mé zkušenosti tam nebylo úplně nastavené prostředí pro efektivní realizaci, a tak jsem se chtěl vrátit do startupů, což vedlo k příchodu do STRV.

Byl to zajímavý příběh. Po zkušenostech z telekomu jsem napsal několika českým firmám, asi v roce 2019 nebo 2020, s nabídkou pomoci založit AI či machine learningové oddělení. Seznámil jsem se s několika startupy, ale nejvíce mě oslovila STRV.

Bylo vtipné, že moje vstupní zkouška byla úkol z generativní AI, konkrétně style transfer, tehdy jsem řešil GANy.

A to bylo to místo, kde jsi se poprvé potkal s Lukášem?

Ano, ale trvalo to ještě rok, než jsme se skutečně potkali. Začátky v STRV byly o budování portfolia, protože v té době tam byl téměř nulový machine learningový experience. Neměli tam nikoho na machine learning, moje první role byla tedy vyrobit nějaké portfolio, vymyslet projekty, které by mohly dělat.

STRV byla agentura, tak šlo spíše o vytvoření portfolia klientských projektů. Začátek byl hodně startupový, náročný. Začal covid, nová zkušenost, nový oddělení, a úkol byl vyrobit portfolio, protože firma ještě neuměla dobře prodávat machine learning.

Musel jsem se tak i hodně zapojovat do salesu. Nakonec ale toto úsilí přineslo ovoce – po roce a po několika projektech jsme měli portfolio a mohla nastoupit další posila – Lukáš.

Bylo vidět, že oddělení má potenciál, že si na sebe dokáže vydělat, a byly již projekty v pipeline, aby začali pracovat další lidé.

Vzpomínám si, že jeden z našich prvních společných projektů byl také spojený s generativní AI. Dělali jsme hodně detekce nošení roušek (facemask detection), kvůli covidu. Chtěli jsme však udělat něco opačného, takže jsme vytvořili projekt, který sundává roušku z obličeje, aby bylo vidět, jak člověk pod ní vypadá.

Tehdy ještě nebyly GANy, spíš jsme použili nějaký Unet, který vzal obličej člověka s rouškou a vygeneroval, jak vypadá bez ní.

To je zajímavé.

Byl to ale spíše koncept a nikdy nedošlo k produkčnímu nasazení.

Vyvinuli jsme z toho open source projekt, který je stále k dispozici, byť nyní trochu zastaralý. Je to ale stále zajímavé a jednodušší na pochopení i pro začátečníky.

Kdo by si to chtěl vyzkoušet, najde to pod názvem face2mask na GitHubu.

Měli jste v rámci STRV ještě další zajímavé projekty, o kterých byste se chtěli zmínit? Nebo co se stalo dál?

Napadá mě content moderation, na kterém jsem strávil hodně času. Byla to iniciativa vytvořit platformu pro moderování obsahu.

Moderování obsahu na sociálních sítích bylo často ruční, kde lidé v nepříznivých podmínkách procházeli denně velké množství nevhodných obrázků a textů.

Během covidu vzniklo mnoho článků o tom, jak obtížné to je.

Pokud někdo chtěl integrovat AI pro moderaci, často musel využívat velké poskytovatele služeb. My jsme chtěli udělat bezpečnější verzi, která běží přímo v mobilních zařízeních.

Vyvíjeli jsme content moderation model, který mohl běžet přímo v mobilu, bez nutnosti odesílat data někam ven, a který dokázal detekovat nevhodné obrázky a částečně i texty.

Tento model jsme integrovali do aplikace Apex od STRV, která se používá pro ratingové účely. Nevím, jestli ještě běží, ale myslím, že spíše už ne.

Nicméně to zní hodně zajímavě.

Dělali jsme relativně hodně takových on-device projektů. Ani nyní není úplně běžné, aby machine learningový model byl akcelerován a inference běžela přímo na zařízení.

V této kategorii jsme vyvíjeli i rozpoznávání emocí pro sociální sítě, což může znít trochu děsivě – sledovat video, které algoritmus doporučí, zatímco kamera uživatele nahrává.

To zní skvěle, to chce každý.

Jak je vidět, vy jste od začátku byli v gen AI prostoru velmi brzy a hodně hloubě. Jak jste to vnímali ve STRV? Už jste přišli s představou, že založíte vlastní firmu? Jak zrál ten nápad opustit STRV a založit si společně startup?

Abych byl upřímný, já už ve STRV trochu vyhořel. Moje role se sice z developera a mentora přesunula hodně do salesu. To mě ale nesplňovalo a nebavilo.

Měl jsem pocit, že ztrácím čas a že to není to, co chci dělat.

Rozhodl jsem se odejít, ale zároveň musím poděkovat Lubovi, CEO STRV, který mě představil Robinovi. S Robinem jsme začali nové dobrodružství v Leetu.

Lukáš se přidal po nějakém čase, protože jsme pořád spolu dělali side hustle.

Ty jsi odešel nejdřív do jiné firmy a trvalo asi půl roku, než jste oba došli k Leetu, zatímco já jsem dál pracoval ve STRV.

S Honzou jsme přemýšleli o dalších projektech a o tom, že bychom založili něco vlastního, ale nebylo moc prostoru. Každý jsme měli svoji práci.

Pak Honza přišel s nabídkou na zajímavou práci a začali jsme mluvit o tom, o co jde, a co by to mohlo být.

Jo, já jsem Lukáše představil Robinovi, klikli jsme si a stal jsem se prvním zaměstnancem.

To je skvělé. Pojďme si říct, kdy se to stalo a co vlastně Leet je.

Já jsem právě oslavil rok ve firmě, takže budu lehce přes rok. Myslím, že jsme začali asi v dubnu, já nastoupil v květnu.

To by sedělo.

Co vás tolik oslnilo, že jste se připojili k Robinovi a jeho misi „dělat líp“?

Robin má úžasnou osobnost a neuvěřitelný profesní záznam. Řeknu to s lehkou nadsázkou – i kdyby přišel s blbostí, asi bych zvažoval, jestli do toho jít. Naštěstí nepřišel, takže jsem nemusel řešit dilema.

Robin viděl velký potenciál v generativní AI, zejména v oblasti sociálních sítí.

V té době už existovalo několik virtuálních influencerů, kteří ale nevznikli za pomoci generativní AI, ale byli prostě vytvořeni lidmi – například Lila Mikayla, pokud ji znáte.

Lila Mikayla byla jedním z prvních velkých influencerů, kteří měli podporu mnoha značek a vydělali miliony dolarů, přestože ve skutečnosti nikdy neexistovali. Byla to virtuální postava.

Robinova myšlenka byla, že díky generativní AI by se mohl změnit poměr mezi počtem lidí potřebných k vytvoření jednoho virtuálního influencera. Zatímco Lila Mikayla stála za tvorbou obsahu asi padesát lidí, díky generativní AI by mohl stačit jeden.

To byl pitch, který ti řekl, když tě najímal?

Myslím, že tohle to bylo. Za ten rok se událo obrovské množství věcí. Ale tohle bylo hodně blízko.

Pro posluchače tedy – chápu to dobře, že chcete změnit poměr lidí generujících syntetický obsah tak, aby jeden člověk dokázal vytvořit stovky virtuálních osobností generujících obsah? Byl tím produktem nějaký framework, poskytovali jste influencerům nástroje k tvorbě stovek virtuálních profilů? Co bylo to, co jste říkali – „super, tohle půjde vyvíjet“?

V té době to ještě nebylo takto konkrétní.

Produktem byli virtuální influenceři, které jsme nabízeli značkám. Bylo to velmi podobné tomu, co dělala Lila Mikayla.

Prvním velkým milníkem bylo vytvoření asi padesáti virtuálních influencerů, které jsme sami spravovali pomocí generativní AI a pro které jsme generovali obsah.

Celý proces byl end-to-end.

Kolik vás bylo v týmu?

Kolem osmi lidí.

Osm lidí a 50 influencerů?

Ano, většinu týmu tvořili vývojáři, takže dva lidé měli na starosti 50 profilů.

Jistě potřebujete i někoho marketingového, kdo rozhoduje, co mají influenceři tvořit.

Ano, od začátku jsme systém vyvíjeli tak, aby nikdo nemusel promptovat AI ručně.

Obsah se generoval na základě narativů, příběhů, popisů influencerů, jejich zájmů, koníčků a charakteristik jejich publika.

Už od počátku jsme to tedy takto „drajvovali“.

Můžeme si to tedy představit tak, že když začneš tvořit influencera, nadefinuješ, že je to například 18letá asijská žena z Jižní Koreje, která má ráda kytaru a make-up, a chce vytvářet obsah třeba jednou týdně?

Ano, zhruba tak to vypadalo. A ideální bylo tvořit obsah každý den.

Lukáši, jak jsi to technicky provedl? Protože na první pohled, než jste odhalili, že se ten obsah vygeneruje automaticky z příběhů... (rozhovor dále pokračoval)

Vůbec, tak by si člověk představoval, že je to tak jednoduché, že nasypeme marketéry, tam jsou ty naše ženy a oni teďka generují obsah. Ale asi to tak nebylo. Nebyl ten případ. Tak co ten technický skok, jak jste tohle řešili?

Tak to nebylo tak snadné, ale právě v té době byl velký boom LLM (velkých jazykových modelů), byl velký boom kolem ChatGPT a vše dohromady to nakonec začalo dávat smysl. Ty LLM byly schopné nějak pochopit narrativ za těmi osobnostmi virtuálních influencerů, byly schopné pochopit, co je zajímá, co baví, a v širším kontextu z celého světa pak dokázaly generovat něco, co by mohlo zajímat i ostatní lidi o těchto influencerech.

Když se to dalo dohromady z druhé strany, tedy s generováním obrázků (image generation), byli jsme schopni ty narrativy nějakým způsobem vyrenderovat a udělat z nich zajímavé obrázky, které by na sociálních sítích mohly někoho zaujmout. To byl asi první technický challenge – dát celé tohle dohromady, vymyslet způsob, jak z toho narrativu vytvořit zajímavé příběhy, které budou každý den trochu jiné, ale zároveň zajímavé a konzistentní. A generovat obrázky, které musí dávat smysl, musí vypadat stejně – tedy aby ta postava na každém obrázku měla stejný vzhled. To byl obrovský technický problém, se kterým jsme bojovali. Musí mít pět prstů? To je pořád velký problém, ale s tímto jsme bojovali dlouho.

Asi jste to všechno nevymýšleli sami, že? Používali jste nějaké už existující technologie, bylo to spíš o spojení všech těch kostiček dohromady?

Přesně tak. To je hezké na tom, co máme dnes k dispozici – dá se postavit celá kostra z dostupných věcí a každou kostičku lze vyměnit. Místo ChatGPT můžeme použít jakýkoli jiný LLM a pokud bychom si ho chtěli přetrénovat na naše účely, můžeme zvolit open source variantu, lehce ji upravit a nemusíme se spoléhat na třetí strany, které nemusí zítra fungovat. Landscape tohoto oboru se mění velmi rychle a možná není úplně rozumné spoléhat se na jednu konkrétní technologii, která teď funguje skvěle.

To je asi jedno z velkých výzev, se kterými musíte bojovat, že?

Ano, interně to říkáme, že stavíme takového Frankensteina – složení spousty modulů, kdy musíš být schopen kdykoli nějaký modul nahradit, rozšířit nebo přidat nový. Je to hodně o orchestraci LLMek, orchestraci toolkitů, generování promptů nebo zajišťování konzistence tváře. Náš první „stack“, kdy jsme tohle vyvinuli, byl víceméně postavený na Langchainu, na jednoduchých promptech a jejich řetězcích. Kromě LLMek se o část týkající se konzistence obličejů staral hlavně Lukáš.

Mě to hrozně fascinuje ta konzistence, protože mám pocit, že halucinace pořád nejsou vyřešeným problémem, udržet faktickou správnost je velmi obtížné. Zdá se, že se vám to zvládlo podařit, ale myslím, že na škále obrázků je to ještě složitější, protože obrázek má více dimenzí volnosti než text. Čím přesně to byl velký problém a jak se vám ho podařilo zkrotit?

Byl to hodně iterativní problém. Když jsme začínali zhruba před rokem, tak ty obrázky, které byly schopné generovat Midjourney nebo Stable Diffusion, i když nám přišly úžasné, dnes na ně shlížíme jako na směšné. Vypadaly detailně, jak fotografie, ale dnešní standard je daleko výš.

Dělání face konzistence tehdy ještě nebyl takový problém. Použili jsme jednoduchý open source face swapper, inswapper, myslím, že se to jmenovalo, a pak jeden „gun“, který trochu vylepšil nízké rozlišení generovaných obrázků, a plácli jsme obličej zpět na fotku. Byli jsme spokojení.

Týden po dokončení této metody vyšla nová verze Midjourney a ten obličej už neseděl k okolí. Museli jsme iterovat dál, hledali jsme lepší face swapper, lepší přístup, jiné modely na zlepšení výsledků. Když jsme konečně dospěli k řešení, po dvou měsících přišla další generace Midjourney a Stable Diffusion, a byli jsme zase tam, kde jsme začali. Takto jsme opakovaně iterovali až do současné verze, která už je poměrně složitá.

Původně jsme měli pipeline, která žila asi tři vteřiny na CPU, dnes už máme širokou pipeline běžící na GPU asi třicet vteřin. Pouštíme tam několik modelů, je tam Stable Diffusion, několik „gunů“ a vylepšení. Přijde mi, že to nyní funguje lépe než Midjourney.

Midjourney asi před dvěma až třemi měsíci přišla s vlastní face konzistencí, kdy si můžeš nahrát fotku obličeje, aby ti to generovalo podobný obličej, ale výstupy nejsou nic moc. Doufali jsme, že to bude něco výjimečného, abychom mohli naši pipeline vyhodit a proces zjednodušit, ale ukázalo se, že…

Doufali jste tedy, že vás někdo předběhne, a vy pak vyhodíte vaši práci do koše?

Ano, ale kdo ví, co bude zítra, že? Krajina technologií se mění strašně rychle. Přesto jsme rádi, že jsme do toho ten čas investovali, protože to, co máme teď, za to určitě stojí. Je lepší než Midjourney. Takže si můžeme trošku pogratulovat.

Co jste dělali dál a jak jste začali pracovat v Lítu? Za tu dobu se to možná posunulo. Měli jste tedy influencery vygenerované a…

Vypustili jsme 50 virtuálních influencerů do světa. Co se pak stalo? Jaká byla reakce lidí, interakce, co se stalo?

My jsme tedy vypustili do světa 50 virtuálních influencerů a sociální sítě zaplavily další virtuální influencery. Jeden člověk se rozhodl, že bude dělat virtuálního influencera, že bude vše spravovat. I když jsme měli určitou škálovatelnost, narazili jsme na limity svého řešení i trhu – už to nebylo úplně zajímavé.

Co se týče technických detailů a limitů, s tím stále bojujeme i teď: obsah se hodně opakoval. Aby byl obsah zajímavý a unikátní, to byl velký problém. Když se člověk podíval na týdenní obsah, který daný virtuální člověk generoval, další týden se opakoval. Tady to začalo narážet na limity implementace.

Takže to byl ten technický problém, a ještě tam byl problém, že se trh posunul. Jak jste na to zareagovali? Co následovalo?

Rozhodli jsme se, že má smysl reagovat na signály z trhu, kde si lidé vytvářeli své vlastní influencery. Nerozvíjeli jsme tedy platformu, která by vlastnila svých vlastních virtuálních influencerů, ale dali jsme lidem nástroj, aby si mohli vytvořit vlastního virtuálního influencera a mohli ovlivňovat narrativy.

Abychom se vyhnuli repetitivnosti, inspirovali jsme se otevřenými zdroji, aby narrativy byly „řízené“ skutečnými lidmi. Takto vypadala naše druhá fáze a tahle linka platí dosud.

Změnili jste tedy model?

Začátek byl o tom, že influencery generujete a ty vydělávají na spolupráci se značkami. To chápu správně?

Ano.

Pak přešla fáze do SaaS platformy, která umožňuje influencerům generovat obsah. Nebylo ale zaměření na influencery jako takové, ale na lidi, kteří chtějí vytvářet obsah, protože na sociálních sítích jen zlomek uživatelů generuje většinu obsahu.

Kolik přesně?

Okolo 10 %.

Zbytek jen sleduje?

Ano, přesně. To je statistika TikToku.

To je skvělý fun fact.

Ano, možná spíše non-fun fact. Druhá fáze se tedy zaměřila na zbylých 90 % lidí, kteří obsah nevytváří. Poskytli jsme jim nástroj, aby si mohli stát influencery.

Vyskytly se bloky, jako neochota sdílet reálnou identitu?

Přesně, lidé mají své důvody – nechtějí sdílet identitu, nemají zajímavý obsah a podobně.

Líbilo se mi, že váš narrativ byl „no more prompting“ – že lidé nemuseli nic promptovat, ale dostali nástroj, který jim generoval obsah.

Ano, to bylo super pro lidi, kteří chtěli začít, ale nevěděli, co dělat nebo hledali inspiraci.

Nedostali prázdný řádek na libovolný prompt, ale každý den dostali kalendář s hotovými fotkami a příspěvky, které zachycovaly život jejich virtuálního influencera.

Měl cyklus dne, záliby a podle toho se připravovaly fotky. Měli spoustu fotek na výběr – „tohle je zajímavé, tohle se mi líbí, tohle se mi nelíbí“.

Co bylo vstupem do systému? Já, kdo tvoří obsah na sociálních sítích vůbec, bych šel na váš web, zaregistroval se a co dál?

Registrujete se na Lítu, dostanete v podstatě připravené styly a oufit virtuálních influencerů, abyste se inspiroval. Zaklikáváte si, co se vám líbí – vlastnosti, vzhled, co by takový člověk měl mít.

Byla tam nějaká nabídka předpřipravených templatek?

Ano, bylo asi 50 až 80 předpřipravených, každý měl svůj popis v bio, i jejich zajímavosti, čím se liší od ostatních. Vybral jste si, který se vám líbil nejvíc, tím jste daného influencera „vlastnil“, nikdo jiný si ho nemohl vzít.

Pak jste koukal, jaký se generuje obsah a co chcete publikovat.

Měl jste tak svého vlastního „Pokémona“, který generoval obsah.

Zmínili jste ale, že to nebyl finální stav Lítu jako produktu a firmy. Jaký byl tedy další pivot?

Dodali jste framework na snadné vytváření obsahu pro lidi, kteří nevědí, kde začít. Co se stalo potom? Kam jste to posunuli?

Získali jsme spoustu cenných feedbacků od uživatelů.

Jaký byl ten feedback?

Převážně pozitivní. Zjistili jsme, že asi 90 % uživatelů, kteří nejsou zvyklí vytvořit obsah, to zcela nezvládnou, nebo že to není úplně dobrá cesta. Možná opravdu nechtějí obsah vytvářet.

Posílali obsah, který se dostal na sítě, ale nebyl to silný obsah.

Nejsou to influenceři.

A obsah sám o sobě nestačí k tomu, aby se člověk stal influencerem?

Přesně tak.

Měli jste tedy připravený nějaký návod, jak být úspěšný influencer?

Bohužel ne. Tahle verze jen servírovala obsah a říkala: „Tady máš karusel, tady máš post, zveřejni ho třeba ve středu ve tři hodiny.“

Po stránce produktu jsme tam naráželi na problém, že uživatelé nejsou influenceři, neví, jak to dělat.

Technický problém – některé sociální sítě bojují proti AI generovaným profilům.

Právě. Pokud jsi založil profil virtuálního influencera, nahrál obsah, mnoha uživatelům dali ban bez vysvětlení.

Mají nějaké algoritmy na rozpoznávání AI generovaného obsahu?

U fotek musí být často uvedeno, že jsou AI generované. My jsme to nezakrývali, říkali jsme lidem, ať to dál zviditelňují, ale profily jsme nevlastnili, proto to bylo na nich.

V rámci zákona (E-act) musí být explicitně uvedeno, že obsah je od virtuálního influencera.

Někteří to nedělali.

Když jsme ty influencery vlastnili, vždy jsme pod každý obsah přidávali, jaký image generator a další technologie byly použity. Byla transparentnost, ale i tak jsme dostávali bány – jeden až dva měsíčně.

To vás ale neodradilo?

Ne, nehodili jsme AI do žita, ale řekli jsme si, že vyzkoušíme něco jiného.

Jaký byl ten pivot?

Teď pracujeme na vytváření digitálních dvojčat již existujících influencerů.

To řeší problém, že tito lidé už umí být influenceři, mají followers, historii a vědí, jak pracovat se značkami.

Dává to perfektní smysl stát se nástrojem pro nalezení a škálování jejich digitální přítomnosti.

Aby mohli třeba prodávat kolagen na Bali, i když tam nejsou.

Nejde jen o prodej produktů - pro některé influencery je neustálá kreativní práce, nový obsah a komunikace s fanoušky náročná.

Chceme jim dát nástroj, který škáluje interakce a pomůže s generováním obsahu. Mohou si pak třeba vzít týden dovolenou.

Jak na to přemýšlíte prakticky? Řekněme, že jsem influencer a chci si vzít týden dovolenou. Co dostanu do ruky? Bude tam promptovací okno?

Opravdu nedostaneš promptovací okno.

Protože se snažíte nevyužívat prompting?

Ano, naše řešení umí pochopit t...

Vojtěch rozhodování, pochopit tvoje zájmy. Možná ještě když se trošku vrátím k tomu, že jsme vlastně generovali ten obsah na základě narativů, tak teď vlastně máme nějaké řešení, které dokáže pochopit,

co je tvůj drive, co je tvůj unikátní styl. A jak? Nasvěcuje to třeba Instagram nebo TikTok toho stávajícího, existujícího reálného influencera na základě toho? Nebo je to třeba tak, jak bylo v nějakých filmech, že s tebou chodí nějaký tablet a učí se na základě toho, co děláš? Nebo jaký je proces toho poznávání a učení se?

No, to UX úplně ještě nemáme vymyšlené do detailu, ale teď je to vlastně založené na tvých datech z Instagramu. Jsme ještě v takové fázi, kdy se ptáme, jestli data z Instagramu budou dostatečná k tomu, abychom je dokázali zreplikovat, pochopit tvůj unikátní styl a generovat další obsah. Možná bude potřeba něco více. Asi to nebude tak, že by s tebou chodil tablet, ale možná třeba nějaký dotazník, nevím. Máš k tomu nějaké technické náměty?

Vlastně co se týče produktu, tak jsme zažili několik pivotů, pořád na tom stavíme. Platí to i v technickém steku, nebo jsou tam nějaké větve, které jste museli zavrhnout a říct si, že to fakt nedává smysl, že to musíme úplně vyměnit, přepsat nebo počkat, až bude něco, co můžeme použít? Přemýšlíme, jestli jsme někdy něco opravdu odřízli. Přijde mi, že ne, že je to opravdu pořád iterativní proces, máme nějaké základy, které rozšiřujeme a stavíme na nich něco nového.

Teď jdeme mnohem více do hloubky a snažíme se víc simulovat tu personu, vymyslet, jakým způsobem toho člověka nějak vzít, aby to bylo schopné simulace pochopit, pracovat s tím, iterovat a průběžně to zlepšovat. To je teď poměrně velký úkol, na kterém se zaměřujeme. Pracujeme na tom hodně. Nedávno jsme zavedli Langraph, s kterým máme docela hezké výsledky a práce s ním jde pěkně.

Koukali jsme také po různých inspiracích, protože podobné věci se objevují třeba ve hrách, což je velmi zajímavé. Koukáme na to, jak takové věci řeší různé hry. Zaměřujeme se i spíše na psychologickou nebo sociologickou stránku, takže se dostáváme do úplně témat, která jsme před měsícem nečekali, že otevřeme.

Jasně, kromě Langraphu, jak to tam technologicky funguje? Možná kam jsme se za poslední měsíce posunuli, je vývoj z nějakých chainů a promptů na agenty. Teď stavíme agenty a nechci tady zmiňovat konkrétní technologie, protože ten obor a knihovny se hrozně rychle mění. Nicméně nám teď nejvíc sednul Langraph na vytváření inteligentních agentů a inteligentních toků, a na tom hodně stavíme. Co bude zítra, nevíme. Samozřejmě máme nějakou vizi a směr.

V poslední době se ukazuje, že v některých firmách, které jsou startupy na ChatGPT, to je zajímavé, ale čím dál víc se vracíme k tradičnímu machine learningu, k tradičním modelům, kde něco fitujeme na základě dat, protože…

To je zajímavé, můžeš říct proč? Co vás k tomu vede?

Za prvé, LLM (velké jazykové modely) jsou natrénované na určité úkoly a úplně dobře se nehodí třeba na simulace. Máme často takový rozkol, jestli tomu, co děláme, říkat emulace nebo simulace, ale úplně na tohle simulaci lidského rozhodování, na plánování, se nehodí. Někdo by řekl, že si prostě natrénujeme nebo na fine-tunujeme vlastní LLM, ale to není úplně dobrý přístup zejména kvůli množství dat, které máme k dispozici, a vysoké dimenzionalitě prostoru.

Takže jsme se postupně vrátili k tradičnímu machine learningu, kdy se snažíme modelovat lidské rozhodování a učit se preference na základě dat.

Na základě jakých dat to přesně děláte? Protože to si myslím, že jsme ještě neřekli. Data se sbírají od influencerů, content creatorů? Nebo existuje nějaká knihovna s daty o rozhodování?

Ne, ne takhle. Influenceři nám přirozeně poskytují svá data z Instagramu. Málokdo ví, že si z Instagramu můžeš vyexportovat celou svoji historii — všechny zprávy (DM) a podobně. Tam se ukazuje spousta rozhodování, například jaké máš návyky v postování, kdy co zveřejňuješ. Z těch dat lze vyextrahovat, jaká témata postuješ, a to nám pomáhá trénovat k LLM ještě jednodušší modely, které nepotřebují tolik dat. Výstupy pak nejsou tak strohé, jako když to necháš jen na agentovi či LLM.

Když mluvíš o samotném LLM v promptu nebo na agentovi, přijde mi to hodně složitý problém. Je tam mnoho dimenzí. Úloha poznat sentiment v DM je úplně jiná kategorie nebo jiný model než poznat, jestli mám fotky na pláži, co mám na sobě, jak často postuju, nebo kolik dávám emoji.

Ano, chápu to tak, že máte ansámbl různých specializovaných modelů?

Přesně tak. Nejde o nějakého jednoho agenta, protože to by nefungovalo. Agent tam je, ale nerozhoduje jen na základě ručně psaných pravidel nebo business logiky, není to řízené jen LLM, ale naopak podmíněné dalšími jednoduššími modely.

Teď se snažíme například modelovat něco jako human-to-vec, tedy reprezentaci člověka. Když máš reprezentaci člověka, můžeš nad tím stavět další jednoduché modely a posílat data – třeba jako baťa cvičky. Data na to máme. Pak je jednoduché najít nějakou vhodnou reprezentaci pro náš problém.

Jedna z reprezentací je text, kterému rozumí LLM, a další může být něco, co popisuje influencera – třeba jeho nálady. To je velký upgrade od poslední verze.

V poslední verzi jsme pracovali téměř výhradně jen s textem a LLM dělalo rozhodnutí. Výsledkem bylo, že se obsah hodně opakoval, protože chyběla kreativita. Když dáš popis člověka a řekneš „vytvoř na základě toho něco zajímavého,“ LLM to moc nového nevymyslí a opakuje stejné narativy.

Ale když posuneš úroveň výš a toho člověka popíšeš třeba vektorem nebo jiným způsobem, se kterým může pracovat jednodušší model pracující s čísly, dostáváš se na úplně jinou úroveň.

Do toho pak přicházejí třeba fotky a image recognition, což je aktuálně rozvíjené například u GPT-4.0. Funguje to třeba tak, že ti model řekne, že vypadáš unaveně, co se stalo, nebo že ten klobouk ti moc nesluší. Je to podobné tomu, co děláte vy, nebo na to navazujete?

Spíš navazujeme. Ne vždy dává smysl vyvíjet všechny komponenty in-house, zvlášť v tomto rychle se měnícím prostoru. Snažíme se soustředit na oblasti, kde máme výhodu a co nikdo jiný nedělá. Necílíme pouze na wrappery nad ChatGPT, ale kombinujeme různé technologie.

Máme několik technologií, i kvůli škálování a možnostem generování videa. Rozhodli jsme se vytvořit vlastní engine pro generování médií, protože u všech modelů na generování médií je problém s konzistencí scén.

Často máme problém s tím, že třeba chceš vytvořit nějaký post jako virtuální influencer v kavárně, pijící kávu. Můžeš strávit hodiny generováním, abys měl deset postů s touto atmosférou. Jde nejen o atmosféru, ale aby bylo konzistentní i to, co má influencer na sobě, kde sedí a co pije.

Zadáváš to po framech a promptuješ to postupně, ale je těžké vygenerovat konzistentní sekvenci obrazů. V minulých iteracích jsme měli konzistentní textovou scénu, ale nebyli jsme schopni generovat vizuálně konzistentně, protože model neví, co je na obrázku do detailu. Prompt do generátoru obrázků totiž nespecifikuje každou drobnost, například co leží na stole nebo jaké jsou prvky kavárny.

Proto pracujeme na vlastním engine, kde by bylo možné celou scénu zachovat. Když jednou uděláme post z kavárny, příště budeme umět vytvořit post z té samé kavárny se stejným vzhledem, aby to odpovídalo skutečné lokaci.

Zmínili jste během popisu ambicí i snahu o popisování chování nebo odhad toho, jaký ten člověk je. To je velmi fascinující. Jak k tomu přistupujete? Máte nějaký behaviorální model, kde je daná osobnost typu extrovertní-introvertní, emoce, expresivita, nebo to děláte datově, prostě to zreplikujete podle dat?

Snažíme se z dat vytvořit model a namapovat člověka na některé osobnostní profily, nějak to reprezentovat. Tyto profily pak používáme jako featury do tradičních machine learningových modelů.

Jaké jsou vaše datové zdroje? Například když koukáte na obrázky, jak moc na nich člověk usmívá, a vidíte to na osmi fotkách ze setu, poznáte, že je veselý? Jaká data používáte, resp. chtěli byste používat?

Jsou to hlavně návyky postování a také lze vytěžit hodně z DM – jak ten člověk reaguje na komentáře, jak reaguje na zprávy, jak si píše, jak komunikuje. Tato data ale nemáme detailně zpracovaná.

Ne, zpracovaná nemáme. Co třeba menstruační cyklus?

To by bylo dobré, ale tohle příliš nesledujeme.

Ale fakt to může být zajímavé. Když sleduješ osobní zařízení u žen, například jejich cyklus, můžeš vědět, že dneska například mají PMS a postují o tom, že je svět na nic.

Tak daleko zatím nechceme zajít, ale uvidíme.

Teď jsme ještě v takové fázi, kdy stavíme PoC, hodně prototypujeme, snažíme se pochopit, jaké vstupy potřebujeme. Jestli stačí data z Instagramu, kompletní historie, nebo bude potřeba vyplňovat dotazníky – ještě to vůbec nevíme, jsou to otevřené otázky.

Jsem na to hrozně zvědavá, kam to dostanete.

Když mluvíme o datech, sběru dat a modelech, kterých je hodně, zajímá mě, jak je to náročné na infrastrukturu. Potřebujete opravdu hodně dat a výpočty asi zabírají hodně výpočetního času. Můžete říct, jak to funguje z tohoto hlediska?

Nejnáročnější výpočty jsou teď spojené s obrázky a jejich konzistencí. Jinak výpočty provozujeme pomocí třetích stran, například foundation modelů.

Používáme OpenAI cloud a zbytek infrastruktury není tak náročný. Jediný náročný aspekt z hlediska infrastruktury je naše face consistency.

Na tom nám teď hodně pomáhá nový člen týmu, Adam.

Doteď většinu věcí provozovali na Digital Ocean, kde bylo jednoduché nastavit automatické deploye přes GitHub Actions, které nasazovaly změny po pushi do main branche. Teď ale narážíme na problémy, takže jsme začali migrovat na AWS a devops začíná být náročnější. Proto jsme potřebovali dalšího člověka na tuto stránku.

Nevím, kde bychom bez Adama byli – asi zavalení fakturami. I když faktury nejsou takový problém jako spolehlivost.

Digital Ocean nabízí přes Paperspace grafické karty, což bylo lákavé, protože je tam jednoduché kliknutí, které poskytne deset grafických karet a nemusíš nic řešit.

My ale posíláme náš face consistency model desetkrát za sebou a najednou dostaneme jen jednu kartu, další již nefungují, pak jedna se vypne a další již nedostáváme, takže jsme zjistili, že nemáme, na čem modely běží. Tyto služby se občas tváří jednoduché a super, ale ve skutečnosti nejsou.

V rámci Gen AI a celkového vývoje je to tak, že mnohé firmy lžou třeba jen čtvrt roku dopředu. Všichni slibují různé schopnosti, ale realita je jiná. Nejprve chtějí produkt prodat, než začnou vážně pracovat na jeho funkčnosti – klasický startup přístup: „Fake it till you make it.“

Nedávno jsem slyšel Altmanovo tvrzení, že výpočetní výkon bude měnou budoucnosti a už to tak vypadá.

Je to tak? Spousta služeb jako Paperspace na papíře zní hezky a jednoduše ve srovnání s AWS, ale jakmile chceš používat více než dvě grafické karty, máš smůlu.

Příští kvartál to třeba změní. Myslím, že takhle to funguje.

Mě a myslím si, že i posluchače bude zajímat vaše reflexe etické stránky té věci. Co když nějaký trol nebo farmy dezinformací nebudou potřebovat lidi, ale budou používat digitální dvojčata k šíření falešných informací? Jak k tomu přistupujete z hlediska etiky?

Samozřejmě, že cílíme na velké influencery, což nám filtreje uživatele; tito lidé musí být ověření.

Takže to jsou lidé s modrou fajfkou u jména?

Ano, jak jsem říkal, je to PoC, ještě nemáme úplně rozmyšlené, jak tu verifikaci budeme dělat, ale už samotné cílení na větší influencery dává možnosti ověřování. Musí mít profil s historií, s nějakým obsahem nebo followery.

Je pro mě důležité říct, že v našem flow je vždy „human in the loop“ – co vyprodukujeme, neodejde automaticky na sociální sítě. Existuje několik fází schvalování,

kde ten, kdo to používá, schvaluje, co se publikovat má, tedy influencer samotný.

Který z vás je prodloužená ruka tohoto produktu? Je to jak na tom influencerovi, tak v této fázi produktu je to vlastně i na nás. My totiž moderujeme ten obsah pomocí toho bota, kterého jste mi tvořili za komidu. Je to úplně jiné.

Influencer dostane nějakou hromadu fotek nebo jiných materiálů, ale už ta hromada je profiltrovaná člověkem. Nedostane přímo to, co systém vyhodí, tedy automaticky. Než se to vůbec nabídne influencerovi, projde to rukama člověka, který například vyřadí fotografie se šestiprstými lidmi nebo jiné nevhodné věci.

Potom už influencer obdrží určitý balík věcí, které může publikovat, a které jsou už bezpečné. To je zajímavé. Každopádně influencer nebo někdo ověřený v příbězích („story“) může být i člověk, který záměrně šíří dezinformace, tedy vymýšlí si je sám.

To chápu. Takovéto... My to víceméně stavíme na datech ze sociálních sítí, a to je problém. Kde by měla být ta kontrola? Přímo u těch sociálních sítí, nebo by se to mělo delegovat jinam?

Možná to bude znít trochu alibisticky, ale velké sociální sítě s tisíci zaměstnanců úplně nezvládají řešit tento problém. Myslím, že jsme teď v takové fázi, kdy kdybychom se úplně soustředili na to, aby byli všichni uživatelé verifikovaní a splňovali určité parametry, například když k nám přijde někdo s historií na Instagramu nebo s followery, mohli bychom to ještě více kontrolovat.

Rozumím tomu tak, že pro vás to není váš problém, ale problém celkový. Ve finále je to ten obsah, který vygeneruje člověk, nebo něco jiného?

Já to vnímám tak, že vy chcete být jedním z těch mála, ne z mnoha, ale jedním nástrojem v tom oceánu možností, co lze dělat, a vaším jasným zaměřením jsou influenceři. Myslím si ale, že je to docela omezené. Nějaké farmy na facebookových komentářů jsou vlastně poněkud... Myslím si, že celkově je to něco, na co si společnost musí zvyknout. Co se týče AI a čehokoliv jiného, ještě jsme nedospěli k tomu, abychom vnímali tyto nástroje jako něco, co je ovládáno někým konkrétním, kdo nese zodpovědnost za výsledky. Není to technologie, ale je to ten člověk, který ji ovládá.

Právě ten „no prompting“ nám trochu pomáhá, protože nemůže jednoduše přijít nějaká farma a vytvořit tisíc příspěvků. Nemají tu možnost. To byl i další důvod, proč jsme se posunuli od fáze „Hele, založ si tu virtualního influencera, jsi úspěšný influencer, my ti pomůžeme s produkcí obsahu a interakcí s fanoušky“ k tomu, že my jsme nástrojem, který pomáhá tvorbě obsahu, ale stále je tam lidský faktor.

Myslím, že je to v pořádku a moje extra otázka je tímto asi vyřešena. Strávili jsme tu hodně času popisováním produktů, ambicí, vizí a technologií, ale co vaše současné složení týmu? Hledáte momentálně někoho? Co přesně?

Nás moc není, možná jsme tady ani ne. Aby to neznělo směšně, když teď řeknu, že chceme být miliardovou firmou a máme kolem sto zaměstnanců, zní to skvěle.

V případě, že jde o AI a váš obor, určitě by měly vznikat firmy s miliardovými byznysem, tak proč ne právě vy? Ano, je to tak.

Tým je relativně malý, aktuálně nás může být 14. V Česku asi 8-10 vývojářů a v Americe pak dalších 4 lidí. Čtyři lidé? Jsou to všichni salesáci?

Ne, ne. CEO, CPO a lidé zodpovědní za produkt a obsah. Možná jsme na začátku zapomněli zmínit, že vývojová část týmu je rozmístěná po České republice.

Takže jste remote firma?

Ano, máme dvě centra, v Praze a v Hradci Králové. Většina vývojářů je v Praze, část v Hradci. Začínáme řešit engine, takže se možná více zaměříme na Hradec.

A proč Hradec? Je to místo vyvolené?

Protože tam v našem networku již máme lidi, kteří nám mohou pomoci s engine.

Proč si každý nevytvoří své dvojče, kterým by pak škáloval svoji práci a tvorbu produktu? Proč to, co chcete udělat, nemáte hotové a nepoužíváte to?

V tomto prostoru je spousta firem třeba jako Microsoft. Náš cíl je zaměřit se pouze na segment virtuálního influencingu a tento trh je obrovský.

Možná není tak velký, nebo těžko se to porovnává. Nemám čísla v hlavě, co bude větší – influencing nebo development on scale, automatizace. Pak můžete mít čistě AI firmu jako STRV.

Dostáváme se teď k něčemu úplně jinému, než jsme chtěli.

Honzo, zmínil jsi, že budete potřebovat pomoc s enginem a hledáte další posilu. Co přesně hledáte? Kdybych chtěl s vámi spolupracovat na tomto tajemném GenAI Friendly startupu, co bych měl dělat?

Momentálně máme lidi na AI, kteří jsou schopni psát aplikace a služby. Nyní k nám přicházejí lidé, kteří umí řešit engine, ale pořád bojujeme s pochopením lidské mysli a emocí.

Pokud by někoho toto zajímalo, klidně pište, rádi se s takovým člověkem spojíme.

Co hledáte v oblasti pochopení lidské mysli? Sociologa, psychologa?

Je to velmi široký obor. My jsme zatím převážně vývojáři a ani přesně nevíme, na co bychom se měli ptát. Nikdo z nás nemá formální vzdělání v psychologii, v tom, jak fungují emoce.

Máme konzultanty, kteří nám pomáhají, ale bylo by lepší mít někoho na plný úvazek, než jen poradce, který se sejde jednou za týden nebo za čtrnáct dní. Potřebujeme někoho, kdo na tom bude kontinuálně pracovat.

Hledáte také specialisty na data?

Ano, většina z nás má softwareový nebo AI/machine learning background, ale v oblasti dat teď chybíme.

Hledáme tedy data engineering nebo analytické inženýry. Máme rozjetý určitý stack, embedded analytiky a jednoduché BI.

Znáte Cube?

Možná, slyšela jsem o Cube. Je to přesně datový Cube. Umožňuje vytvářet embedded analytiky tak, že nadefinujete zdroje dat a Cube vystaví API. Má i kešování, aby se nemusela pokaždé volat přímo Snowflake.

To používáme pro embedded analytiky.

Myslím, že máme na české poměry unikátní stack, protože tady obecně je malý zájem o takové nástroje jako Cube, což chápu, protože většina lidí tady používá Kebulu nebo jiné nástroje.

Používají Snowflake, i Tabrix a další. My také Snowflake používáme, ale spíš frčíme na open source, a je pro nás důležité věci verzovat. Například na datové pipelines používáme Daxter, Snowflake a Meltano.

Česko pro vás ale není cílový trh?

Rozhodně ne. Ale co se týče náboru developerů, tak prozatím všichni jsou z Česka.

Technologie tedy odvíjí od umístění lidí. Když je například Robin v Americe, odtud se také odvíjí celkový vývoj technologií a směr.

Robin jako Čech poměrně hodně podporuje věci vyvinuté v Česku, což je skvělé.

Posíláme tedy pozdrav všem posluchačům DataTalku, kteří by měli zájem ponořit se do datové oblasti nebo do lidské psychologie a pomoct vám na této ambiciózní a bláznivé cestě, jak replikovat lidi v digitálním prostoru.

Kromě vašich vizí a náboru, je ještě něco velkého, co vás čeká, co očekáváte v následujícím roce? Něco, co jsme zapomněli zmínit?

Velkou výzvou bude engine. Postupně se chceme od obrázků nebo krátkých sekvencí propracovat ke generování videa. To nás čeká v nadcházejících měsících.

Hlavní cíl v oblasti produktu a byznysu je začít generovat zajímavé příjmy.

Já jsem čekala, co chcete generovat dalšího. Příjmy jsou opravdu důležité.

Přijde mi, že vy kluci, pokud má být někdo agilní nebo agilní kouč, tak vy na to musíte být opravdu dobří, vzhledem k tomu, jak často se věci mění.

Pokud někdo chce být opravdu agilní, vedení a vedení týmu je pro vás to pravé místo.

Takže kluci, těším se, že se tady za rok opět setkáme a popovídáme si o tom, jak jsme zreplikovali lidi do digitálního prostoru, a jaká je vaše další meta na cestě k miliardovému dolarovému byznysu.

Moc vám děkuji za návštěvu, za veškerý obsah, který jste s námi sdíleli, a přeji hodně štěstí.

Hodně štěstí, já se moc těším, až budu prodávat kolagen přes vaše vygenerované digitální dvojče.

Díky moc.

Děkujeme za pozvání.

To je vše. Děkujeme vám, že jste doposlouchali až sem.

Díky také našim partnerům: Big Hub, Intex, Sostka, Bystreat, Colors of Data, Revolt BI, Good Date, Kebule, E-mark, Karl Data Company a Datamind.

Pokud vás zajímá více, navštivte naše stránky datatalk.cz a přihlaste se k odběru newsletteru.

Odebírejte Data Talk

Apple Podcasts Spotify Deezer Overcast Podcast Index RSS Feed