Agentide identifitseerimisest, detailselt, olulist
Sissejuhatus
Lauale on pandud ettepanek, mille põhijoon on: anname inimeste isiklikele AI-agentidele isikukoodid. On eeldus, et see võimaldab meil ühiskonnana teha mingeid asju, mida pole olnud seni võimalik teha ning seeläbi kõvasti oma elujärge parandada. Plaani koostajad on oma plaani headuses sedavõrd kindlad, et lasksid Eesti Vabariigi peaministril selle esimesena, enne tegelikke autoreid, ette kanda (17.06.26 hommikupooliku teadetes).
Sellel ettepanekul on paraku üks suur probleem, nimelt näeb ta välja üldjoontes selline:
- Anname agentidele isikukoodid.
- ….
- Kõva kasu ja helge tulevik.
See selleks.
Minu isiklik põhiprobleem ettepanekuga on, et see ei tee esiteks ühtegi katset defineerida probleemi, mida lahendatakse ning teiseks ignoreerib kogu insenertehnilist tööd, mida kogu maailm seni selles valdkonnas teinud on. Ma ei tea, kas mõne valdkonnaspetsialisti käest mingit sisendit küsiti ka, aga jälgi sellest artiklis ei ole ning seetõttu on ka lahenduse sõnastus nagu neil neljal pimedal mungal, kes elevanti katsumas käisid. Võib ka öelda, et on tekitatud lahendus, mis meid kohe vaevama asus.
Kogu see ettepanek on perfektne näide vankri hobuse ette rakendamisest, mida on osavalt kombineeritud poliitilise ankurdamisega. Lahendus on olemas ja see lahendus on tehtud peaministri omaks. Nüüd on vältimatu, et see lahendus viiakse ellu ning võib-olla leitakse kunagi probleem ka, mida selle abil lahendada. Ei ole, ütleme, põhjamaade parim valik. Kuu aega hiljem on küll märke sellest, et riigivalitsus püüab ennast sellest mõttest distantseerida, eks paistab, mis saab.
Mida täpsemalt ette pannakse?
Mõned väljavõtted artiklist:
- “Praegu on aga nii, et agent on seaduse mõttes justkui mitte keegi.”
- “Mõte on selline, et me peaksime looma AI-agentidele oma identiteedi ehk võimaluse end panka, maksuametisse või mujale sisse logides või digiallkirja andes samamoodi tuvastada, nagu me praegu iseennast tuvastame.”
- “Üks hea võimalus oleks anda AI-agentidele samasugused isikukoodid, nagu on füüsilistel isikutel, ning siduda agendid selle inimese külge, kes nad lõi, kelle huvides nad tegutsevad ja kes nende eest vastutama peavad.”
- “Samuti on küberturvalisuse jaoks väga tähtis teada, kelle loodud mõni agent on ehk kelle huvides ta tegutseb. Kui agendil oleks oma isikukood, näiteks üheksaga algav number, oleks ta kõigi süsteemide jaoks läbipaistvalt seotud just oma loojaga, ning kui agent midagi halba teeb, saab tema eest vastutava inimese üles leida. Mõneti oleks agendi isikukood nagu autole pandav numbrimärk.”
- “AI-agentide isikukoodid võiks olla lihtne, aga võimas areng, mis annaks Eesti e-riigile ja ühiskonnale hoogu järgmiseks 25 aastaks”
Meil on siin mõned sõnad ja fraasid, mida tasub lahata:
- AI-agent
- identiteet
- isikukood (üheksaga algav number)
- sisse logima
- siduda inimese külge (kelle huvides ta tegutseb)
- digiallkirja andes tuvastama
- läbipaistvalt seotud
- seaduse mõttes
- küberturvalisus
- võimas areng
Lahakem. Ja mitte selleks, et ettepanekule tühjast rõõmust puid alla panna, vaid et natukene kirjutada lahti seda, mis üldse on see probleemvaldkond ja kuidas sellele läheneda. Sest nagu me teame, on igale keerulisele probleemile olemas vähemalt üks kiire, lihtne ja seejuures täiesti vale lahendus. Tavaliselt leiab selliseid päevalehtede juhtkirjadest ja arvamuskülgedelt.
Ja ma annan endale täiesti aru, et kogu seda ettepanekut võiks oma detailide osas võtta kui metafoori, aga kuna need detailid on peaministri poolt juba sellises sõnastuses välja hääldatud (ning vähemalt üks algsetest autoritest on käinud seda kontseptsiooni täiesti metafoorivabalt LinkedIn’is kaitsmas), on mu usk metafoorsusesse selle koha peal päris nõrk.
Kui proovida ettepanekust välja destilleerida eeldusi, millel see põhineb, jääb järgi umbes selline nimekiri:
- AI-agent on midagi uut ja erilist, mis nõuab erikohtlemist.
- Agenti tuleb identifitseerida, see on talle õiguste andmise aluseks.
- Olemasoleva taristu kerge ümberkorraldamine viib meid väikese vaevaga sihile.
- Sellel kõigel on meeletu majanduspotentsiaal.
Lahakem ka seda.
Aga enne lugemissoovitus, sama vaade suuresti mittetehnilise mätta otsast: “Tehisaruagendid vajavad kaelarihmu, mitte passe”.
Agendid ja AI-agendid.
“Agent” on võlusõna, agentidele kuulub tulevik. Aga kui palju teist teavad, et kõige tavalisem veebibrauser, mida me kõik igapäevaselt kasutame, on tehnilise üksusena olnud üsna algusest saadik (st dokumenteeritult vähemalt aastast 1996) defineeritud kui “agent”?
Agendiks võib vabalt nimetada igasugust arvutustehnilist vahendit, mis inimese huvides midagi toimetab, mururobot on ka oma olemuselt agent. Mis on oluline, on see, et agendil, sealhulgas AI-agendil puudub igasugune defineeritud tehniline vorm. Too võib olla ükskõik missugune, ning see teeb kogu probleemistiku agentidele identifikaatorite ja õiguste jagamisega keeruliseks, seejuures pahatihti nii keeruliseks, et puudub võimalus luua ainuõiget ja universaalset lahendust. On vältimatu, et eri kujuga agendid suhtestuvad maailmaga väga erinevatel viisidel.
AI-agenti tänases mõistes, ehk siis mingit tarkvarasüsteemi, mis kasutab oma põhilise algoritmilise tuumana LLM-i, eristab klassikalises mõistes agendist üsna vähe. Kõige suurem erinevus on, et tihtipeale saab selline agent oma funktsionaalsust ja liidestusi ise laiendada. Too omakorda toob aga kaasa päris omapäraseid probleeme sellega, kuidas agent maailma “näeb” ja mida tal oma laiendatud maailmas tegutsemiseks turvameetmete mõttes vaja on. Aga see ei tee teda kuidagi eriliseks: samad probleemid võivad tekkida ka inimeste poolt kiirelt ja bravuurikalt “käsitsi” edasiarendatava tarkvaraagendi puhul.
Kui vaadata, kuidas mõned suured tarkvarakontorid, kes agentide identifitseerimise ja volitamise probleemiga maadlevad, püüavad AI-agente defineerida, jäävad silma mõned põhiomadused:
- AI-agent tekib impulsiivselt, lõppkasutaja soovi alusel.
- AI-agente võib igal subjektil olla igal ajahetkel null kuni sisuliselt lõpmatu kogus.
- AI-agent on pigem lühikese elueaga olem (“olem” on üldmõiste millelegi, mis on olemas).
Kuidas see kõik isikukoodi või reguleeritud identifitseerimisega laiemas tähenduses seondub, vaatab edaspidi.
Identiteet
“Identiteet” võib siinkohal tähendada kaht asja (muudel juhtudel veel paljut muud, mistõttu tuleks selle sõna kasutamist hoolikalt kaaluda): agendi olemuslikku samasust iseendaga ja erisust teistest agentidest, või siis atribuutide kogumit, mis teda teistest agentidest eristab.
AI-agent kui selline on arvutusprotsess või nende kogum ning igas tänapäevases arvutustehnilises süsteemis on selline protsess teistest samalaadsetest protsessidest selgelt eristatav. See tähendab seda, et saab öelda, kas agentide vahel on samasus või mitte. Agendid ei ole kusagil “eetris”, nad on osakesed füüsikalisest süsteemist. See samasus paistab ka agendist väljapoole, näiteks tema kasutatavate võrguseansside kaudu. Samasust ei ole agentidele vaja kuidagi anda ega luua (samasust saab küll kuritahtlikult võltsida või informatsiooni kao läbi kogemata tekitada - sellest edaspidi).
Mida lugupeetavad päriselt tunduvad mõtlevat, on see, et AI-agentidele on vaja anda IDENTIFIKAATORID. Identifikaator kui selline on mingisugune sõne, mis esindab mingit olemit, ning identifikaatoreid on infotöötlussüsteemides väga käepärane kasutada olemite esindajana. Kõige asjakohasem näide: rahvastikuregistris hoitakse isikukoode, mitte isikuid, viimane oleks päris vaevarikas. Selmet uurida olemite samasust, saame me uurida identifikaatorite samasust, mis teeb päris mitmed asjad võrratult lihtsamaks, aga ei ole samas päris probleemivaba.
Identifikaatoritel on üks häda: kui tahta, et nende alusel saaks samasust tuvastada, peavad nad olema unikaalsed. Unikaalsuse saavutamiseks on kaks põhilist viisi: kas jagatakse identifikaatoreid keskselt, nii et jagaja teab, et ta ei anna kahele olemile sama identifikaatorit (kehtib näiteks Eesti elanike ja isikukoodide puhul), või on võimalike identifikaatorite arv nii suur, et identifikaatori juhuslikul genereerimisel on topeltidentifikaatori tekkimine kaduvväikese tõenäosusega (sedasi töötab UUID, täpsemalt variant 1 versioon 4 tüüpi UUID).
Sestap tundub mõte anda agentidele riiklikud identifikaatorid (isikukoodid) esmapilgul justkui loogiline ning sama loogilisena tunduvad IT-inimeste karjatused “UUID on olemas, lambad!”
Identifikaatoritel on ka teine häda: identifikaator ei pruugi kuidagi olla olemi külge tõsikindlalt kinnitatud (seda probleemi on ajaloos lahendatud mitmel viisil, näiteks, khm, tätoveeringutega, mistõttu on päris mitmes paigas maailmas isikukood kui selline suuremat sorti tabu). Kuidas tagada, et kuritahtlik osapool ei esita kellegi teise identifikaatorit? “Identiteet” kui mõiste ei sisalda identiteedi mingit tõsikindlat kinnitamist (autentimist).
Kõnekeeles mõistetakse “elektroonilise identiteedi” all tihtipeale nii identifitseerimist kui autentimist, aga need on olulisel määral erinevad probleemid ning ühe lahendamine ei lahenda teist ning teisalt – ja see on siinkohal oluline – saab kummagi neist lahendada ilma teiseta, kui asjaolud lubavad.
Paar sõna isikukoodist
Nagu me kõik suurepäraselt teame, on Eesti isikukood tänapäevasel kujul pärit ENSV Plaanikomitee määrusest nr 121, aastast 1989 (Eesti isikukoodi juurutamine oli NSVL Plaanikomitee pilootprojekt, osa üleliidulisest isikukoodi kehtestamise plaanist). Selle koha peal ettepanijad eksivad (“Riik ja erasektor tulid ühte tuppa kokku ja otsustasid teha kogu Eestile ühe ja ühise digitaalse identiteedi ehk ID-kaardi.”), identifikaator on palju vanem kui seda kinnitada võimaldav elektrooniline autentimisvahend (ID-kaart) ning ei olnud algselt kuigi “digitaalne”.
Me kõik armastame seda numbrirodu kui oma isiklikku nõukanostalgilist tiigrit ja ei taha kuidagi meenutada, mis janti on sündinud sellest, et Eestis ja Leedus väljastati inimestele samasuguseid isikukoode, mis olid ainult ühe riigi ulatuses unikaalsed. Kui me võtame mõne uuema süsteemi, mis peab töötama mõlemas nimetatud riigis, näiteks Smart-ID, siis tõenäoliselt teavad vaid need vähesed, kes on viitsinud asjasse süüvida, et Smart-ID sees kasutatav identifikaatorite mudel on selline, et isikukood on selle erijuht ja alamosa. Ütleme otse välja: igasugune ettepanek stiilis “teeme üheksaga algavad isikukoodid” põhineb väga pinnapealsel arusaamal sellest, kuidas kogu selline identifikaatorite süsteem töötab või võiks töötada (identifikaatorite teooriasse süvenemiseks oleks vaja tervet eraldi artiklit).
Aga. Isikukood šmisikukood, küsida tuleb hoopis, kas agendil üldse mingit identifikaatorit vaja on. Sest identifikaatorite haldus ei tule päris tasuta kätte ning miks hallata midagi, mida pole vaja? (vt Boondoggle, palun järgmisest sõnausest sellele eestikeelne vaste, sest seda on väga vaja – “surnud hobuse maksmine” pole päris see)
Ja et aru saada, miks ja kas, on vaja vaadata, kus ja kuidas me mingeid identifikaatoreid üldse kasutame.
Sisselogimine ja isikutuvastus
Me kõik teame, kuidas see käib. Me “logime sisse”. Facebooki ja netipanka ja maksuametisse ja kuhu iganes. Klikime kuhugi, sisestame midagi ja olemegi “sees”. Noh, agent peab mõistagi saama sedasama teha, et meie nimel opereerida.
Ei pea ning parem oleks, kui ei tohi.
Sest me teeme ju nii:
- Avad Facebooki lehekülje
- Sisestad sinna oma e-posti aadress ning parooli
- Vajutad nuppu
- Oled “sees”
Aga tegelikult juhtub nii (lihtsustatult, ainult põhielemendid):
- Avad Facebooki lehekülje, mille käigus veebibrauser (meenutagem: agent!) loob Facebookiga unikaalse seansi, mis tähendab, et see agent on sellest hetkest Facebooki jaoks unikaalselt identifitseeritav
- Kasutaja sisestab oma kasutajatunnuse ja parooli oma veebibrauserisse ehk agenti(!!) – visuaalselt ja metafoorselt sisestatakse need “Facebooki”, aga tegelikult agenti
- Kasutaja nupuvajutuse peale edastab agent kasutajatunnuse ja parooli seansi kontekstis Facebookile, mis seostab sellepeale tolle unikaalse agendi konkreetse kasutajaga – hakkab tuttav ette tulema?
- Edaspidi, kui see agent Facebooki poole pöördub, kuni seansi tühistamiseni, teab Facebook, et see on see unikaalne agent, mis tegutseb selle konkreetse kasutaja huvides. Ja seda kõike ilma riikliku või muu keskse identifikaatorite koordineerimiseta.
- Ja kui jätad sellise seansi kontekstis mõne rõveda kommentaari kuhugi, siis ei ole see agent seaduse silmis “mitte keegi”. Leitakse üles agent, leitakse üles tema eest vastutav inimene ja pannakse maksma. Kes on kohalikke kohtu-uudiseid lugenud, peaks teadma. Välismaal juhtub ka selliseid asju.
Vaadake, mingil kontseptuaalsel tasemel oleme me jõudnud selleni, et see kõik, mida pakutakse revolutsioonilise uuendusena, on mingis vormis juba olemas, seejuures nii, et agendil ei ole püsivat unikaalset identifikaatorit (Peter Stokesi juhtumi puhul küll on, aga see pole riiklik ja on juhuslikult genereeritud). Meil on olemas agent, mida on võimalik identifitseerida (ilma riiklikult jagatud identifikaatorita), see agent on seotud inimese külge ning ka seadusesilma ees on see seos kõike muud kui null.
Ja nüüd mõttepaus. Kujutage ette, et tuleb keegi ja ütleb, et kõik veebibrauserid (meenutagem: agendid!) tuleb riigiametis registreerida ning neile registreerimisnumber väljastada, nagu autodele. Kuhu kohta ja milliste sõnade saatel te selle inimese saadaks?
AI-agentide esitamine millegi erilisena on uus versioon väga vanast lobitehnikast, mis on tuntud kui computer exceptionalism või tech exceptionalism. Seda on kasutatud ennekõike selleks, et näidata suuri interneti-ettevõtteid millegi nii erilisena, et neile ei saa tavapärased seadused ja käitumisreeglid kehtida. Eriti tobedaks muutus see krüptorahabuumi aegadel, kui isegi Eesti kohalikud arvamusliidrid hakkasid välja tulema väidetega, et Finantsinspektsioon ja Rahapesu Andmebüroo on lihtsalt ühed gerontide pundid, kes polegi võimelised uut tehnoloogiat mõistma. Nüüd on siis AI kord.
Digiallkiri ja isiku tuvastamine
Tsiteerigem uuesti: “me peaksime looma AI-agentidele oma identiteedi ehk võimaluse end panka […] sisse logides või digiallkirja andes samamoodi tuvastada, nagu me praegu iseennast tuvastame.”
Selles tsitaadis sisaldub umbes majasuurune kategooriaviga, millest hakkab omakorda hargnema see, miks probleem, mida “isikukoodid AI-agentidele” lahendab ei ole päris ning miks tekitab selline lahendus ainult täiendavaid probleeme.
Hästi lihtsustatult:
- Kui me “logime panka sisse”, siis on tegemist isikutuvastusega.
- Kui me anname digiallkirja, siis see ei ole isikutuvastus. eIDASe nõuetele vastavad digiallkirja loomise vahendid peavad vastama nn. “ainukontrolli” nõuetele (mõiste, mida eIDASe eestikeelses versioonis sellisena ei eksisteeri, ingliskeelses versioonis on olemas mõiste “sole control”), st peab olema tagatud, et kõrvalised isikud ei saa võõra krüptograafilise materjali abil digiallkirju luua. ID-kaardi, Smart-ID ja Mobiil-ID PIN-koodid on (digiallkirja loomise kontekstis) selle ainukontrolli tagamise meetmed, mitte isikutuvastuse vahend. Ääremärkus: digitaalallkirjast endast on teatud konstruktsioonides küll võimalik tuletada isikutuvastuse vahend.
Füüsilistele ja juriidilistele isikutele jagatud digitaalallkirja loomise vahenditele kehtivad teatud nõuded, mis kõik keerlevad sellesama “ainukontrolli” printsiibi ümber. Sellisel vahendil peavad olema teatavad päris tugevad turvaomadused, mida igaühe puhul kolmest Eestis kasutatavast allkirja loomise vahendist tagatakse mingitsorti turvalise riistvara abil.
Ja siin põrkume me kohe ühe päris suure müüriga: ei ole olemas sellist üldotstarbelist turvalist riistvara, mis vastaks nendele nõuetele ning mida saaks teha tarkvaraagentidele kättesaadavaks. Jah, meil on üht koma teist olemas (TPM, Androidi ja Apple OSide vastavad turvamoodul jms), kuid midagi sellist, mis võimaldaks ühel tarkvaraagendil ID-kaardiga võrreldavat digiallkirja luua, ei ole. Ning kui sellist riistvara ei ole, siis tekivad lisaks regulatiivsetele probleemidele ka tehnilised ja praktilised: varem või hiljem varastatakse salajased võtmed sellise agendi käest lihtsalt ära ning kogu mudel kukub kolinal kokku.
Seega, isegi kui me anname agentidele isikukoodid või muud keskselt koordineeritud identifikaatorid, ei teki meil mitte mingis ettenähtavas tulevikus võimalust, et agent saaks maailmaga suhtestuda isikute ainukasutuseks ette nähtud digi-ID-vahendite või nendesarnaste tööriistade abil. Seda lihtsalt ei juhtu, selleks on mõned olulised tehnilised eeldused täitmata.
- Kui üldse, peab agendi tuvastamiseks olema mingi teine lahendus.
- Kui meil ei ole agendile võimalik väljastada ID-kaardiga võrreldavat digi-ID vahendit, muutub kogu idee agendile isikukoodi andmisest märksa hõredamaks.
Agendi läbipaistev sidumine isikuga
Millegipärast on ettepanekus eraldi välja toodud agendi läbipaistev sidumine isikuga.
Kes on jälginud Euroopa digikukru ümber toimuvat, on ilmselt tähele pannud, millist rõhku pannakse selles projektis lõppkasutaja privaatsusele (vaieldava kasuteguriga ettevõtmine, aga see on see, kuhu on suund võetud). Digikukru kasutamisel on ette nähtud hulka tehnilisi omadusi ja meetmeid, mis võimaldavad avaldada kukrust ainult selle osa isiku tunnustest, mis on konkreetse kasutusjuhu jaoks olulised.
Ehk meil on väikene paradoks siin: kui EL tasemel loodetakse digiasjade “võimast arengut” maksimaalsest privaatsusest, siis meil on laual ettepanek tagada “läbipaistev sidumine”.
Agenti ei ole vaja isikuga läbipaistvalt siduda, piisab, kui see sidumine on läbipaistev kohtumenetlusele, olukordades, kus seda vaja on (ja juba täna see nii on).
Mis päriselt loeb, on see, mida agent teha saab, millised õigused (ja kelle nõusolekul) on talle antud või mõne isiku poolt delegeeritud ning kes vastutab, kui neid õigusi väärkasutatakse.
Millegipärast seob ettepanek selle viimase probleemi “küberturvalisusega”. Ei, see on küberturva-probleem alles mingis seitsmendas tähtsusjärjekorras. Ennekõike on see ikkagi tsiviilõiguse probleem, küsimus volitustest ja vastutusest.
Mida me tegelikult lahendada tahame, kui me räägime agentide volitamise tehnilisest lahendusest?
Kui võtta kaks sammu tagasi ja natuke juurelda, jõuame me umbes sellise probleemipüstituseni:
- On vaja, et agent saaks meie eest mingeid toiminguid teha. Aga mitte kõike, mida me ise teha saame. See on põhiline, see on tuumfunktsionaalsus. Siia juurde käib üks ebamugav küsimus: miks ei ole 25 või rohkem aastat “automatiseerimist” ja “software eats the world” uskumust seda vajadust seni nii valusalt tekitanud, et sellele lahendust otsida? Ja kas meil see probleem tegelikult ka täna on? Aga eeldame, et on.
- Tuleb võtta arvesse, mis on agendi kui tehnilise rakise omadused: tema elutsükkel, tema käidukeskkonna usaldusväärsus ja muud sellist.
- Tuleb eeldada, et agendi käest varastatakse varem või hiljem mõni saladus ära ning sellise olukorra käsitlemiseks tuleb olla valmis (vt ka agendi elukaare lõpu kohta).
- Tuleb eeldada, et agente on ühel isikul palju, neil on erinevad õigused ning erineva pikkusega elukaared.
- Elukaare lõppemisel tuleb tagada, et agendi kõik õigused viivitamatult tühistatakse.
- Olulisem, kui agendi identifitseerimine on agendile antud mandaat.
Mitte ükski neist probleemidest ei lahendu või lahendub halvasti, kui me üritame “isikukood pluss ID-kaart” mudelit agentidele jõuga pähe määrida.
- Ei lahendu, sest agendile ei ole tehniliselt ega juriidiliselt võimalik “ID-kaarti” luua, või kui on, on sellega seotud olulised turvariskid.
- Ei lahendu, sest isegi kui agendi “ID-kaart” on võimalik luua, on ta väga tõenäoliselt liiga jäik, et toetada kõiki erikujulisi agente.
- Ei lahendu, sest isegi kui agendi “ID-kaart” on võimalik luua, jääb üles märkimisväärne oht, et kui see on agendile pidevalt kättesaadav, on ta kättesaadav ka agenti ründavale kuritegijale.
- Ei lahendu, sest agente on palju, aga ettepanek kujutab ette mingit üht superagenti inimese kohta.
- Võib lahenduda, aga “ID-kaardi” infrastruktuuris on tegemist pigem erandliku nähtusega (inimese surm, kaardi kadumine), agentide puhul on õiguste tühistamise operatiivsus ja mugavus üks esmaseid omadusi.
- Ei lahendu, sest tegeleb agendi identifitseerimisega tegeliku sisulise keerukuse asemel.
Milliseid toiminguid peaks agent saama teha?
Meil on olemas õiguste delegeerimise süsteem Pääsuke. Kui uskuda eesti.ee portaali, siis on mul võimalik eraisikuna Pääsukese abil delegeerida tervelt kolme õigust, kõik need täitmisregistris! Ettevõtjana mõnevõrra rohkem, tervelt 56!
See on siis see, mida riik kui tervik on seni pidanud vajalikuks inimestele ja nende agentidele pakkuda ning ma ei ole kuulnud, et keegi selle üle liiga palju nuriseks. Omaette küsimus on see, kes ja kuidas üldse neid volitusi kasutada saab, milline on tehniline liidestus.
“[…] võimaluse end panka, maksuametisse või mujale sisse logides […] samamoodi tuvastada, nagu me praegu iseennast tuvastame.”
Ei, see ei käi nii. Igale infotehnoloogia-professionaalile on selge, et inimeste ning masinate tarvis loodud liidesed infosüsteemides on erinevad ning neil on ka erinevad turvameetmed. Seejuures on inimestele loodud liideste juures kasutusel sellised turvameetmed, mis välistavad nende kasutuse masinliidestuseks, kõik me oleme neid näinud.
Aga kui me räägime nendest Pääsukese kaudu delegeeritavatest õigustest, siis neid ei saa kuidagi “otse” kasutada. Need õigused rakenduvad “kusagil”, on see siis parasjagu mõni kasutajaliides, X-tee teenus või muud taolist.
Seega sõltub kogu see agentidele ühel või teisel viisil õiguste andmine ühest suurest eeldusest: meil on järsku tugev sisuline motivatsioon avada mingeid teenuseid sellisel viisil, et nende poole saab 1) pöörduda avaliku masinliidese kaudu, 2) see masinliides toetab delegeeritud õiguste kasutamist teiste ja kolmandate isikute kontrolli all olevate masinate poolt, mingil viisil ja 3) neid õigusi on mingi mittetriviaalne kogus, märksa rohkem, kui täna Pääsukeses näha saab. Ääremärkus: X-tee ei ole avalik masinliides, iga suvalise Mati agent ei saa sinna pöörduda.
Ehk siis: viisakalt konstrueeritud agent (mitte selline, mis peotäie häkkide läbi oma peremehe käitumist simuleerib) saab teha ainult neid toiminguid, mille jaoks on olemas masinliides JA mille jaoks on olemas viis delegeerida õigusi. Kusjuures tehniliselt tuleb need mõlemad eraldi välja arendada ja kõigepealt hoolitseda selle eest, et süsteemiarhitektuur üldse midagi sellist toetab.
Ma olen elus selliste liidestuste ehitamisega päris mitmel juhul kokku puutunud ja julgen väita üht: see sisuline motivatsioon eksisteerib väga harva. Ma olen näinud idufirmat, mis põhimõtteliselt asub pankrotikursile pärast seda, kui selgub, et maailm ei armasta sedasorti liidestusi. Ma olen näinud projekte, mis pakitakse kokku, kui selgub, et maailm ei armasta sedasorti liidestusi. Sest need liidestused ei ole veetoru mahapanek, teed korra ära ja on mitmekümneks aastaks hooleta. Need nõuavad enda ümber tervet organisatsiooni. Ja need nõuavad juhtimist, sest üsna järjepidevalt on vaja hallata arusaama sellest, kust kuhu see toru jookseb. Veetoru ei haagi ennast niisama solgitoru külge, aga masinliidesega võib see kergesti juhtuda.
Ehk siis peab jälle küsima: kas PÄRISELT on olemas kõikvõimalike teenusepakkujate motivatsioon oma teenuseid mingitele agentidele avada? Kas nad näevad selles suhteliselt keerulises ning mingis muus kohas (näiteks pettuste tuvastamise mehhaanikas) piiranguid tekitavas ja keerukust kasvatavas muutuses mingit väärtust?
Kes on agent, kus on agent, kus on agendi kodu koht?
Kui me hakkame küsima, misasi üldse on agent, mismoodi ta välja võiks näha ning kust kuhu kulgevad tema ühendused maailmaga, tekib meil üles vähemalt järgnev rodu küsimusi:
- Milline on agendi tehniline vorm? On ta mingi programm arvutis või veebilehitsejas või mobiiltelefonis? Oleks meil praegu aasta 2022, räägiks keegi kindlasti õhinal ka sellest, kuidas agente plokiahela nutilepingutena realiseerida.
- Kui arvutis, siis kus see arvuti asub? Nii füüsiliselt kui arvutivõrgu topoloogia mõttes.
- Kui arvutis, siis kelle oma see arvuti on, kellel on administratiivsed õigused selle üle?
- Milline on agendi tehniline võimekus hoida enda sees mingeid (krüptograafilisi) saladusi, mis on vajalikud talle antud mandaatide turvaliseks kasutamiseks? (meenutagem diskussiooni “ID-kaardi” vajalike turvaomaduste üle)
- Mismoodi saab agent pöörduda endast väljapoole ja mida kõike teeb ta sellega, mida talle saadetakse?
- Millisel viisil saab algne inimkasutaja agendi tegevust jälgida ja juhtida?
- Ja kes kurat seda kõike pöörlemas hoiab?
Viimane küsimus on vaat et kõige olulisem, sest…
Tsentraliseerituse talumatu kergus
Kui arvutustehnika ja eriti interneti ajalugu on meile midagi õpetanud, siis seda, et tsentraliseeritus võidab alati ja teenusmajandus võidab alati. See on kõigi suurte internetifirmade peadpööritava turuväärtuse aluseks.
Arvutustehnikale on omane fraktaalne keerukus ning inimesed ei taha sellega tegeleda. Inimesed, keskeltläbi, eelistavad arvutustehnilise keerukuse kellegi teise mureks jätta. Mina isiklikult olen elus mõne päris keerulise tarkvarasüsteemiga õhinal piike murdnud ja mul hakkab ikkagi iga kord veidi halb, kui pean Claude Code’iga maadlema – tegu on lihtsalt sellisel määral juhuslikust keerukusest pakatava plönniga. Keegi teine võiks sellega tegeleda.
Kui mõtelda, mida see tähendab “agentide” kontekstis, jõuame me umbes sellise siirdeprotsessini:
- Varajastest pääsukestest fanaatikud otsivad võimalusi agentide abil midagi teha, midagi, mis on neile isikult kasulik. Toimub viljakas Frankenagentide punumine.
- Keskmine kodanik leiab, et üks asi nendest võiks olla talle ka kasulik, aga ta proovib natuke mingi agendiga mässata, lõikab omale näppu ja ei proovi rohkem. Või isegi proovib, aga see on päris tüütu.
- Variant A: teenusepakkuja näeb, et inimesed rakendavad agente mingi kasuliku asja tegemiseks, aga neid on vähe ja see asi on selgelt kasulik ainult väga väiksele turusegmendile. Asjad jäävad nagu nad on.
- Variant B: teenusepakkuja näeb, et inimesed rakendavad agente mingi kasuliku asja tegemiseks, neid on palju ja see asi on tore, heal juhul võimaldab teenusepakkujal saada mingit turueelist. Ta integreerib selle funktsionaalsuse oma toote või teenuse osaks. Vajadusel koopereerub sidus-äridega. Kliendid on rõõmsad, agendid lülitatakse välja.
- Variant C: tekib vahendusteenuse pakkuja, kes kogu selle agendinduse enda äriks pöörab. Kliendid on rõõmsad, agendid lülitatakse välja.
- GOTO 1, protsess kordub iteratiivselt, kuniks tati ja teibiga kokkutõmmatud agentide osaks on jäänud ainult veidrad nišiprobleemid, mida keegi tsentraliseerima ei hakka.
Ja me tegelikult isegi ei tea, mitmenda selle protsessi iteratsiooni peal me oleme. Äkki on optimaalne punkt juba ammu saavutatud?
Jällegi, ma julgen väita: mitte mingit masinliidestuse plahvatust ei teki. Kõik, mida me oleme seni ajaloos näinud, viitab vastupidisele. On kõik põhjused uskuda, et ei ole kriitilist massi inimesi, kes tahaks mingite “agentidega” mässata, ja kui vaja, eelistavad nad kasutada agentidena teenusepakkujaid, kes tehnilise keerukuse nende eest ära peidavad. Viimases pole midagi uut, reisiagent ja kindlustusmaakler on väga vanad ametid.
Ka meie enda “agentse riigi” segaselt sõnastatud visioonid keskenduvad pigem kodanikule kasuliku funktsionaalsuse realiseerimisele kusagil “keskel” (see, kui hea mõte see, on jällegi üks terve omaette diskussioon, arvestades jooksva riigivõimu paternalistlikke tendentse).
Ja see kõik on juba kohal, näiteks Mastercardi Agent Pay näol. Ja ei ole samas ka veel üldse probleemivaba. Kogu tolle Agent Pay süsteemi tehniline kirjeldus nii segane, et selle on ilmselt kirjutanud mõni lobarobot või turundus-praktikant ning ei ole võimalik täpselt aru saada, mis seal siis ikkagi toimuma peaks ja kus see innovatsioon on – aga on üsna selge, et süsteemi võtmekomponendid on mingid kesksed “agendid”.
lhv.ai veebipõhiste kasutuslugude puhul antakse ka volitustoken otse ChatGPT või Claude’i pakkuja kätte – mingit “agenti” seal vahel ei ole, keskne teenusepakkuja ise ongi agent.
Joonistame pisut
Aga eeldame korraks, et üldine otsus on, et agente on väga vaja ning igasuguste infosüsteemide omanikud on nõus oma uksed agentidele avama.
Ja et agente on mitut liiki: on selliseid, mis on veebibrauseris, on selliseid, mis on nutitelefonis, personaalarvutis, kusagil serveris või kusagil teenusepakkuja juures. Kõik nad peaks saama kuidagi neid isiku poolt delegeeritud õigusi kasutada, vastavalt isiku soovile.
Kuidas see kõik välja peaks nägema?
- Tekib agent. Riiulist võetud ränist ja tarkvarast. Sünnib tolmust.
- Agendi omaniku jaoks on mingi liides, mille kaudu ta läheb riigi juurde ja palub värskele agendile uus isikukood eraldada.
- No isikukood on, aga “ID-kaarti” selle juurde ei teki, sellega peame ilmselt leppima.
- Nüüd oleks vaja kuidagi saavutada see, et agent saab inimese nimel mõne teenusepakkuja (sh riigi) juures midagi toimetada. Selleks on mitu võimalust.
- Inimene loob teenusepakkuja juures volituse. Igal pool isemoodi.
- Kusagil on üks suur ja võimas volituste haldamise süsteem. Jube suur, keeruline ja kallis. Näiteks võiks seda pidada riik. Sest kui see oleks eraõiguslik, oleks sel teenustasu ja siis ei kasutaks seda keegi.
- Volitused kodeeritakse kuidagi ja signeeritakse volitaja poolt. Volitused esitab agent iga kord, kui mingit tegevust alustab.
- Kõik kolm varianti eeldavad seda, et on olemas mingi volituste nomenklatuur või taksonoomia, masinvolitus ei saa olla stiilis “tee seda noh, aga mitte toda teist saad aru küll”. Masinvolitus peab olema täpse süntaksi ja semantikaga.
- Seejärel on vaja otsustada protokoll, mille alusel saab agent pöörduda teenusepakkuja poole, kinnitada, et just tema on selle isiku esindaja ning et just talle on see isik andnud sellised volitused. Ainult isikukoodist selleks ei piisa. Kõik kolm varianti eeldavad seda, et agendi poolt teenusepakkujale esitatud päring on usaldusväärselt seotud volitajaga – isikukoodi saab igaüks pätsu panna ja kasutada. Seejuures tuleb tagada, et see seos on kehtiv (mõistlikult värske, mitte tühistatud, mitte pätsatud mingist teisest kontekstist).
- Neid protokolle on vaja mitu, sest agentidel on erinevad tehnilised kujud.
- Pandagu tähele, et iga kord, kui agent mingit tegevust alustab, peab ta ütlema teenusepakkujale midagi vähemalt selle kohta, kelle oma ta on. Ja see on olulisem kui agendi enda identifitseerimine – see, kas agendil endal on mingi identifikaator või mitte, tuleneb protokolli üksikasjadest, mitte fundamentaalsest vajadusest. Agendil on vaja kaelarihma, mitte passi.
Ja kõige selle jaoks on protokollid olemas. Näiteks Oauth, täiendusena OAuth PKCE, mida võib keelekasutust kaasajastades vabalt nimetada “lahenduseks agentide jaoks”. Volitamise asjus on palju tööd tehtud, näiteks kirjutatud kokku Google Zanzibar. Need on lihtsalt näited, ühegi juurutamine nendest ei ole niisama puusalt laskmine, seega ei ütle ma, et ükski neist oleks lahendus, kui me tahame palju agente tööle saada – aga lahendus on umbes sellise kujuga, paremat ei ole täna välja mõeldud.
Mida tuleb tähele panna, et need protokollid on keerulised ja nad on keerulised põhjusega. Igasugune lootus, et me anname masinale ühe tunnuskoodi ja siis muutub kõik plaksust imelihtsaks, on lihtsalt sügavalt väär.
Mu härra, telefoniskämmeritest olete Te sama palju kuulnud kui Kunstnike Liidu pearaamatupidaja
Eesriie, spot, lavaservale tormab kloun.
Kujutame korraks siiski ette, et meil on võimalik saada agendile isikukood ja füüsilise isikuga võrreldav digitaalse isikutuvastuse vahend.
Kui mitmele inimesele tekib paari kuuga selline “agent”, mille olemasolust tal endal aimugi ei ole?
Vastuse väljaarvutamine jääb lugejatele koduseks ülesandeks.
Kloun vabandab Kunstnike Liidu pearaamatupidaja ees, vasakule ära, eesriie avaneb taas.
Kokkuvõtteks
Mida me kõigest sellest järeldada võime?
- “AI-agent” ei ole mitte midagi erilist, võrreldes sellega, mida me viimase umbes 25 aasta jooksul näinud oleme.
- Isikukoodi andmine masinale ei ole põhjamaade parim mõte, sest masin on ajutine ja tema täpne identifitseerimine ebaoluline (privaatsuse seisukohast lausa ebasoovitav).
- Masinale õiguste delegeerimine on hoopis teise kujuga probleem kui isiku identifitseerimine ning tugev isikutuvastus.
- Inimkasutuseks mõeldud liideste kaudu infosüsteemidele massilist masinkasutust tekitada ei ole üldse hea mõte.
- Mingit sõltumatute osapoolte kontrolli all olevate masinate omavahelise liidestamise plahvatust ei teki, seda on korduvalt proovitud ja inimesed ei näe selles kasu (vähese kasutuse ja kõrgete fikseeritud kulude tõttu).
- Kogu see agentide-haip jääb ilmselt ajutiseks nähtuseks, teenusmajanduse turujõud suruvad jõe oma sängi tagasi.
- Turvaprobleemidele, nagu alati, mõteldakse kõige viimasena.
Oleks ülimalt lühinägelik sellises olukorras oma riikliku elektroonilise isikutuvastussüsteemi alusatalasid raputama hakata.
Kartaago tuleb hävitada
Kui on üks asi, mis seisab Eesti ning insenertehnilistest lahendustest tuleneva jõukuse või et siis “võimsa arengu” vahel, on see meie põhikooli reaalainete-õpetuse täiesti kohutav seis.
Kõik, kes räägivad midagi sellest, et teeme siin ühe või teise kiire ja lihtsa muudatuse või korraldame veel mõne koolituse ja siis hakkab hea, sätivad toole Titanicu tekil.
Ning ennekõike ootaks siinkohal, et igasugu tehnoloogiaeksperdid ja IT-gurud seisaks selle olukorra parandamise eest, mitte ei otsiks järjekordset võimalust haridussüsteemile või siis laiemalt riigile mingeid Ameerika vidinaid maha müüa.