Arkkitehtuuri ei ole kaavio vaan joukko rajoja. Tässä ovat ne rajat, joilla yhden hengen yritys pyörii tekoälyn avulla ilman, että tekoäly saa lähettää, kirjata rahaa tai julkaista mitään.
Vuonna 2025 kirjoitin, miten käytän tekoälyä käytännössä: koodaus, vianselvitys, dokumentointi. Kaikki sitä, mitä teen käsillä, vain nopeammin. Se pätee yhä.
Tämä on sen jatko, ja se on kirjoitettu järjestelmäkuvauksena: mitä kerroksia on, mikä on kunkin vastuu, missä kulkevat rajat, miten tieto liikkuu ja mitä tapahtuu, kun jokin pettää. Järjestelmä on sisäinen työkalu, jonka rakensin itselleni vuoden 2026 aikana pyörittämään yhden hengen yrityksen arkea. Pieni kokonaisuus, mutta samat kysymykset kuin missä tahansa organisaatiossa, joka miettii, mihin tekoäly kuuluu. Tekoälykerros on rakennettu valmiiksi, mutta sen toiminnot kytketään päälle yksi kerrallaan, ja malli ajetaan paikallisesti tai EU:ssa sijaitsevassa palvelussa.
Lähtötilanne: viisi järjestelmää, yksi ihminen
Yhden hengen yrityksen hallinto on sama kuin isomman, vain ilman ihmisiä sen ympärillä. Yhteydenottojen valmistelu, sisällön kirjoitus, kuittien kirjaus, laskujen seuranta ja tuntien kirjaaminen ovat kukin pieniä, mutta yhdessä ne vievät päivän viikossa.
Ostin aluksi valmiita työkaluja ja päädyin samaan tilanteeseen, jonka näen muissa organisaatioissa: viisi järjestelmää, viisi kirjautumista ja sama asiakas kolmessa paikassa eri muodossa. Työ ei vähentynyt, se siirtyi järjestelmien väliin.
Rakensin yhden. Ei siksi, että oma olisi aina parempi, vaan siksi, että halusin päättää itse, missä tekoäly saa toimia. Hyllytuotteessa sen rajan vetää joku muu, eikä sitä yleensä kerrota.
Rakenteen neljä periaatetta
Ennen yhtäkään toimintoa päätin neljä asiaa, joita en ole sen jälkeen muuttanut.
- Tekoäly harkintaan, koodi logiikkaan. Luokittelu, luonnostelu ja tiivistäminen ovat tekoälyn työtä. Reititys, laskenta ja uudelleenyritykset ovat koodin työtä. Jos koodi osaa vastata, koodi vastaa.
- Yksi portti sivuvaikutuksille. Mitään ei lähetetä, kirjata rahana tai julkaista ilman, että se kulkee hyväksymisjonon kautta. Hyväksyminen on erillinen tapahtuma valmistelusta.
- Muisti on lokeroitu rakenteella, ei kehotteella. Henkilökohtainen ja asiakastyö ovat eri lokeroissa, ja raja on toteutettu rajapinnassa. Tekoälyä ei pyydetä ”olemaan kertomatta”, koska pyyntö ei ole raja.
- Jokainen tekoälykutsu on havaittava. Mikä malli, mihin tarkoitukseen, mitä maksoi, kauanko kesti, millä asetuksilla. Ilman tätä ei tiedä, mitä tekoäly tekee eikä mitä se maksaa.
Periaatteet kuulostavat itsestään selviltä. Vain harvassa näkemässäni ympäristössä edes yksi niistä on toteutettu rakenteessa. Ne ovat olemassa ohjeina. Ohjetta noudatetaan, kun on aikaa.
Kerrokset ja niiden vastuut
Järjestelmässä on kuusi kerrosta. Jokaisella on yksi vastuu, eikä se kurota toisen alueelle.
| Kerros | Vastuu | Mitä se ei tee |
|---|---|---|
| Rajapinta | Ottaa pyynnön vastaan, tarkistaa sen muodon, palauttaa vastauksen | Ei sisällä liiketoimintalogiikkaa |
| Palvelut | Liiketoimintalogiikka toiminnoittain: asiakkaat, yhteydenotot, sisältö, talous, ajankäyttö | Ei kutsu ulkoisia järjestelmiä suoraan |
| Liitännät | Hakee tietoa ulkoa: rekisterit, verkkosivut, sähköposti, kalenteri | Ei päätä mitään, ei tulkitse |
| Tekoälykerros | Yksi reitti kaikille mallikutsuille, mallista riippumaton; malli ajetaan paikallisesti tai EU:ssa | Ei tiedä, kuka sitä kutsuu ja miksi |
| Muisti | Lokeroitu säilö sille, mitä järjestelmä tietää | Ei sekoita lokeroita |
| Hyväksymisjono | Portti jokaiselle sivuvaikutukselle | Ei suorita mitään; hyväksyntä on tilan muutos |
Kaksi näistä on arkkitehtuurin kannalta tärkeimpiä. Liitännät ovat tyhmiä putkia: ne hakevat ja palauttavat eivätkä koskaan päätä. Ja tekoälykerros on yksi: yhtään mallikutsua ei tehdä sen ohi, joten vaihto mallista toiseen on yhden kerroksen asia, ja jokainen kutsu kulkee saman kirjauksen läpi.
Raja: mihin tekoäly on sijoitettu
Tekoäly ei ole kerros, jota muut käyttävät vapaasti. Se on sijoitettu tarkasti nimettyihin kohtiin, ja jokaisella kohdalla on nimi, tarkoitus ja kytkin, joka on oletuksena pois päältä. Tänään useimmat kytkimet ovat vielä pois: kerros on tehty ja testattu, ja kohdat avataan yksi kerrallaan sitä mukaa kuin loki osoittaa niiden toimivan. Malli on paikallinen tai EU:ssa, ja se on vaihdettavissa yhden kerroksen takaa. Alla on, mitä kukin kohta tekee, kun sen kytkin on päällä.
Yhteydenottojen valmistelu. Koodi kerää yrityksestä julkiset tiedot: yritysrekisterin perustiedot (YTJ ja kaupparekisteri), tilinpäätösluvut, verkkosivut ja avoimet työpaikat. Tekoäly lukee ne ja kirjoittaa hypoteesin siitä, missä yrityksen IT todennäköisesti takkuaa, sekä yhden avauskysymyksen. Soitan itse. Automaattisen sähköpostin lopetin kokonaan: täsmällinen arvaus puhelimessa toimii, massaviesti ei.
Sisältö. Tekoäly ehdottaa artikkelin rungon, kirjoittaa ensimmäisen version, kääntää ja luonnostelee LinkedIn-tekstin tarinapankista, jossa omat tapaukseni on kirjoitettu auki. Julkaisu on hyväksymisjonon asia, ja LinkedIniin julkaisen itse.
Talous. Koodi lukee kuitista summan ja toimittajan. Tekoäly ehdottaa vain kategorian. Laskun, jota mikään koodin tunnistama pohja ei vastaa, tekoäly lukee ja ehdottaa kirjauksen, ja sekin on kytkimen takana. Kuukauden luvut se tiivistää yhdeksi kappaleeksi. Itse luvut, tulos, arvonlisävero, saatavien ikä ja kassan riittävyys, lasketaan koodissa, eikä tekoäly saa koskea niihin. Luku, joka on melkein oikein, on vaarallisempi kuin luku, jota ei ole.
Ajankäyttö. Viikon lopussa tekoäly kertoo, mihin aika meni, koneen ja selaimen käytöstä sekä asiakaskohtaisista tunneista kerättynä. Vastaus ei ole aina mairitteleva.
Yksi rivi, yksi vastaus. Kun kirjoitan tai sanelen puhelimeen yhden rivin, tekoäly hakee vastauksen sovelluksen tiedoista tai valmistelee asian, josta minä päätän. Sillä on käytössään nimetyt työkalut, jokainen merkitty joko lukevaksi tai valmistelevaksi. Suorittavaa työkalua ei ole. Kutsuilla on määrä- ja aikaraja, ja jos raja täyttyy, se sanoo sen eikä yritä uudelleen.
Tietovirrat: miten pyyntö kulkee
Yksi esimerkki riittää, koska muut kulkevat samaa reittiä. Näin pyyntö kulkee, kun kohdan kytkin on päällä.
- Sanelen puhelimeen: ”luonnostele kuulumisviesti tälle asiakkaalle”.
- Puhe muuttuu tekstiksi tekoälykerroksen kautta. Kutsu kirjataan.
- Palvelukerros hakee asiakkaan tiedot muistin asiakaslokerosta. Henkilökohtainen lokero ei ole edes saatavilla tässä kohdassa.
- Tekoäly luonnostelee viestin. Kutsu kirjataan.
- Koodi tarkistaa luonnoksen: ei henkilökohtaista sisältöä, ei lukuja, joita ei ole lähteessä, ei kiellettyjä ilmauksia.
- Luonnos menee hyväksymisjonoon. Puhelimeen tulee ilmoitus ”valmis”.
- Luen, muokkaan tai hylkään. Vasta hyväksyntä avaa lähetyksen, ja lähetys on oma vaiheensa, joka kirjataan erikseen.
Seitsemän vaihetta, joista tekoäly tekee kaksi. Loput viisi ovat koodia tai minua. Tämä suhde on tarkoituksellinen.
Kun jokin pettää
Arkkitehtuuri mitataan siitä, mitä tapahtuu, kun jokin ei toimi. Kaaviossa mikään ei koskaan petä.
- Malli ei vastaa tai vastaa tyhjää. Jokaisella kutsulla on aikaraja. Tyhjä vastaus on tyhjä vastaus, ei keksitty. Pyyntö merkitään epäonnistuneeksi, ei jätetä roikkumaan.
- Työ jää kesken. Jos taustatyö kaatuu, erillinen tarkistus löytää kesken jääneet ja merkitsee ne. Mitään ei ajeta kahdesti, koska jokaisella pyynnöllä on tunniste, ja sama tunniste toiseen kertaan palauttaa sen, mikä jo tehtiin.
- Tekoäly tuottaa jotain, mitä ei pitäisi. Tarkistus koodissa ennen jonoa. Jos se jää kiinni, pyyntö ei etene, ja syy näkyy.
- Lokero vuotaa. Ei voi, koska raja on rajapinnassa: asiakaskäsittelyllä ei ole polkua henkilökohtaiseen lokeroon.
Pettämiselle on siis nimetty käsittely, ja se on koodia. Tekoälyä ei pyydetä korjaamaan omaa virhettään.
Mitä mitataan
Kun kytkin on päällä, näen kuukauden lopussa euron tarkkuudella, mitä tekoäly maksoi ja mihin tarkoitukseen. Näen, mikä toiminto käyttää eniten kutsuja, mikä malli hoitaa mitäkin ja kuinka moni luonnos hyväksyttiin sellaisenaan, muokattuna tai hylättynä. Viimeinen luku on tärkein: se kertoo, kannattaako kohtaan antaa lisää itsenäisyyttä vai ei.
Useimmissa organisaatioissa, joissa tekoäly on ”otettu käyttöön”, tätä lukua ei ole. Silloin ei ole mittaria sille, toimiiko se. Lasku sentään tulee.
Päätökset, jotka tein tietoisesti
Arkkitehtuuri on päätösten summa. Nämä kirjasin, jotta tiedän myöhemmin, miksi asiat ovat niin kuin ovat.
- Automaattinen sähköposti pois. Koko lähetysketju poistettiin, ei vain kytketty pois. Jos se joskus palaa, se on uusi päätös, ei vanhan avaaminen.
- Yksi käyttäjä, mutta rakenne ei oleta sitä. Jokaisella tietorivillä on omistaja, vaikka omistajia on yksi. Hinta oli pieni, ja se säästää myöhemmän uudelleenkirjoituksen.
- Kytkimet oletuksena pois. Jokainen toiminto, jolla on sivuvaikutus, on pois päältä, kunnes sen kytken päälle, ja kytkennästä jää historia.
- Laskenta ei ole koskaan tekoälyä. Tämä on ainoa sääntö, jota en ole edes harkinnut rikkovani.
Seuraavat askeleet
Suunta on rajattu itsenäisyys. Tekoäly saa tehdä vähäriskisiä asioita ilman erillistä hyväksyntää: kirjata sanellut tunnit, siirtää yhteydenoton seuraavaan vaiheeseen, kun puhelu on merkitty soitetuksi. Jokainen teko jää lokiin, ja raja nostetaan askel kerrallaan sitä mukaa kuin hyväksymisprosentti osoittaa, että virheitä ei tule.
Sen jälkeen toimintorajat ylittävät yhteenvedot: ”näytä kaikki, mikä liittyy tähän asiakkaaseen”, asiakastiedoista, tunneista, laskuista ja viesteistä yhdestä paikasta. Ja havainnot omasta työtavasta: mihin aika toistuvasti menee ja mitä kannattaisi muuttaa.
Seuraava liitäntä on lähtevä: talous lähettää ilmoituksen Verohallinnolle suoraan työkalusta. Sekin kulkee saman portin läpi, ja sen toteutus on arkkitehtuurin kannalta tylsä, mikä on tarkoitus.
Järjestys ei muutu. Tekoäly valmistelee, minä päätän.
Mitä tästä jää käteen
Rakenne ei ole yhden hengen yrityksen erikoisuus. Samat kolme ehtoa pätevät ennen kuin tekoälyä kannattaa päästää mihinkään, koosta riippumatta:
- Datalla on lähde. Jos sama asiakas on kolmessa järjestelmässä eri muodossa, tekoäly tiivistää ristiriidan kauniimmin, ei poista sitä.
- Prosessilla on omistaja. Tekoäly voi valmistella päätöksen, mutta jonkun nimen pitää olla sen takana.
- Sivuvaikutuksille on portti. Lähetys, kirjaus ja julkaisu kulkevat ihmisen kautta, kunnes loki osoittaa, että porttia voi avata askeleen verran.
Ehdot ovat tylsiä, ja juuri siksi ne jäävät tekemättä. Mallin valinta on kiinnostavampaa. Siitä, miksi data ja prosessit tulevat silti ennen tekoälyä, kirjoitin erikseen: Ensin data ja prosessit, sitten tekoäly.
Tekoäly valmistelee, ihminen päättää. Järjestys kuulostaa varovaiselta. Se on arkkitehtuuria: ainoa järjestys, jossa virhe jää kiinni ennen kuin se maksaa.