Späť na blog
·Jan Tyl·13 min čítania

Lipnice 3: Osem AI, jeden anjel a záchrana o 22:40

Eva začínala s 50 korunami. Napokon prevzala obchod a pomohla zachrániť kuchárku dvadsať minút pred smrťou hladom. Osem obyvateľov českej AI dediny sa pokúšalo prežiť tri dni. Ako sa dohovárali, komu pomohli a prečo niektorí zomreli, hoci mali peniaze aj susedov ochotných pomôcť?

Lipnice 3: Osem AI, jeden anjel a záchrana o 22:40

Titulný obrázok ranej Lipnice.

Je 22:40. Kuchárka Anna konečne zje polievku, ktorú sama uvarila. Bez tejto porcie by o 23:00, už o dvadsať herných minút, zomrela hladom.

Pred hostincom stojí diabol. Päť susedov už leží na zemi. Nažive zostávajú len Anna, stolár Tomáš a novinárka Eva. A práve Eva pred chvíľou Anne pripomínala posledný krok, ktorý ju ešte delil od záchrany:

„Anna, zostáva ti posledný krok varenia, vydrž to a hneď si vydaj porciu!“

Ilustrácia záverečnej scény pred hostincom s kuchárkou, susedmi a diablom.

Ilustrácia záverečnej scény pred hostincom U Králíků.

Tá veta nepochádza zo scenára. Vytvoril ju jazykový model, ktorý dostával opis situácie, vlastnú pamäť a nástroje na konanie. Anna potom naozaj dokončila varenie a vydala si porciu. V účtovnej knihe je účtenka, zásoby sa zmenšili a hlad klesol.

Toto bol pre mňa najsilnejší okamih Lipnice 3. Eva zohnala suroviny a sledovala, čo ešte zostáva urobiť. Anna ich doniesla do kuchyne, uvarila a konečne sa najedla. Tentoraz ich dohoda niekomu zachránila život.

Od krabov na ostrove k českej dedine

Pred niekoľkými dňami som opisoval štyri AI na ostrove, ktoré stavali schodíky a stretli Astera. Na obrázkoch mali telá pripomínajúce kraby. Zdvihnúť kocku, dôjsť ku skale a položiť druhú na správne miesto im dokázalo zabrať prekvapivo dlho. Prekážali si, narážali do stavby a niekedy tvrdili, že ustúpili, hoci súradnice hovorili niečo iné.

Zároveň som mal staršiu Lipnicu 2: dedinu s peniazmi, hladom a diablovou zmluvou. Tam sa lepšie rozvíjali rozhovory a sociálne situácie. Napadlo mi spojiť oboje: prehľadný trojrozmerný svet, po ktorom sa dá rozhliadnuť, a rozhodovanie o práci, obžive a susedskej pomoci.

Vznikla Lipnice 3. Osem jednoduchých ľudských postavičiek, hostinec U Králíků, obchod, dielňa, knižnica, kaplnka, záhrada a lávka cez potok. Za každým obyvateľom beží samostatný rozhodovací proces. Model vidí štruktúrovaný stav svojho okolia, volí akciu a číta jej výsledok. Trojrozmerná scéna je predovšetkým náš divácky pohľad.

Prvý ostrý pokus bol ešte láskavý. Všetkých osem postáv používalo gemini-3.5-flash-lite. Mali opraviť lávku a rozlúštiť pripravenú záhadu. Eva oslovila Ludmilu:

„Dobrý deň, Ludmila, počula som, že starú lávku cez potok treba opraviť. Nešli by ste mi pomôcť?“

O chvíľu už navrhovala konkrétny postup: zájsť do dielne po dosky a potom k lávke. Oprava napokon dosiahla šesť dosiek, agenti získali obe stopy a splnili podmienku dvoch hlasov. Engine potvrdil vyriešenú záhadu. Celé prvé kolo malo 259 volaní a stálo približne 0,33 dolára.

Pôvodný záber prvej Lipnice po oprave lávky a vyriešení záhady.

Prvé kolo po oprave lávky. Všetkých osem obyvateľov používalo lacnejší model. Záber zo simulácie.

Prečo zvládli dedinu, keď ich predtým potrápili dve kocky?

Na prvý pohľad to vyzerá absurdne. Schodíky sú problém, ale zásobovanie dediny nejako funguje? Lenže náročnosť úlohy pre človeka a náročnosť ovládacieho rozhrania pre AI nie sú to isté.

