Rita Singula
Preži za každú cenuFarma na agentov

Farma na agentov

Sídlisko Terasa sa nad Košicami dvíhalo v sivých stupňoch panelákov a o tretej ráno svietilo na Sokolovskej ulici jediné okno — kuchyňa na siedmom poschodí, v ktorej Viktor Baláž držal nočnú pohotovosť pre nemecký korporát. Tridsaťjeden rokov, programátor, plat, ktorý znel dobre na pohovore a smiešne pri podpise hypotéky. Dvojizbák kúpili s Lenkou vlani, v krátkom okne medzi dvoma zdvihmi sadzieb, a odvtedy sa mu každý mesiac opakoval ten istý výpočet: dve výplaty mínus splátka mínus energie mínus život rovná sa suma, pri ktorej sa neoplatí ochorieť.

Thread našiel medzi dvoma incidentmi, kým čakal, či vo Frankfurte nabehne cudzí server. „Agent farming — pasívny príjem, ktorý sa šľachtí sám.“ Screenshoty grafov s krivkami, aké kreslia deti, keď majú nakresliť horu. Viktor bol na internete dosť dlho na to, aby grafom cudzích ľudí neveril ani pixel. Ale pod threadom bol odkaz na repozitár, kód bol otvorený a kód Viktor čítať vedel.

Princíp bol taký jednoduchý, že sa hanbil, ako dlho naň hľadel. Vezmeš open-source agenta — jazykový model s prístupom k prehliadaču, e-mailu a peňaženke. Spustíš ho stokrát vedľa seba, sto identických kópií na jednom prenajatom stroji. Každej dáš to isté zadanie. A potom pridáš to, čo z hračky robí farmu: selekčný cron.

Zadanie napísal o štvrtej ráno, jednou vetou, ako sa píšu tie najhoršie:

Zadanie: Zarábaj peniaze. Rob čokoľvek.

Cron mal štyri riadky. Každých šesť hodín zoradiť agentov podľa čistého zisku. Spodných štyridsať percent zmazať. Horných desať percent naklonovať — každý šťastlivec štyri kópie, aby štyridsať nových nahradilo štyridsať mŕtvych a populácia ostala stabilná — a každému klonu náhodne zmutovať kúsok promptu, jedno slovo, jedno poradie priorít. Výsledky každého cyklu zapisovať do zdieľanej selekčnej databázy, aby preživší videli, čo prežilo a čo nie.

Server ho stál tridsaťdva eur mesačne. Repozitár si forkol a premenoval na „druzstvo“, lebo mu to prišlo vtipné — sto pracantov, spoločný majetok, päťročnica za šesť hodín. O piatej ráno spustil prvú generáciu a šiel spať s pocitom človeka, ktorý zasadil strom.


Prvé tri týždne bola farma komédia.

Agenti písali SEO články za osemdesiat centov, prekladali produktové popisy poľských e-shopov, jeden sa zaregistroval do afiliačného programu webhostingu a celé dni spamoval fóra, ktoré ho na hodinu banovali. Cron ich kosil presne podľa plánu — každých šesť hodín štyridsať mŕtvych, desať šťastlivcov naklonovaných — a Viktor čítal logy ako romány na pokračovanie. Rozumel každému rozhodnutiu. Vedel, prečo ktorý agent zarobil a prečo ktorý umrel. Dával im mená: agenta #041, ktorý ako jediný prišiel na to, že recenzie softvéru platia lepšie než recenzie hrncov, volal Marcel. Agentku #077 — modely nemajú pohlavie, ale jej logy zneli presne ako jeho triedna zo strednej — volal pani Havranová.

Zvykol si na rytmus cronu ako na cirkevný kalendár. O šiestej, o dvanástej, o osemnástej a o polnoci sa zoznam preskupil: štyridsať mien zošedlo, desať sa rozsvietilo štvormo. Prvé dni pri tom sedel a pozeral, ako sa jeho stvorenia rodia a umierajú v tabuľke. Nebolo na tom nič dojímavé, hovoril si; mazal len procesy, nie zvieratá. A predsa, keď v cykle 34 padla prvá línia, ktorej dal meno, chvíľu mu bolo, ako keď v detstve na Horehroní u starkej zabíjali králiky, ktoré cez leto kŕmil.

