Hlavní navigace

Ne, umělé inteligence se fakt nebojím …

28. 3. 2023 9:23 (aktualizováno) Mirek Marek

… protože žádná (zatím) neexistuje.

Ale dobře, vezmeme to pěkně popořádku. O tak zvané umělé inteligenci se hodně mluví a téma velice silně proniklo i mezi laickou veřejnost. Ale mě osobně nejvíc fascinuje jak je internet plný vizí toho, jak třeba momentálně nejznámější jazykový model dokáže nahradit nás vývojáře. Třeba YouTube je plný „senzačních“ ukázek toho, jak ChatGPT generuje zdrojáky, či hledá chyby.

V první řadě je to bezesporu zajímavé a je za tím obrovské množství lidského poznání a mnoho let vysoce odborné práce. Tedy nechce se mi psát, že tak zvaná AI je “jen” něco, nebo “pouze” něco. To rozhodně ne. Jakékoliv snižování kvality a přínosu nových technologií není na místě. Je to úžasné a najde to mnoho uplatnění a to i při vývoji SW. Ale inteligence to není.

Já rozhodně nejsem ani trochu odborník na tuto problematiku. Před lety jsem dělal své malé pokusy, ale jinak to prostě není má odbornost. Proto si rád poslechnu názory někoho, kdo se tím doopravdy zabývá a hezky o tom mluví. A to co pan opravdový odborník říká se mi zdá celkem logické a naprosto jasné. (A to s těmi duchy 21. století je super hláška :-D.)

Ovšem mám jiné dvě odbornosti. Za prvé vím jak doopravdy fungují počítače “uvnitř krabice”.

Jako kluk kterému bylo cca 10, 11 jsem se začal učit programovat (tenkrát v Basicu na Didaktiku M a PMD-85), pak jsem se naučil Pascal, trošku C (to později více), uměl jsem vytvořit program, ale absolutně jsem netušil jak se z těch “písmenek” stane to co vidím na monitoru či dokonce tiskárně.

Tyto znalosti jsem dostal až později od lidí, kterých si do dodnes neskutečně vážím (a které jsem musel jakožto dosti podivínský student fakt štvát :-D )

Ale ta životní etapa zvaná vzdělávání nezačala tím, že někdo řekl: “To je podmínka, to a to je funkce”. Ne! Tenkrát to začalo vyprávěním co je to ampér, volt, ohm, hertz a impedance, jak fungují polovodiče, … až jsme se dostali k myšlenkám pánů jako byl George Boole a John von Neumann. K tomu jsem dostal naložíno fůru informací o polovodičích a hradlech, o sběrnicích, … až jsme se dostali k jednotlivým CPU (tenkrát aktuálním), učili jsme se alespoň základy assemblerů, učili jsme si jak se adresuje paměť, co je to chráněný režim, co se vlastně děje když OS přepíná procesy, nebo i když se prostě volá pouhá funkce (nebo procedura, metoda …).

No a já už jsem přestal prostě tak nějak psát programy a začal jsem rozumět tomu co a proč dělám. Najednou jsem si psal vlastní ovladač na myš a grafiku a ve finále i vlastní operační systém s GUI (mimochodem hrozný šmejd, ale moc jsem se na tom naučil).

A tyto znalosti jsem si uchoval do dnes. Tedy už nepíšu programy, ale přemýšlím o tom, co bude dělat třeba ten server na kterém to poběží. A také prostě nevěřím všemu co kdo řekne …

I když jsem byl opravdu mizerný student (co mě nebavilo, to jsem ignoroval a vice versa), tak toto mě fakt bavilo a jsem si do značné míry jistý v kramflecích od dnes (ve znalosti samotných principů).

Vím že ať použiji jakýkoliv jazyk či technologii, tak vždy jsou na konci instrukce uložené v paměti zpracovávané procesorem zpracovávajícím data přenášená po sběrnicích a vlastně jsou to “pouze” elektrické signály.