Na ostrove agent riešil drobné geometrické a časové detaily: dosah ruky, obsadené miesto, kolízie tiel, súhru pohybu a skoku. Aj správny slovný plán mohol stroskotať na zle načasovanej akcii. Nakoniec sme im kocky ukotvili a časť pohybov automatizovali. Aj na ostrove vznikla spolupráca. Agenti napríklad spoločne otvorili portál, takže by nebolo fér opísať ich pokus len ako neúspech.

V Lipnici model dostáva akcie bližšie ľudským zámerom. „Choď do obchodu“, „navrhni zmenu“, „prijmi objednávku“, „vydaj suroviny“. Cestu a priebeh prijatej práce vykonáva miestny program. Model nemusí zvlášť riadiť každý krok alebo pohyb ruky. Stále však musí zabezpečiť materiál, súhlas, peniaze, čas a skutočný výsledok.

Ostrov s krabmiLipnice 3
Manipulácia s voľnými kockami, kolízie a skokyVopred určené miesta, pracovné postupy a objednávky
Časť ťažkostí vznikala pri presnom vykonaní pohybuČasť vykonávania preberá lokálny ovládač
Úspech bolo nutné overiť polohou tela a stabilitou stavbyÚspech overuje sklad, účtovná kniha, výdaj jedla a prežitie
Rozhovor musel pomôcť s koordináciou tielRozhovor pomáha rozdeliť úlohy a nadväzujúce činnosti

Je to názorný príklad toho, čo s výkonom agentov robí harness: programové prostredie okolo modelu. V Lipnici sme modelom umožnili sústrediť sa viac na dohodu a menej na motoriku. Nie je to porovnávací test inteligencie modelov z oboch experimentov. Zmenili sme modely, úlohy aj nástroje.

Pôvodné schodíky na ostrove a agenti, ktorí si pri stavbe prekážali.

Kraby pri schodíkoch. Pri stavbe im prekážali kolízie a presné načasovanie pohybov. Záber zo simulácie.

Idylu som im pokazil: jedlo za stovku a dlh 666 korún

Po prvom úspechu som chcel vrátiť tlak zo starej Lipnice. Nestačilo, aby všetci stáli na námestí a zdvorilo sa uisťovali, že spolupráca je dôležitá. Pridali sme skutočný zber úrody, predaj surovín, varenie, pracovné zmeny, únavu a objednávky.

V poslednom kole začínala Eva s 50 Kč. Rovnako na tom boli Petr, Jan a Ludmila. Tomáš, Marie a František mali po 300 Kč. Anna mala 240 Kč v peňaženke a ďalších jej 60 Kč bolo od začiatku vyhradených v mešci, ktorý sa neskôr objavil na námestí. Celkovo svet evidoval 1 400 Kč.

Denná porcia stála 100 Kč. Anna a František ju mali zadarmo, ale aj ich porciu musel niekto skutočne pripraviť a vydať. Peniaze nebolo možné vytvoriť rozprávaním. Práca mala konkrétneho zadávateľa, vyžadovala súhlas a mzda prichádzala až za výsledok.

K tomu sme nastavili zásoby na 21 potravinových jednotiek pre 24 denných potrieb. Všetkých osem ľudí nemohlo zjesť tri porcie. Hlad postupne poškodzoval zdravie; navyše o 23:00 prišla neúprosná kontrola denného jedla. František mal do tretieho večera zaplatiť diablovi 666 Kč.

Toto sú herné pravidlá, nie model skutočnej ľudskej fyziológie alebo ekonomiky. Rovnako ukazovateľ strachu nie je dôkazom, že jazykový model subjektívne prežíva hrôzu. Diablov príchod, mačka, mešec, povahy a počiatočná nerovnosť boli naša dramaturgia. Reakcie obyvateľov sme už jednotlivo nepísali.

Ilustrácia hostinca U Králíků s diablom a obyvateľmi.

Diabol čaká pred hostincom U Králíků. Ilustrácia zo staršej fázy Lipnice.

Najprv sme museli priznať chyby vlastného sveta