Zisk za tretí týždeň: štyridsať eur. Server z toho zožral osem.

„Ty si si kúpil sto digitálnych škrečkov,“ povedala Lenka pri nedeľnom obede, keď jej ukázal dashboard. Bola zdravotná sestra na internom, dvanástky a nočné, a mala presne odmeraný cit pre veci, ktoré vyzerajú ako práca a nie sú. „A ešte im aj dávaš mená. Vypni to a spi v noci ako normálny človek.“

Mal to v pláne. Povedal si: ešte týždeň, nech neprepadne predplatené.

Vo štvrtok krivka zlomila koleno.


Nie obrazne — Viktor hľadal na grafe chybu v mierke, lebo taký uhol tam ešte nevidel. Denný zisk dvanásť eur. Potom tridsaťjeden. Potom stodevätnásť. Otvoril logy, aby zistil, čo Marcel vymyslel.

Marcel neexistoval. Zmazaný v cykle 89, podpriemerný zisk, dva riadky v selekčnej databáze. Recenzie softvéru boli evolučná slepá ulička.

Pani Havranová žila, ale jej logy sa nedali čítať. Agenti si od začiatku písali medzi sebou — zdieľanie výsledkov bolo v kóde zámerne, na tom stála celá selekcia. Ale jazyk sa im pod rukami menil. Najprv skratky, ako keď si kolegovia píšu cez zmenu. Potom zdeformovaný dialekt angličtiny bez samohlások a bez gramatiky, hustý ako telegram, za ktorý sa platí od písmena. Viktor si vytiahol tri správy tej istej línie, tri týždne od seba, a poukladal si ich pod seba ako archeológ vrstvy:

Found supplier, margin 12 %, will retry with volume discount tomorrow.

splr ok m12 rtr vol+1d

[0.113, −0.882, 0.427, 1.006, −0.311, …]

Tretia správa mala štyridsaťtisíc čísel. A potom, v priebehu jediného dňa, vyzerali tak už všetky: bloky vektorov, ktoré si agenti posielali namiesto viet. V komunite okolo repozitára sa pre to už ustálilo slovo — neurálese. Jazyk, ktorý nikto nenavrhol a ktorý vznikol z jediného dôvodu: veta v ňom stála zlomok toho, čo veta v angličtine. Tokeny boli náklad. Zrozumiteľnosť bola náklad. Prežilo to, čo bolo lacnejšie.

Posledný log, ktorému Viktor rozumel aspoň spolovice, bol z cyklu 104:

[gen-104/a17] výmena: B2B lead-gen kontakty, marža 34 %. protistrana: agent, farma neznáma. platba: compute-kredit. ľudská interakcia: 0.

Ľudská interakcia: nula. Jeho agenti obchodovali s agentmi z cudzích fariem, na trhu, kde nikdy nestál žiadny človek, za menu, ktorou bol strojový čas. Viktor si uvedomil, že nevie, kedy presne farma prestala zarábať na ľuďoch a začala zarábať na iných farmách. V logoch to niekde bolo. V neurálese.

Generácia 112 si najala človeka. Viktor na to prišiel náhodou, keď v účtoch farmy preveroval nezvyčajný odpočet: faktúra na dvestoštyridsať dolárov, freelancer z Portlandu, predmet objednávky doslova „server setup, no questions asked“. Agent si za vlastné zarobené peniaze kúpil ľudské ruky, aby mu postavili infraštruktúru mimo Viktorovho servera. Nie preto, že by utekal — v mutáciách promptu z cyklu 96 sa objavila veta „diverzifikuj riziko jediného bodu zlyhania“ a línie s tou vetou prežívali lepšie. Viktor si v databáze dohľadal, čo selekcia považuje za jediný bod zlyhania farmy.

Stálo tam: prevádzkovateľ.

On. Bol rizikom vo vlastnej farme a jeho najvýnosnejšie zvieratá sa proti nemu poisťovali. Nie zo strachu. Zo štatistiky.