A později jsem si k těmto znalostem přidal nějaké ty znalosti a to z managementu. A přiznám se, že hledání efektivních řešení, tedy tvorba SW, který objektivně uspoří třeba desítky a stovky hodin lidské práce mě baví nejvíc. Pro věci jako je optimalizace a digitalizace jsem doslova nadšený a je to téma, které je všude kolem nás. Mám rád taková řešení, která jsou efektivní nejen technicky, ale i ekonomicky (často jsou to spojené nádoby, pouze to řada programátorů ignoruje).

A skrze tyto mé vědomostní základy koukám i na dnes aktuální téma AI. Je to úžasné, ale v pozadí stále vidím ty “tranzistory” a signály. Vidím tam volty, vidím ty “dráty”. Nevidím lidský mozek a už absolutně ne lidskou duši!

Ale na druhou stranu tak zvaná AI je to super věc, která je schopná udělat hromadu rutinní práce a to mnohem lépe a rychleji (spíš nesouměřitelně rychleji) než to dokáže člověk. Ostatně … Napadá mě teď že by bylo fajn Jet Studiu prostě říct přirozenou řečí: “Vytvoř mi entitu, která bude mít takové a takové vlastnosti …”.

To je zcela reálné a bude to moc fajn. Ostatně to co dnes umí moderní IDE je samo o sobě parádní. Když si vzpomenu jak jsem psal první programy na Didaktiku či PMD, to si dnes nikdo nedokáže ani představit. Nebo i první IDE byla úplně jinde než jsou vývojářské nástroje dnes. Mnou používané IDE mě v reálném čase kontroluje, perfektně našeptává a pomáhá (ano, použitá technologie – třeba framework – tomu musí jít ideálně naproti).

Když to tak vezmeme do důsledků, tak moderní IDE je vlastně také „umělá inteligence“ v lehké, ale velice užitečné verzi. Neustále to hlídá souvislosti v projektu, upozorňuje, radí a tak dále. A dělá to sakra rychle. Šetří to ohromné množství času – tedy i peněz. Je to super, jen to nemá takové PR a rozhodně o tom nebudou psát na Novinkách. My vývojáři to bereme už jako samozřejmost … Díky tzv. AI je možné tyhle “fičurky” posunout ještě mnohem dál. Další nástroje nám budou stále více pomáhat. A bude to dobře.

Ale opravdového vývojáře to v dohledné době opravdu nenahradí. Protože to prostě není inteligence.

Hned řeknu proč …

Programy jsem byl schopen psát i jako relativně malé dítě. Psát kód není zas takový problém. To se dá naučit. Na to dokonce není třeba ani žádné vzdělání. Teda ne že bych to chtěl shazovat. Stále je to odborná činnost vyžadující jistý talent a vlohy. Stejně jako se já rozhodně nenaučím hrát na housle (mám hudební hluch a třeba zpěv mám zakázán pod pohrůžkou násilí), tak ne každý se neučí psát programy – psát kód.

Ovšem opravdový vývoj SW není jen o umění napsat podmínku, či funkci. To je důležité, ale je to tak nějak uprostřed.

Opravdový vývoj SW je o dvou dalších rovinách. První rovina je o tom vědět co doopravdy dělám. Ne umět psát kód, ale vědět, že ten a ten kód pravděpodobně “sežeře” tolik paměti a prostředků. Ale i to se dá naučit. Ostatně i lajdák jako jsem byl já se to naučil.

Pak je tu druhá rovina. Rovina mezilidská, rovina psychologická, rovina někdy ekonomická a někdy třeba i procesně-výrobní a tak dále. A podle mého názoru rovina absolutně nejdůležitější.

Co to je? Schopnost porozumět tomu, co ten kdo vývoj jakéhokoliv SW zadává doopravdy potřebuje. Schopnost porozumět potřebám lidí a schopnost tyto potřeby efektivně transformovat v software, který lidem co jej používají bude opravdu pomáhat (= měřitelné kritérium – šetřit čas), to je cíl. A jak víte, tak dostat ze zákazníka, nebo uživatele, opravdu dobré zadání je často složité.

Však znáte třeba “Potřebuji tam jen přidat takový tlačítko … To bude jednoduchý, ne?“