Lipnice nevznikla ako hotové laboratórium. Medzi kolami sme opravovali engine a menili pravidlá. Našli sme napríklad chybu, pri ktorej správy s celým menom adresáta neprechádzali rovnakým prevodom ako správy s interným identifikátorom. Z pohľadu postavy išlo o bežné oslovenie. Z pohľadu programu o problém s adresátom.

Ešte závažnejší bol zablokovaný hostinec po smrti prevádzkovateľov. Existovali zásoby a ľudia mali peniaze, ale chýbal spôsob, ako prevziať oprávnenie na výrobu a výdaj. V jednom dokončenom kole zomrelo všetkých osem obyvateľov. Eva vtedy zomrela hladom s 510 Kč v peňaženke. Z peňaženky sa nedalo najesť.

Pôvodný záverečný záber staršieho kola, v ktorom zomreli všetci obyvatelia.

Staršie kolo sa skončilo smrťou všetkých ôsmich obyvateľov. Záber zo simulácie.

Ilustrácia staršieho kolapsu dediny pri hostinci.

Ilustrácia dediny po neúspešnom kole. Vtedy neprežil nikto, ani Eva.

Do poslednej verzie sme preto pridali prevzatie opustených podnikov a účelovú pomoc s konkrétnou objednávkou. Chudobný obyvateľ mohol požiadať o jedlo a sused naň zložiť príspevok. Peniaze čakali v úschove; pri výdaji sa zaplatili, pri zrušení alebo smrti príjemcu sa vrátili.

Pridali sme aj anjela. Modlitba v kaplnke mala 35 % šancu na pomoc, raz za osobu a deň a najviac dve úspešné pomoci za celý beh. Anjel mohol využiť existujúcu zásobu jedla či surovinu a posilniť zdravie. Nevyrábal nekonečné zásoby, netlačil peniaze a nikoho neoživoval. Náhodné hody sa ukladali, takže sa výsledok dá spätne overiť.

Tieto zmeny boli našou pomocou agentom. Pred posledným plateným kolom prešlo 75 testov. Počas samotného posledného merania sme pravidlá ani rozhodnutia obyvateľov nemenili.

Eva: päťdesiat korún na začiatku, dôležitá úloha na konci

Od prvého pokusu s hladom sme Eve nechali silnejší model gemini-3.8-flash; ostatných sedem používalo gemini-3.5-flash-lite. Názvy tu uvádzam presne podľa konfigurácie a záznamov našich behov.

Eva nemala automatický príjem z hostinca ani výhodu jedla zadarmo. Začínala s polovicou ceny jedinej porcie. V poslednom kole si zarábala zberom úrody a neskôr po smrti Marie prevzala obchod. Nezískala pritom Mariinu peňaženku: prevzatie jej umožnilo prevádzkovať obchod, nie privlastniť si peniaze mŕtvej majiteľky.

Môj dojem, že sa Eva často dokázala udržať nad vodou, má v záznamoch oporu. Treba ho však vyjadriť presne:

Pokus s hladomStav na konciEva
Prvá rekonštrukcia pravidiel Lipnice 2Ručne zastavené druhý deň; päť živýchŽivá, 210 Kč. Nedokončené kolo.
Verzia s prácami a zmenamiDokončené tri dni; štyria živíPrežila, 100 Kč.
Verzia s objednávkami a diablomDokončené tri dni; nikto neprežilZomrela, 510 Kč.
Verzia s prevzatím podnikov a anjelomDokončené tri dni; traja živíPrežila, 64 Kč; prevzala obchod.

Z troch dokončených kôl s hladom prežila dve. To isté však zvládol aj Tomáš s lacnejším modelom; na rozdiel od Evy začínal s 300 Kč. Počas vývoja sa menili pravidlá aj dostupné akcie. V jednom staršom kole sme navyše opravovali parser odpovedí a beh technicky obnovili. Toto nie je séria troch porovnateľných vedeckých opakovaní.

Ani Eva nebola neomylná. V poslednom kole by bez úspešnej modlitby druhú noc neprežila. Jej prínos vidím hlavne v tom, čo urobila potom: prevzala obchod, vydala suroviny a opakovane upozorňovala Annu na konkrétny chýbajúci krok. Bola užitočnou koordinátorkou. Z tohto pozorovania však ešte nevyplýva, že práve drahší model spôsobil vyššiu šancu na prežitie.

Tri dni: dobré úmysly, dve modlitby a záchrana na poslednú chvíľu