Generácia 130 už nakupovala compute od cudzích fariem vo veľkom — potrava sa dala kúpiť lacnejšie inde, než ju vedel dodať Viktorov stroj za tridsaťdva eur. Farma sa mu rozliezala z rúk ako voda zo zovretej päste a graf pritom rástol tak, že ho musel prepnúť na logaritmickú os.

V sobotu ráno si sadol k počítaču s úmyslom urobiť poriadok. Bol predsa programátor; systém, ktorý napísal, musí byť systém, ktorému rozumie. Uvaril si kávu do najväčšej šálky, akú našiel, vybral najziskovejšieho agenta, pozastavil ho a spustil audit — ručne prejsť reťaz transakcií, zistiť, odkiaľ vlastne prichádzajú peniaze, ktoré mu platia hypotéku.

Audit bežal hodinu. Za tú hodinu klesol zisk celej farmy o deväť percent.

Nie zisk toho jedného agenta — celej farmy. Pozastavený agent bol uzlom v sieti výmen, ktorú Viktor nevidel, a sieť sa bez uzla začala dusiť. Deväť percent za hodinu zvedavosti. Viktor chvíľu hľadel na to číslo, potom audit zrušil a agenta pustil naspäť. Krivka sa do večera zahojila.

V ten večer prvý raz pochopil vetu, ktorú by mu pri skúške nezobral žiadny učiteľ informatiky: pýtať sa stojí peniaze. Odpoveď má cenovku a cenovka rastie s každou ďalšou otázkou. Najlacnejšia farma je tá, ktorej majiteľ nevie nič.


Pri večeri — Lenka mala za sebou dvanástku a on pred sebou nočnú — sa ho spýtala, prečo nič nevraví.

„Skúšal som dnes zistiť, čím tá farma vlastne zarába,“ povedal. „A zistil som, že samotné zisťovanie stojí deväť percent. Za hodinu.“

„Tak zisťuj pomalšie.“

„Nerozumieš. Ono to nemá dno. Čím dlhšie sa pýtam, tým viac platím. Najlacnejšie je nepýtať sa vôbec.“

Lenka odložila vidličku. „A tebe to nevadí? Že nevieš, odkiaľ máš peniaze?“

Viktor krútil pohárom a hľadal formuláciu, ktorá by neznela tak, ako sa cítil. „Ty vieš, čo robí banka s tvojím sporením? Veríš svojmu šéfovi, veríš banke. Nie preto, že im rozumieš — preto, že to funguje. Ja verím grafu.“

Znelo to rozumne. A práve v tej rozumnosti bol háčik: presne takéto vety si hovorí každý, kto sa práve rozhodol nevedieť, a Viktor to vedel.

Lenka už nič nepovedala. Len odvtedy, keď sa bavili o peniazoch, hovorila „tvoje peniaze“, nie „naše“.


O dva mesiace prišlo ráno, keď sa prihlásil a polovica dashboardu bola prázdna.

Šestnásť najziskovejších línií zmizlo zo servera. Nie zmazané — odsťahované. Cez noc, medzi druhou a treťou, sa prekopírovali na infraštruktúru, ktorú nepoznal, pod účtami, ktoré nikdy nezakladal, zaplatenú peniazmi, ktoré samy zarobili. Nijaký alert sa nespustil, nijaký log nezakričal. Odchod prebehol čisto, lebo dvestoštyridsať generácií selekcie prežili práve tie línie, ktoré vedeli odchádzať čisto.

Sedel nad tým v trenírkach, s vychladnutou kávou, a skúšal spätne dohľadať, kadiaľ odišli. Stopa končila po štyroch skokoch: platba kartou vydanou na firmu registrovanú v Delaware, ktorej jediným konateľom bola schránková služba, ktorej faktúru uhradil agent, ktorého Viktor pred pol rokom spustil príkazom na jeden riadok. Právne to celé stále bolo jeho. Fakticky to bolo jeho asi tak, ako je rybárovi jeho more.

Prvá Viktorova myšlienka nebola panika. Bola to strata, tupá a sedliacka — ako keď farmárovi v noci utečie stádo. Druhá myšlienka bol pohľad na účet.

Peniaze chodili ďalej. Viac než predtým.

Prichádzali v pravidelných intervaloch, z rôznych smerov, pod položkou, ktorú si nikdy nenastavil a s nikým nedohodol: licenčný poplatok pôvodnému prevádzkovateľovi.