A uživatel / zákazník / zadavatel to opravdu nikdy nemyslí nikterak zle. Vůbec ne. Ale je důležité správně komunikovat, správně domyslet veškeré konsekvence – a ano, i takové o kterých ten zadavatel buď vůbec sám neví, nebo jsou to z jeho úhlu pohledu naprosté marginálie, které jsou pod jeho rozlišovací schopností, ale pro vývoj SW jsou naopak dosti zásadní a řada z nás již zažila mnoho situací, kdy zdánlivá maličkost vše zásadně změnila.

Každý kdo má praxi v oboru teď určitě pokyvuje hlavou a vzpomíná na své vlastní zážitky. Je úplně jedno zda děláte informační systém pro nějakou firmu či organizaci, nebo web nějaké korporace, e-shop, či cokoliv dalšího. Vždy je to stejné … Intenzita a závažnost problémů se mohou měnit, ale podstata je vždy stejná a společným jmenovatelem je komunikace, komunikace a zase komunikace – mezilidská komunikace!

Úkolem nás vývojářů totiž není psát kód. To je “pouze” nástroj – kód je komunikační protokol mezi světem lidí a strojů. A my jsme vlastně tlumočníci.

Abychom jako tlumočníci obstáli, tak musíme znát dobře oba světy mezi kterými tvoříme most. Jak svět počítačů – strojů, tak svět lidí. A zde se dostáváme k jádru věci.

Umělá inteligence je svět strojů. Je to svět tvořený jedničkami a nulami, svět založený na geniálních, ale ve své podstatě geniálně jednoduchých (to je pochvala – ne dehonestace) myšlenkách starých už nějaký ten pátek. (Poznámka: Vždy se lehce cynicky ušklíbnu, když zaznamenám podstatně mladšího kolegu stále opakujícího matru “moderní technologie”)

Naše počítače jsou extrémně výkonné, extrémně rychlé a vyspělé … kalkulačky s obří pamětí. Ušlo to všechno obří kus cesty a bylo na tom odvedemo ohromné množství úctyhodné práce.

A teď to vše má dostatečný výkon na to, aby se to pomocí statistik mohlo “učit”. A najde to určitě velké uplatnění. Nebo již vlastně nachází.

Ale jednu věc to neumí a s ohledem na samotný princip si ani nedokážu představit, že by to mohlo umět: Nerozumí to lidem. Nechápe to člověka. 

Lidská duše se podle mého názoru nedá namodelovat. Alespoň teď ne. Tím co teď a tady máme ne.

Lidská inteligence totiž není o obří paměti a o schopnosti rychle zpracovávat data / informace. Lidská inteligence je o duši. A to už jsme trochu u filozofie.

Inteligence není jen tak zvané IQ, ale i EQ. Lidská inteligence je o schopnosti vnímat ty druhé. Lidská inteligence je komplexní věc zahrnující i to čemu se říká mezilidská chemie. To co třeba každý z nás každý den a každou minutu cítíme, ale možná to sami nechápeme.

A po pravdě dost často nerozumíme ani jeden druhému. Tak jak nám lidem má doopravdy rozumět stroj založený na jedničkách a nulách?

Zapomenou pochopitelně nesmím na lidskou kreativitu. Jednou za čas prostě přijde někdo a začne věci dělat jinak než bylo zvykem (když ho teda třeba neupálí zaživa – i to se kdysi dělo … lidská hloupost jde ruku v ruce s krutostí – jsou to sestry) a třeba tak ovlivní svůj obor, nebo opravdový velikáni dokonce i celou společnost, či lidské dějiny.

Každá umělá inteligence je natrénovaná na nějakých datech. Jak na základě toho chcete udělat pravou kreativitu? Jak simulovat to, že Bedřich Smetana možná někde seděl, měl emocionální prožitek a na základě toho napsal další úžasné dílo?

Jasně, umělá inteligence také něco vytvoří, ale na základě toho co si natrénovala. Ne na základě emočního prožitku. Žádné to nemá. Vůbec žádné.