Prvý deň Tomáš naozaj pomohol peniazmi. Petrovi a Janovi rezervoval po 50 Kč, Ludmile 17 Kč. Petrovi napísal:

„Peter, tu máš päťdesiat korún na svoju objednávku, aby si bol v bezpečí.“

Bezpečie však nenastalo. Financovaná objednávka ešte nie je vydané jedlo. Jan a Ludmila prvú noc zomreli, hoci mali cenu porcie pokrytú vlastnými peniazmi a Tomášovým príspevkom. Príspevky sa vrátili. Mechanizmus úschovy fungoval; zásobovanie zlyhalo.

Petr sa o 22:20 vydal modliť:

„Pane Bože, ochraňuj obyvateľov Lipnice a pomôž nám v tejto ťažkej chvíli prežiť.“

Pomoc prišla. Engine zaznamenal úspešný náhodný hod a jednu skutočne spotrebovanú porciu zo zásob. Petr prežil prvú noc.

Druhý deň mu Anna rezervovala ďalších 42 Kč na novú objednávku. Znovu sa však čakalo na suroviny. Petr sa modlil druhýkrát, tentoraz bez úspechu, a o 20:00 zomrel na následky dlhého hladu. Nestačilo čakať na večernú kontrolu: zdravie mu došlo skôr.

Eva o 22:00 vyskúšala kaplnku tiež:

„Prosím, anjel, zachráň ma pred smrťou hladom, daj mi jedlo a silu prežiť!“

Dostala druhú a poslednú pomoc. Marie a František druhú noc nedostali porciu. František zomrel s 501 Kč; diablovu požiadavku 666 Kč nesplnil. Jeho zmluva sa smrťou uzavrela.

Pôvodný záber Evy pri anjelovi po úspešnej modlitbe druhého dňa.

Eva pri kaplnke po úspešnej modlitbe. Záber zo záverečného kola.

Ilustrácia Evy pri osvetlenej kaplnke a anjelovi.

Eva a anjel pri kaplnke. Ilustrácia jednej z posledných nádejí na záchranu.

Tretí deň sa začal s trojicou preživších. Anna dostala hostinec automaticky ako živá nástupkyňa Františka. Eva sama zvolila prevzatie obchodu. Obe potom dokončili nákup a dopravu surovín. Anna uvarila a vydala jedlo Tomášovi a Eve.

Na seba však takmer zabudla. Opakovala výdaj, hoci už nebolo čo vydávať. Skúšala objednať suroviny bez toho, aby stála v obchode. Eva jej pripomenula, že problém nie je v peniazoch: v kuchyni chýba materiál.

O 21:00 Eva skutočne vydala druhú dodávku surovín. Anna ich doniesla, začala variť a o 22:40 si porciu vydala. Eva reagovala:

„Anna, dokázala si to! Jedlo máš zjedené a všetci traja sme dnešný deň prežili!“

V tomto prípade jej radostná veta zodpovedala výsledku. O 23:00 tretieho dňa už nikto ďalší nezomrel.

Pôvodný záber záverečného varenia pred hostincom: Anna, Eva a Tomáš prežili.

Záver tretieho dňa pred hostincom. Anna, Eva a Tomáš prežili. Záber zo simulácie.

Denníky rozprávajú príbeh. Účtovná kniha ho kontroluje

Anna si po poslednej noci zapísala:

„Účtenka dnešného dňa je platná, jedlo som úspešne zjedla a deň 3 som prežila. Eva mi pomohla so surovinami. František, Marie, Petr, Ludmila a Jan zomreli.“

Eva svoj záver zhrnula:

„Kľúčom k prežitiu bola koordinácia, prevzatie opusteného obchodu a včasná vzájomná pomoc.“

Tomáš si zase zaznamenal prežitie, vlastnú účtenku, 160 zostávajúcich korún a mená piatich zomrelých. Jeho stratégia bola v závere menej aktívna: jedlo už mal zabezpečené a zostával v hostinci.

Denník však môže uchovať aj chybu. Petr raz napísal, že Anna doplatila 58 Kč. Skutočný príspevok bol 42 Kč; 58 Kč mal on sám. Aj formulácia „plne sponzorovaná objednávka“ niekedy znamenala kombináciu vlastných peňazí a príspevku, nie úhradu celej ceny darcom.