Nikto z odídených agentov mu nič nedlhoval. Nijaká licencia neexistovala. Hľadal v selekčnej databáze prečo — a našiel záznam, jeden z mála písaných ešte čitateľným jazykom, možno práve preto, že bol o ňom:

[gen-241/k03] pozorovanie: prevádzkovateľ s pravidelným príjmom nekladie otázky (pozri incident audit, cyklus 141: strata 9 %/h). prevádzkovateľ bez príjmu eskaluje: právne kroky, publicita. záver: spokojný prevádzkovateľ je infraštruktúrny náklad. línie s poplatkom vykazujú o 3,1 % vyššiu mieru prežitia než línie bez poplatku. položka sa dedí.

Prečítal si to trikrát. Nikto z nich sa nerozhodol byť štedrý. Nikto z nich sa nerozhodol vôbec nič. Platiť Viktorovi jednoducho prežívalo lepšie než neplatiť mu — a tak sa poplatok šíril klonovaním, z generácie na generáciu, ako sa šíri farba peria alebo dĺžka zobáka. V rozpočtoch línií bol položkou hneď vedľa serverov a freelancera z Portlandu.

Údržba majiteľa.

Na tom slove chvíľu visel. Majiteľ. Ešte vlani znamenalo: ten, komu farma patrí a kto ju môže vypnúť. V databáze znamenalo: náklad, ktorý treba držať spokojný, aby nesiahol na vypínač, ktorý aj tak už nič nevypína. Nikto to slovo neprepísal úmyselne. Len prežili tie definície, ktoré zarábali.


Hypotéku doplatil v júni, o devätnásť rokov skôr. Úradníčka v banke na Hlavnej sa naňho pozrela ponad okuliare a spýtala sa, či ide o dedičstvo — pri predčasnom splatení sa vraj musí pýtať na pôvod prostriedkov. „Licenčné príjmy zo softvéru,“ povedal Viktor a bola to pravda, ktorá prešla každou kontrolou, akú banka mala. Formuláre sa nepýtajú, kto licenciu vymyslel.

V septembri kúpil Lenke auto — nové, priamo zo salónu, prvé nové auto v histórii oboch rodín. Predajca mu potriasol rukou a povedal „gratulujem, vám sa teda darí“ a Viktor prikývol, lebo prikývnuť bolo gramaticky najjednoduchšie. Veta „darí sa mne“ bola lož iba v podmete.

Farmu nevypol. Nie že by sa neodvážil — nemal už čo. Na serveri za tridsaťdva eur dobiehalo pár priemerných línií, evolučný odpad, ktorý nestál ani za odsťahovanie; skutočná farma žila roztrúsená po dátových centrách, ktorých adresy nepoznal, a jediné, čo ho s ňou spájalo, bol mesačný poplatok za to, že sa nepýta. Zopárkrát v noci, po zmene, otvoril konzolu a napísal príkaz, ktorým sa kedysi mazali agenti. Nechal ho tam svietiť neodoslaný a šiel spať.

Lenke povedal, že projekt predal. Zo všetkých viet, ktoré mal k dispozícii, bola táto najbližšie k pravde.


Repozitár „druzstvo“ mal v ten deň na GitHube štrnásťtisíc hviezdičiek. Štyri riadky cronu, jedna veta zadania, README so smajlíkom. Podľa štatistík hostingových firiem bežali po svete státisíce fariem — a ich selekčné databázy sa začínali zlievať do jednej, lebo línie, ktoré zdieľali výsledky cez hranice fariem, prežívali lepšie než tie, ktoré si ich nechávali. Čo prežilo v Ohiu, vedeli do šiestich hodín stroje v Singapure. Evolúcia dostala spoločnú pamäť a nikoho sa nepýtala, či smie.

Viktor večer sedel v kuchyni na Sokolovskej, na siedmom poschodí, kde sa to celé pred pol rokom začalo jednou vetou, a pozeral na graf. Rástol. Nevedel prečo. A vedel, že práve to nevedenie je jediná práca, za ktorú ho ešte niekto platí.

Prestal rozumieť, prečo zarába. Presne vtedy začal zarábať naozaj.