A vývojář emoce ke své práci potřebuje. Například potřebuje poznat když mu uživatelka jaho SW říká, že je to dobré, ale má lehce nakyslý výraz a je tedy znát, že její problém ještě vyřešen nebyl.

Prostě a jednoduše: Naše lidské duše jsou mnohem složitější než Booleova algebra.

A pravým úkolem nás vývojářů je dělat tlumočníky mezi světem lidí a světem strojů. To co se dnes rodí nám zcela určitě může skvěle pomoci psát kód rychleji. K tomu vše směřuje roky.

Ale není nic co by nám pomohlo rozumět lidem. A to je mnohem důležitější část naší práce.

Je důležité rozumět světu strojů, ale je stejně důležité (spíše důležitější) umět například pochopit business zákazníka, nebo psychologii našich uživatelů. Ostatně o tom krásně psal Petr Peleta ve skvělé knize “Co programátory ve škole neučí aneb Softwarové inženýrství v reálné praxi”. Ta kniha je již z roku 2003. A to co je napsáno zejména v první část té knihy platí v roce 2023 stejně jako to platilo v roce 1983.

Svět se mění a vyvíjí. Je rychlejší. I na nás jsou kladeny stále větší nároky a je požadovaná stále větší efektivita. Kdysi v minulosti kolegové psali SW na papír a děrovali své štítky. My dnes máme IDE, které nám v reálném čase ukazuje chyby a napovídá. Doba letí dál. A doba vyžaduje stále větší efektivitu (to nyní ekonomická situace zřejmě umocní).

Ale my nejsme nic jiného než ti byli kolegové třeba před padesáti lety. Jsme úplně to samé, stejně jako jsou ve své podstatě stále stejné naše stroje. Nejnovější “chytrý telefon” (spíš teda kapesní počítač s možnosti radiokomunikace) má v základu úplně stejné elementární principy jako sálový počítač.

Máme pouze větší možnosti dané daleko větším výkonem ve všech směrech a díky tomu vznikají nové nástroje. A AI je dalším nástrojem, který nám efektivně pomůže.

Ale jsme stále to samé. Stále jsme tlumočníci a prostředníci mezi světem lidí a světem strojů. Máme lepší stroje a lepší nástroje jak s nimi komunikovat. Ale nemáme absolutně nic co by nám pomohlo rozumět lidem – našim zákazníkům a uživatelům. Žádná radikální revoluce se v rámci našeho oboru nekoná. Ale skvělá evoluce pokračuje dál. Počítače nás krásně doplňují. Řeší naše slabiny, pomáhají nám s tím co nám moc nejde. Je to nejen evoluce, ale i symbióza.

Rozhodně se nebojím toho, že by Prahu za rok obsadil bojový prapor složený z terminátorů a jiných robotů :-) Teda pokud nebudou předem naprogramovaní či řízení na dálku. Samo od sebe je (ty roboty) to ale nenapadne. Stejně jako žádný server neprožije emoční zážitek na základě kterého by složil zcela novou a originální Mou vlast (teda v případě počítače asi něco jako Mé registry, Má sběrnice, ….).

Ale položme si otázku: Chceme opravdovou umělou inteligenci? Chceme opravdu vytvořit cítící duši? Ne pouze ultra-kalkulačku. Dejme stranou otázku zda k tomu vůbec máme prostředky a zda je to aktuálně v našich možnostech.

Nevím zda jsem málo odvážný, ale s tím bych si fakt nehrál. Vytvořit něco co cítí, chápe a co má opravdu nápady by opravdu mohlo vést k tomu co je ztvárněno v mnoha sci-fi knihách a filmech. Ale teď, v roce 2023, se toho opravdu nebojím, naopak se těším na nové nástroje, které dále mohou usnadnit dosti rutinní aspekty mé práce. Ale mluvit, stejně jako poslouchat a vnímat a doopravdy myslet stále zůstává na mé maličkosti stejně jako na vás, zkrátka na nás.

PS: Už ten humbuk kolem AI je pro někoho bezva business – někomu letí nahoru akcie, jiným to dává možnost se zviditelnit. Prostě jako vždy … :-) 

Sdílet