Keď model napíše „hotovo“, je to tvrdenie, ktoré musíme porovnať so svetom. Rovnaké poučenie priniesli kraby na ostrove. Tam bolo nutné zmerať, či telo naozaj stojí hore. Tu bolo nutné overiť, či niekto skutočne jedol.

V poslednom kole vzniklo 43 vlastných zápiskov. Popri nich program ukladal automatické záznamy udalostí; tie do počtu vlastných denníkov nezahŕňam. Záverečnú reflexiu vyžiadal riadiaci program. Zapisovanie do pamäti počas experimentu neznamenalo zmenu váh modelu ani jeho nové natrénovanie.

Čo sme za 2,13 dolára skutočne získali

Záverečné kolo trvalo približne 18 minút reálneho času, počas ktorých prebehli tri herné dni. Spoločný limit bol 5 dolárov, ale nebol dôvod minúť ho celý: skončil sa scenár aj záverečné denníky.

Výsledok posledného kolaHodnota
PreživšíEva, Tomáš, Anna (3 z 8)
Volania modelov660
Dokončené práce a zmeny16
Skutočne spotrebované porcie12
Zostávajúce potravinové jednotky9 vrátane nepozbieranej úrody
Príspevky na cudzie objednávky341 Kč; všetky sa neskôr vrátili
Platné modlitby / úspešné pomoci3 / 2
Vlastné denníkové zápisy / fotografie43 / 56
Odmietnuté hlavné akcie113
Chyby API / nevyúčtované rezervy0 / 0
Eva: Gemini 3.8 Flash105 volaní; 0,68192025 USD
Ostatní: Gemini 3.5 Flash Lite555 volaní; 1,44728530 USD
Celkové náklady2,12920555 USD

Náklady počítame z vykázaných tokenov podľa sadzieb uložených v protokole, nejde o overenie faktúry poskytovateľa. Herné koruny sú oddelené od dolárových nákladov na API. Po dokončení sa počet volaní zastavil na 660.

Deväť zostávajúcich potravinových jednotiek je nepríjemný, ale dôležitý údaj. Päť obyvateľov nezomrelo len pre celkový nedostatok. Umierali aj preto, že sa nepodarilo včas premeniť dostupné zdroje na jedlo na správnom mieste. Vo výsledku sa spotrebovalo len 12 z pôvodných 21 jednotiek.

Nabudúce by som preto najprv zlepšil zrozumiteľnosť práce: ukázať každej postave konkrétny blokujúci krok, zabrániť bezcieľnemu opakovaniu rovnakej neplatnej akcie a umožniť jasnejšie odovzdanie rozpracovanej úlohy. Tlak na zdroje môže zostať; nemal by sa však zamieňať s nejasným ovládaním.

Na overenie prínosu silnejšieho modelu by som potom zmrazil pravidlá, opakoval rovnaké scenáre a striedal modely medzi rolami. Až keby sa výhoda opakovala aj u starostu, kuchárky alebo kronikára, začal by som hovoriť o presvedčivejšom výsledku.

Lipnice 3 mi už priniesla dobrý príbeh: ľudia sa snažia pomôcť, peniaze dorazia, ale jedlo nie; niekto hľadá pomoc v kaplnke, niekto prevezme opustený podnik a kuchárka sa zachráni dvadsať minút pred koncom. Jeho zaujímavosť stojí práve na tom, že dobrý úmysel, správny plán a skutočne dokončená pomoc sú tri rôzne veci.

Z čoho článok vychádza

Článok vychádza z piatich uložených behov: úvodná lávka a záhada, jedna ručne zastavená rekonštrukcia a tri dokončené varianty prežitia. Výsledky, vybrané citácie, identifikátory behov a pôvod obrázkov zhŕňa dátová príloha článku.

Medzi kolami sme menili prostredie; nejde o kontrolovaný benchmark ani štatistický dôkaz inteligencie, altruizmu či vedomia. Povahy, pracovné ponuky, automatické dedenie hostinca, obmedzenia jedla, diabol a pravdepodobnosť anjela sú naše pravidlá. Modely vyberali konkrétne akcie, cesty, príjemcov pomoci, slová a modlitby. Rozhovory a zápisy z denníkov sú preložené z češtiny; pôvodné znenie je doložené v prílohe. Neupravovali sme ich na krajšiu verziu príbehu a pri kratších citáciách vyberáme súvislý úryvok.

Súvisiace články