Kun tällä kurssilla puhutaan rakennettavasta tekoälyagentista, tarkoitetaan kielimallin ja sitä ohjaavan agentin ohjauskehyksen (harness) muodostamaa järjestelmää. Ohjauskehys välittää syötteet, työkalut, tehtävän tilan, oikeudet ja turvarajat. Tämä on kurssin rajaus, ei yleispätevä agentin määritelmä.
Sanaa agentti käytetään teknologiauutisissa, yritysviestinnässä ja opetuksessa monella tavalla. Siksi tällä tunnilla ei päätellä pelkän tuotenimen perusteella, onko jokin järjestelmä agentti. Sen sijaan tarkastelet, miten kielimalli ja sitä ympäröivä ohjauskehys yhdessä käsittelevät tehtävää, tekevät rajattuja valintoja ja käyttävät työkaluja.
Tämä oppitunti on ensimmäinen askel kohti agenttien ymmärtämistä. Et vielä lukitse lopputyösi ongelmaa, vaan keräät alustavia ehdokkaita. Automaatio vai autonomia -tunnilla arvioit, tarvitseeko ongelma todella agenttia, ja teet vasta sen jälkeen lopullisen projektivalinnan. Oppitunneilla 26–27 toteutat tai simuloit suunnitelmasi n8n-ympäristössä.
Huomio ennen kuin aloitat: Agentit-osio on kurssin syventävä ja vaativin osa, koska siinä yhdistät aiemmin oppimasi asiat. Et tarvitse aiempaa ohjelmointiosaamista: etenet vaihe kerrallaan ja voit valita teknisen toteutuksen tai samanarvoisen dokumentoidun suunnittelusuorituksen. Tavoitteena on ymmärtää tämän kurssin rajauksen mukaisen agentin rakenne ja rakentaa rajattu, testattava ja turvallinen kokonaisuus — ei hallita kaikkia agenttitekniikoita.
Tarkastellaan esimerkkiä. Tehtävänä on avata sähköpostisovellus, etsiä kaikki viestit, joissa esiintyy sana ”lasku”, siirtää ne kansioon ”Laskut” ja lähettää lähettäjälle automaattinen vastaus, jossa ilmoitetaan laskun vastaanottamisesta. Yksittäisenä suorituksena tehtävä on melko yksinkertainen. Jos sama toiminto täytyy kuitenkin tehdä toistuvasti, esimerkiksi joka päivä tai jatkuvasti pitkän ajan kuluessa, siitä tulee työläs ja aikaa vievä.
Tällaisessa tilanteessa agentti voisi hoitaa tehtävän itsenäisesti käyttäjän puolesta. Tämä herättää kuitenkin tärkeän kysymyksen: miten agentti eroaa tavallisesta automaatiosta, ja mikä tekee järjestelmästä juuri agentin?
Ennen kuin tarkastelemme asiaa tarkemmin, on hyödyllistä pohtia omaa arkea.
Pysähdy hetkeksi: Millaisia toistuvia tehtäviä teet säännöllisesti? Mitkä niistä ovat yksinkertaisia, mutta vievät silti aikaa ja kuormittavat turhaan?
Tällä kurssilla agentin toiminta syntyy kielimallin ja agentin ohjauskehyksen yhteistyöstä. Kielimalli tulkitsee sille välitettyä tilannetta ja tekee rajattuja valintoja. Ohjauskehys puolestaan hallitsee tehtävän tilaa, tarkistaa työkalukutsut ja oikeudet, välittää tulokset takaisin mallille sekä toteuttaa turvarajat. Järjestelmä voi näin edetä tavoitetta kohti usean havaittavan vaiheen kautta, mutta sen toimivalta määräytyy aina ennalta asetettujen rajojen mukaan.
Jos sähköpostisovellus käy joka aamu läpi uudet viestit ja siirtää laskut automaattisesti tiettyyn kansioon, kyse ei vielä välttämättä ole agentista. Usein kyse on skriptistä eli yksinkertaisesta ohjelmasta, joka tekee aina saman toiminnon samalla tavalla. Tällainen ratkaisu toimii hyvin niin kauan kuin tilanne vastaa ennalta määriteltyä mallia. Jos viestin muoto poikkeaa odotetusta, skripti voi epäonnistua.
Kurssin esimerkkijärjestelmä toimii toisin. Se voi vastaanottaa uuden sähköpostin, analysoida sen sisältöä ja arvioida, onko kyseessä lasku. Sen jälkeen kielimalli voi valita sallitun käsittelyreitin, ja ohjauskehys tarkistaa oikeudet ennen viestin siirtämistä tai vastausluonnoksen muodostamista. Ohjauskehys kirjaa toimenpiteet ja käsittelee virheet. Jos esimerkiksi vastaanottajan osoite on virheellinen, järjestelmä voi keskeyttää toiminnon ja pyytää ihmiseltä jatko-ohjeita.
Pysähdy hetkeksi: Mitä eroa on siinä, että ohjelma tekee aina samaa, ja siinä, että se arvioi tilannetta ja muuttaa toimintaansa sen perusteella?
Sanaa agentti käytetään eri yhteyksissä eri tavoin. Tällä kurssilla rakennettavalla tekoälyagentilla tarkoitetaan kielimallin ja sitä ohjaavan agentin ohjauskehyksen (harness) muodostamaa järjestelmää. Ohjauskehys on ympäröivä ohjelmistorakenne, joka välittää syötteet, tarjoaa rajatut työkalut, ylläpitää tehtävän tilaa, toimeenpanee käyttöoikeudet ja tallentaa suoritusjäljen. Kielimalli tekee rajatun tilannearvion; ohjauskehys muuttaa arvion hallituksi toiminnaksi.
Seuraavat kuusi kohtaa ovat tämän kurssin suunnittelutarkistuslista, eivät väite siitä, että jokaisessa agentissa olisi kuusi erillistä teknistä komponenttia. Yksinkertainen agentti voi toimia ilman pitkäkestoista muistia tai automaattista palautteesta oppimista. Tarkistuslista auttaa silti huomaamaan, mitä toteutus tarvitsee ja mitä siitä voidaan tarkoituksella jättää pois.
Ensimmäinen komponentti: syötekäsittelijä. Syötekäsittelijä toimii agentin aisteina. Se havaitsee, kun uusi sähköposti saapuu, palvelin lähettää hälytyksen tai käyttäjä painaa painiketta. Sen tehtävänä on vastaanottaa nämä herätteet ja käyttäjän syötteet sekä muuntaa ne muotoon, jota agentti pystyy käsittelemään.
Ilman syötekäsittelijää agentti ei tietäisi, että jotain on tapahtunut. Se ei voisi reagoida ympäristöönsä eikä käynnistää toimintaansa oikealla hetkellä.
Voit ajatella asiaa myös näin: vaikka neuvoja olisi kuinka taitava, hän ei voi ratkaista ongelmia, jos hän ei saa niistä mitään tietoa. Jos hän ei kuule puheluita eikä lue sähköposteja, hän ei edes tiedä, että apua tarvitaan.
Toinen komponentti: päättelijä ja suunnittelija. Päättelijä on agentin aivot. Kun tietoa on vastaanotettu, päättelijän tehtävänä on analysoida tilanne ja arvioida, mikä toimenpide on tarkoituksenmukaisin. Tässä se voi hyödyntää esimerkiksi kielimallia, joka auttaa tulkitsemaan tekstiä ja valitsemaan seuraavan vaiheen. Se voi esimerkiksi päätellä, onko viesti kiireellinen, löytyykö vastaus tietokannasta vai pitääkö asia ohjata ihmiselle.
Ilman päättelijää agentti ei tekisi päätöksiä tilanteen perusteella, vaan toimisi aina samalla tavalla. Tällöin se olisi enemmän skripti kuin varsinainen agentti.
Kolmas komponentti: työkalujen suorittaja. Kun päättelijä on arvioinut tilanteen ja valinnut toimintatavan, työkalujen suorittaja toteuttaa päätöksen käytännössä. Se voi kutsua rajapintoja, tehdä tietokantahakuja, lähettää sähköposteja tai muokata tiedostoja. Työkalujen suorittaja on siis se osa agenttia, joka muuttaa päätökset toiminnaksi.
Ilman tätä osaa agentti ei pystyisi vaikuttamaan ympäristöönsä. Päättelijä voisi kyllä muodostaa tarkoituksenmukaisen ratkaisun, mutta mitään ei tapahtuisi käytännössä. Tällöin agentti olisi kuin johtaja, jolla ei ole mahdollisuutta toteuttaa tekemiään päätöksiä.
Neljäs kohta: muisti ja konteksti. Agentti tarvitsee tehtävän nykyisen tilan, mutta ei aina pitkäkestoista muistia. Lyhytkestoinen muisti tarkoittaa tietoa, jota agentti pitää mukana yhden suorituksen aikana. Pitkäkestoinen muisti tarkoittaa pysyvämmin tallennettua tietoa, jota tarvitaan vain, jos myöhemmän suorituksen pitää hyödyntää aiempaa tietoa.
Jos tehtävä sitä vaatii, pitkäkestoinen muisti voi tuoda myöhempään suoritukseen aiempia tapauksia tai käyttäjäkohtaisia tietoja. Ilman pitkäkestoista muistia agentti voi silti hoitaa itsenäisen tehtävän nykyisen suorituksen tilan avulla. Toteutusta kehitetään testien ja seurannan perusteella riippumatta siitä, tallentaako agentti aiempia tapauksia.
Viides komponentti: turvakerros. Ennen kuin agentti suorittaa mitään toimintoa, sen on tarkistettava, onko toiminta sallittua. Tästä vastaa turvakerros. Sen tehtävänä on estää agenttia tekemästä vaarallisia, virheellisiä tai luvattomia toimenpiteitä. Turvakerros tarkistaa esimerkiksi, saako agentti poistaa tietokannan rivejä, siirtää rahaa tietylle tilille tai käsitellä tietyn käyttäjän tietoja.
Turvakerros toimii yleensä kolmella tasolla. Se voi tarkistaa toiminnan etukäteen ennen sen suorittamista, valvoa toimintaa sen aikana ja arvioida jälkikäteen, tapahtuiko kaikki sääntöjen mukaisesti. Näin se vähentää riskiä, että agentti toimisi tavalla, joka aiheuttaisi vahinkoa tai rikkoisi annettuja rajoja.
Ilman turvakerrosta agentti voisi tehdä vakavia virheitä tai aiheuttaa vahinkoa ympäristölleen. Turvakerros on siis se osa järjestelmää, joka pysäyttää toiminnan silloin, kun sitä ei pitäisi sallia.
Kuudes komponentti: seuranta ja palautesilmukka. Kun agentti suorittaa toiminnon, on tärkeää pystyä seuraamaan, mitä tapahtui. Onko tehtävä onnistunut? Vastasiko tulos odotuksia? Kuinka kauan suoritus kesti? Tästä vastaa seurantakomponentti, joka kirjaa agentin toiminnan ja sen tulokset.
Kerättyä tietoa hyödynnetään palautesilmukassa. Sen avulla agentin toimintaa voidaan arvioida ja kehittää. Jos jokin toimintatapa on aiemmin johtanut epäonnistumiseen, järjestelmä voi käyttää tätä tietoa myöhemmissä tilanteissa ja ohjata toimintaa toiseen suuntaan.
Palautesilmukka ei tarkoita, että malli oppisi automaattisesti jokaisesta suorituksesta. Se voi olla ihmisen tekemä katselmointi, mittari tai testitulokseen perustuva korjausprosessi. Kaikki agentit eivät tarvitse automaattista oppimista, mutta jokainen tuotantototeutus hyötyy seurattavasta suoritusjäljestä.
Pysähdy hetkeksi: Mitkä kuudesta suunnittelukohdasta olisivat valitsemassasi tehtävässä tarpeellisia? Minkä voisit jättää pois ja millä perusteella?
Seuraavilla oppitunneilla avaamme jokaisen näistä komponenteista tarkemmin. Kun kohtaat uuden aiheen, mieti aina: mihin agentin osaan tämä liittyy?
Chatbot on ohjelma, joka vastaa käyttäjän kirjoittamiin viesteihin. Se voi vaikuttaa hyvinkin älykkäältä, ja erityisesti nykyaikaiset kielimallisovellusten chatbotit osaavat käydä sujuvaa keskustelua. Chatbotin toiminta on kuitenkin pääosin reaktiivista: se odottaa käyttäjän viestiä, vastaa siihen ja jää sitten odottamaan seuraavaa viestiä.
Agentti toimii eri tavalla. Se ei ainoastaan reagoi käyttäjän pyyntöihin, vaan voi myös tarkkailla tilannetta taustalla ja käynnistää toimintoja itsenäisesti ilman erillistä käskyä.
Ero näkyy hyvin esimerkin avulla. Jos kirjoitat kielimallisovellukselle: ”Anna minulle ohje pizzan tekemiseen”, saat vastauksen. Tällöin kyse on chatbotista. Jos taas järjestelmä huomaa, että tietyt jääkaapissa olevat ruoka-aineet ovat vanhenemassa, ja lähettää sinulle oma-aloitteisesti reseptejä niiden hyödyntämiseksi, kyse on agentista.
Yritysmaailmassa käytettävät järjestelmät voidaan jakaa kolmeen pääkategoriaan. Näiden erojen ymmärtäminen on tärkeää, koska skripti, työnkulku ja agentti eivät tarkoita samaa asiaa.
Skripti on yksinkertainen ohjelma, joka suorittaa täsmälleen ennalta määritellyt komennot. Se ei arvioi tilannetta eikä huomioi seurauksia, vaan tekee sen, mitä sille on määrätty. Esimerkiksi komento ”poista kaikki tiedostot, joiden nimi alkaa sanalla temp_” on skriptille tyypillinen tehtävä. Skripti ei tee päätelmiä, vaan toteuttaa ohjeen sellaisenaan.
Työnkulku on useasta vaiheesta koostuva prosessi, jossa toiminta etenee ennalta kirjoitettujen sääntöjen mukaan. Esimerkiksi sähköpostien käsittelyssä työnkulku voi toimia näin: jos viesti sisältää sanan ”lasku”, se siirretään kansioon A, jos se sisältää sanan ”raportti”, se siirretään kansioon B, ja muissa tapauksissa se jätetään saapuneisiin. Työnkulku on skriptiä joustavampi, koska siihen sisältyy päätöslogiikkaa. Se perustuu kuitenkin edelleen valmiiksi määriteltyihin sääntöihin, eikä se muuta toimintaansa itsenäisesti.
Agentissa kielimalli tulkitsee tilannetta ja valitsee toimintaa, ja agentin ohjauskehys antaa sille tehtävän tilan, työkalut, oikeudet ja rajat. Tulos voidaan tarkistaa saman suorituksen aikana tai ihmisen tekemässä jälkikatselmoinnissa. Pitkäkestoinen muisti ja automaattinen palautteesta oppiminen ovat mahdollisia lisäosia, eivät agentin tunnusmerkkejä.
Ero näkyy hyvin käytännön esimerkissä. Skripti voi lajitella tiedostot pelkän koon perusteella. Työnkulku voi lajitella ne koon ja tiedostotyypin mukaan ennalta määriteltyjen sääntöjen perusteella. Agentti taas voi tehdä lajittelua sen mukaan, mitä tiedostoja käyttäjä todennäköisesti tarvitsee myöhemmin ja miten ne olisi järkevintä järjestää tulevaa käyttöä varten.
Nyt tunnet kurssin rajauksen: rakennettava tekoälyagentti muodostuu kielimallista ja agentin ohjauskehyksestä. Kurssin kuutta suunnittelukohtaa voi soveltaa eri tavoin. Seuraava suoritusputki kuvaa yhtä neuvonta-agentin toteutusta, jossa kaikki kuusi kohtaa ovat tarpeellisia. Se ei ole kaikkien agenttien pakollinen vaiheistus.
Seuraavaksi tarkastellaan, mitä agentin sisällä tapahtuu silloin, kun se saa tehtävän. Esimerkkinä käytetään neuvonta-agenttia, joka auttaa käyttäjiä ratkaisemaan ongelmia.
Käynnistyminen: Prosessi alkaa aina siitä, että jokin tapahtuma käynnistää agentin toiminnan. Käyttäjä voi esimerkiksi lähettää tukipyynnön viestillä: ”Tulostimeni ei toimi.” Syötekäsittelijä vastaanottaa viestin ja muuntaa sen sellaiseen muotoon, jota agentti pystyy käsittelemään. Käytännössä tämä voi tarkoittaa esimerkiksi jäsenneltyä tietuetta, johon tallennetaan viestin sisältö, lähettäjän tiedot ja aikaleima.
Päättelijä arvioi tilanteen. Tässä vaiheessa agentti ei vielä suorita varsinaisia toimenpiteitä, vaan arvioi tilannetta. Päättelijä lukee syötteen ja tekee kaksi keskeistä asiaa. Ensin se arvioi, mitä tehtävä edellyttää. Sen jälkeen se suunnittelee, mitä vaiheita tehtävän ratkaiseminen vaatii. Tätä vaihetta kutsutaan reititykseksi: agentti valitsee, mitä toimintapolkua tilanteessa kannattaa seurata. Tulostinongelman kohdalla agentti voi esimerkiksi päätyä siihen, että se hakee ensin ratkaisua tietokannasta, vastaa sitten käyttäjälle ja ohjaa asian ihmiselle, jos ratkaisu ei toimi.
Reitityspäätös ei synny sattumalta. Agentti hyödyntää kielimallia, joka analysoi tilanteen ja arvioi, mikä toimintatapa on tarkoituksenmukaisin. Tässä esimerkissä myös pitkäkestoinen muisti on valittu mukaan: aiemmat ratkaisut voivat auttaa ehdotusten järjestämisessä. Toisessa agentissa tietohaku tai nykyisen tehtävän tila voi riittää ilman aiempien suoritusten muistia.
Tehtävän tila tuo nykyisen kontekstin. Agentin ohjauskehys ylläpitää tietoa, jota tarvitaan juuri käsillä olevan tehtävän aikana. Siihen kuuluvat esimerkiksi nykyinen keskustelu, käyttäjän viimeisimmät viestit ja agentin edelliset vaiheet. Tässä esimerkkitoteutuksessa on lisäksi pitkäkestoinen muisti, johon tallennetaan valikoituja aiempien tehtävien tuloksia.
Tehtävän tila auttaa agenttia pysymään selvillä siitä, mitä parhaillaan tapahtuu. Pitkäkestoinen muisti on perusteltu vain, jos myöhemmän suorituksen pitää käyttää aiempaa tietoa. Muistin lisääminen kasvattaa myös tietosuoja- ja ylläpitovastuuta.
Käytännössä tämä voi tarkoittaa esimerkiksi sitä, että agentti tunnistaa saman käyttäjän aiemman ongelman ja hyödyntää sitä uuden tapauksen käsittelyssä: viimeksi tulostinongelman syynä oli se, että tulostin ei ollut samassa verkossa, joten tämä tarkistetaan ensin.
Työkalut tekevät työn. Kun suunnitelma on valmis, agentti alkaa toimia. Se kutsuu työkaluja: hakee tietokannasta ratkaisuehdotuksen, tarkistaa tulostimen tilan verkonhallintajärjestelmästä ja kirjoittaa vastausviestin käyttäjälle. Jokainen työkalu on kuin erikoistunut käsipari: yksi osaa lukea tietokantoja, toinen lähettää sähköposteja ja kolmas muokata tiedostoja. Agentti valitsee oikean työkalun kuhunkin tilanteeseen. Tätä valintaa kutsutaan työkalureititykseksi, ja se on yksi tärkeimmistä päätöksistä, joita agentti tekee.
Turvakerros valvoo jokaista vaihetta. Turvakerros on mukana agentin toiminnassa koko ajan, ei vain prosessin lopussa. Ennen kuin agentti esimerkiksi hakee tietoa, turvakerros tarkistaa, onko sillä oikeus käyttää kyseistä tietokantaa. Ennen viestin lähettämistä se voi arvioida, sisältääkö viesti sellaista arkaluontoista tietoa, jota ei saa jakaa. Toiminnon jälkeen turvakerros voi vielä varmistaa, että kaikki tapahtui sääntöjen ja käyttöoikeuksien mukaisesti.
Turvakerros toimii siis kolmessa vaiheessa: ennen toimintoa, sen aikana ja sen jälkeen. Sen tehtävänä on valvoa agentin toimintaa jatkuvasti ja estää virheelliset, vaaralliset tai luvattomat toimenpiteet. Jos jokin näyttää poikkeavalta tai epäilyttävältä, turvakerros voi keskeyttää toiminnan missä vaiheessa tahansa.
Tuloksen tarkistus voi sulkea tämän esimerkin kehän. Agentin ohjauskehys tarkistaa, onnistuiko viestin lähetys ja saatiinko työkalulta odotettu vastaus. Tämän tarkistuksen perusteella agentti voi jatkaa, yrittää rajatusti uudelleen tai eskaloida ihmiselle.
Jos kaikki on sujunut odotetusti, toteutus kirjaa onnistumisen. Ratkaisu tallennetaan pitkäkestoiseen muistiin vain, jos sille on määritelty tarve, säilytysaika ja käyttöoikeudet. Jos jokin meni pieleen, agentin ohjauskehys voi sallia toisen toimintatavan, eri työkalun tai eskaloinnin ihmiselle.
Tässä toteutuksessa seurantaa käytetään myös palautesilmukassa, jossa ihminen tarkastelee tuloksia ja kehittää asetuksia. Tämä ei tarkoita, että kielimalli oppisi automaattisesti jokaisesta suorituksesta.
Esimerkin kulku kokonaisuutena. Kun käyttäjä lähettää tukipyynnön, agentin ohjauskehys välittää viestin kielimallille. Malli arvioi tilanteen ja valitsee toimintapolun. Tähän esimerkkiin valittu pitkäkestoinen muisti tuo aiempaa kontekstia. Työkalut toteuttavat rajatut toimenpiteet, turvarajat valvovat oikeuksia ja seuranta kirjaa tuloksen. Sama kuuden kohdan tarkistuslista voi tuottaa toisessa tehtävässä yksinkertaisemman toteutuksen.
Agentin erottaa tässä kurssissa muista ratkaisuista kielimallin ja agentin ohjauskehyksen yhdistelmä: kielimalli tulkitsee tilannetta, ja ohjauskehys mahdollistaa rajatun työkalujen käytön. Skripti suorittaa ennalta määrätyn toiminnon, ja työnkulku etenee valmiiksi määriteltyä polkua pitkin. Agentti ei tarvitse automaattista oppimista ollakseen agentti.
Pysähdy hetkeksi: Valitse arjestasi jokin toistuva tehtävä. Kuvittele, että suunnittelet agentin hoitamaan sen. Mitkä kuudesta suunnittelukohdasta tarvitset, minkä jätät pois ja missä ihmisen valvonta olisi tärkeintä?
Tässä osiossa agentti on tähän asti ollut jotain, jonka rakennat itse. Arjessa ja työpaikoilla kohtaat agentin kuitenkin useimmiten valmisagenttina: valmiina tuotteena, joka asuu tutun tekoälysovelluksen sisällä. Sovelluksessa on silloin agenttitila — toimintatila, jolle annat tehtävän ja joka tekee monivaiheisen työn puolestasi: lukee tiedostoja, käyttää työkaluja ja raportoi lopuksi, mitä sai aikaan.
Valmisagenttia voi arvioida samalla kuuden kohdan tarkistuslistalla, vaikka toteutus ei jakautuisi kuuteen erilliseen osaan ja jokin kohta olisi tarkoituksella tarpeeton. Kokeile väitettä arkiesimerkillä. Annat agenttitilalle tehtävän: ”Käy läpi tämän kansion kokousmuistiot ja kokoa taulukko päätöksistä ja vastuuhenkilöistä.” Kun sovellus ottaa tehtäväsi vastaan ja tulkitsee sen, työssä on syötekäsittelijä. Kun se näyttää sinulle vaihesuunnitelman ennen aloittamista, näet päättelijän ja suunnittelijan kädenjäljen. Kun se lukee muistiot ja kirjoittaa taulukon, vuorossa on työkalujen suorittaja. Kun se kysyy ”saanko muokata tätä kansiota?”, vastassa on turvakerros. Kun se jatkaa keskeytynyttä työtä siitä, mihin jäitte, käytössä on muisti ja konteksti. Ja kun se lopuksi raportoi, mitä teki, ja korjaa huomaamansa virheen, kehän sulkevat seuranta ja palautesilmukka.
Tälle kokonaisuudelle on nimi. Kaikkea, mitä kielimallin ympärille on rakennettu — esimerkiksi syötteiden välitystä, työkaluja, tehtävän tilaa, oikeuksia ja turvarajoja — kutsutaan agentin ohjauskehykseksi. Kurssin kuusi kohtaa auttavat arvioimaan ohjauskehystä, mutta eivät määrää sen sisäistä rakennetta.
Englannin sana harness tarkoittaa valjaita. Vertaus auttaa muistamaan, että sama kielimalli voi olla sekä keskustelevan sovelluksen että toimintoja tekevän agentin sisällä. Ratkaisevaa ei ole käyttöliittymän nimi vaan se, saako malli ohjauskehykseltä rajatun oikeuden valita seuraavan toiminnon havaintojen perusteella. Chatbotin, työnkulun ja agentin rajat eivät siksi ole kaikissa tuotteissa jyrkkiä.
Tilanne heinäkuussa 2026 — esimerkkejä valmisagenteista.
Claude Cowork on Anthropicin ei-tekniseen tietotyöhön suunnattu agentti, joka työskentelee työpöydällä käyttäjän sallimissa tiedostoissa ja sovelluksissa. ChatGPT Work on OpenAI:n agenttituote, joka julkaistiin 9. heinäkuuta 2026 GPT-5.6-mallien yhteydessä: se yhdistää Codexin ja ChatGPT:n ja tekee pitkäkestoisia tehtäviä sovelluksissa ja tiedostoissa.Tuotenimet, päivämäärät ja ominaisuudet vanhenevat nopeasti — tämä laatikko päivitetään kurssin ylläpidossa erikseen. Leipätekstin käsitteet eivät vanhene.
Miksi siis rakennat tai simuloit tunneilla 26–27 oman agentin, jos valmiitakin on tarjolla? Siksi, että n8n-harjoituksessa teet ohjauskehyksen ratkaisut näkyviksi: valitset työkalut, määrität oikeudet ja asetat turvarajat. Sen jälkeen osaat arvioida myös valmista agenttia, koska tiedät, mitä kysymyksiä sen toiminnasta kannattaa esittää.
Pysähdy hetkeksi: Kun seuraavan kerran käytät tekoälysovellusta, mieti: juttelenko pelkän mallin kanssa vai onko mallilla agentin ohjauskehys — työkalut, oikeudet ja turvarajat? Mistä eron huomaa käyttöliittymässä?
Agentit-osion aikana suunnittelet n8n-ympäristöön agentin ja osoitat sen toiminnan teknisellä toteutuksella tai dokumentoidulla simulaatiolla. Kirjaa nyt kaksi tai kolme mahdollista ongelmaa, mutta älä valitse vielä lopullista. Automaatio vai autonomia -tunnilla vertaat agenttia yksinkertaisempiin ratkaisuihin ja valitset projektin vasta perustellun arvioinnin jälkeen.
Tämän kurssin tekoälyagentti on kielimallin ja agentin ohjauskehyksen muodostama järjestelmä. Siinä kielimallille annetaan rajattu oikeus valita seuraava toiminto havaintojen perusteella. Tavallinen työnkulku voi myös haarautua, käyttää tietokantaa ja säilyttää tilaa, mutta sen etenemisen ratkaisee ennalta kirjoitettu logiikka.
Kurssin kuusi suunnittelukohtaa ovat syötekäsittelijä, päättelijä ja suunnittelija, työkalujen suorittaja, muisti ja konteksti, turvakerros sekä seuranta ja palautesilmukka. Myöhemmillä tunneilla niihin voidaan viitata lyhyemmin syötteenä, päättelynä, työkaluina, muistina, turvana ja palautteena. Niiden avulla kysyt, mitä juuri tämä agentti tarvitsee ja mitä voidaan jättää pois. Pitkäkestoinen muisti ja palautteesta oppiminen eivät ole pakollisia.
Agentteja kohtaat myös valmiina tuotteina, sovellusten agenttitiloina. Niitä voi tarkastella samalla kuuden kohdan listalla. Kurssin rajauksessa ydin on kielimalli ja sen ympärille rakennettu agentin ohjauskehys: työkalut, tila, oikeudet ja turvarajat. Kun tunnet osat, osaat arvioida myös valmista agenttia.
Tarkistettu 15.7.2026.
Tämä tunti valmistelee Agentit-osion lopputyötä. Tänään kirjoitat alustavia ongelmaehdokkaita. Valitset lopullisen projektin vasta Automaatio vai autonomia -tunnin lopussa, kun olet arvioinut, tarvitseeko ongelma todella agenttia.
Kaikkia ei tarvitse tehdä. Valitse tehtävistä 1. Suosittelen kuitenkin, että teet ainakin pohjapiirroksen — se on lopputyön osa.
Miksi tämä on tärkeää: Hyvä projekti alkaa ongelmasta, ei työkalusta. Tässä vaiheessa vaihtoehtoja saa olla useita. Automaatio vai autonomia -tunnilla testaat ne päätöspuulla ja valitset vasta sitten projektin, jota jatkat tunneilla 21–27.
Kirjaa kaksi tai kolme ongelmaa, joita voisi ehkä ratkaista agentilla. Valitse niistä yksi alustava ehdokas ja kirjoita lyhyt kuvaus (100–150 sanaa), jossa vastaat kolmeen kysymykseen:
Ongelman ei tarvitse olla monimutkainen, ja sen voi valita arjesta, harrastuksesta, opiskelusta tai työelämästä. Älä vielä lupaa tiettyä teknistä toteutusta. Tärkeintä on kuvata käyttäjän todellinen tarve ja kohta, jossa tilanteen mukaan muuttuva valinta voisi tuoda hyötyä.
Avaa käytettävissäsi oleva kielimallisovellus ja käytä sitä sparrauskumppanina alustavan ehdokkaan haastamiseen. Älä pyydä tekoälyä keksimään ongelmaa puolestasi — pyydä sitä tutkimaan oman ehdotuksesi oletuksia.
Arvioin agenttiprojektin mahdollisena ehdokkaana seuraavaa ongelmaa: [kuvaa]. Käyttäjä on
[kuvaa]. Toimi kriittisenä sparrauskumppanina ja kysy minulta 3–4
kysymystä, jotka paljastavat, onko tämä todella agenttiongelma vai
riittäisikö yksinkertaisempi ratkaisu. Älä vastaa puolestani — kysy
niin että minä ajattelen.
Vastaa kysymyksiin omassa pohjapiirroksessasi. Tekoäly ei tee päätöksiä — sinä päätät.
Vinkki muistiinpanoihin: Tee oma muistiinpanodokumentti, johon kerää kaikki viisi Agentti-pohjapiirrosta omiksi alaotsikoikseen. Agentin minimiversion rakennustunnilla kasaat ne kaikki yhdeksi suunnitelmaksi.
Miksi tämä on hyödyllinen: Tämä tehtävä harjoittaa täsmälleen sitä taitoa, jonka tarvitset pohjapiirroksesi perustelussa: mikä on agentti ja mikä ei.
Alla on neljä järjestelmän kuvausta. Tunnista jokaisen kohdalla, onko kyseessä chatbot, tämän kurssin rajauksen mukainen tekoälyagentti vai ei kumpikaan, ja perustele valintasi kuuden rakennusosan tarkistuslistan avulla.
Järjestelmä A: Asiakaspalvelun chatbotti. Asiakkaat voivat kirjoittaa kysymyksiään verkkosivuston chat-ikkunaan. Järjestelmä etsii hyväksytystä tietopohjasta sopivaa vastausta. Jos hyväksyttyä lähdettä ei löydy, lähteet ovat ristiriidassa tai pakollinen tieto puuttuu, se ilmoittaa asiakkaalle, että ihmisen palvelutiimi ottaa yhteyttä.
Järjestelmä B: Automaattinen kasvihuoneen ilmaston valvonta. Valvonta-agentti seuraa jatkuvasti kasvihuoneen lämpötilaa, ilmankosteutta ja maan kuivuutta. Kun lämpötila nousee yli 28 asteeseen kahden minuutin ajan, agentti avaa automaattisesti tuuletusluukut ja käynnistää kastelun. Agentti lähettää myös ilmoituksen vastuuhenkilölle ja dokumentoi tapahtumat. Tunnin kuluttua, jos olosuhteet ovat palautuneet normaaleiksi, agentti sulkee luukut.
Järjestelmä C: Kuvankäsittelyohjelma. Kun käyttäjä lataa kuvan, ohjelma tunnistaa automaattisesti kuvan objektit ja lisää kuvailevat tagit metadataan. Ohjelma analysoi myös kuvan kirkkautta ja säätää sitä automaattisesti sopivammaksi. Ohjelma ei itse päätä, mitä kuvia käyttäjä haluaa käsitellä — se vain käsittelee jokaisen kuvan, joka sille annetaan, samalla logiikalla.
Järjestelmä D: Tekoälysovelluksen agenttitila. Toimiston tietokoneella on tekoälysovellus, jossa on agenttitila. Käyttäjä kirjoittaa: "Käy läpi tämän kansion 12 kokousmuistiota ja kokoa taulukko kaikista päätöksistä ja vastuuhenkilöistä." Sovellus pyytää ensin luvan kansioon ja näyttää vaihesuunnitelmansa. Sitten se lukee tiedostot, pysähtyy kysymään lupaa ennen uuden tiedoston kirjoittamista ja raportoi lopuksi, mitä teki ja minkä muistion kohdalla se jäi epävarmaksi.
Täytä jokaisen järjestelmän kohdalle valintasi (chatbot, tämän kurssin rajauksen mukainen tekoälyagentti tai ei kumpikaan) ja perustelu 2–3 lauseella. Käytä termejä reaktiivinen, proaktiivinen, autonominen, tavoite ja päätöksenteko sekä viittaa vähintään kahteen kuuden rakennusosan tarkistuslistan kohtaan.
Vastaa järjestelmän D kohdalla lisäksi kahteen kysymykseen:
Vinkki muistiinpanoihin: Kirjaa vastauksesi omiin muistiinpanoihisi. Tätä tehtävää ei palauteta, mutta sen havainnot tukevat pohjapiirroksen perustelua.
Ongelmaehdokkaat valmiina — lopullinen projektivalinta tehdään Automaatio vai autonomia -tunnilla
Tällä välilehdellä harjoittelet juuri lukemaasi käytännössä. Tehtävät tarkistuvat itsestään: saat palautteen heti jokaisen vastauksen jälkeen, eikä kukaan arvioi tai näe vastauksiasi. Väärä vastaus ei ole ongelma — jokainen selitys kertoo, miksi juuri se vaihtoehto ei toiminut, joten opit myös virheistä. Tehtävät etenevät sanaston kertaamisesta kohti monimutkaisempaa päättelyä ja päättyvät tilanteeseen, jossa arvioit itse, milloin agentin kannattaa antaa toimia itsenäisesti ja milloin sinun pitää astua väliin.
Aloitetaan tutuilla käsitteillä, ennen kuin siirrytään monimutkaisempaan päättelyyn.
Järjestä yhden esimerkkitoteutuksen vaiheet. Tämä on yksi mahdollinen toteutus, ei kaikkien agenttien pakollinen kuuden vaiheen putki.
Kahdeksan tilannetta odottaa luokittelua. Lue jokainen huolellisesti — oikea vastaus ei aina ole ensimmäinen mieleen tuleva.
Viimeinen tehtävä kokoaa kaiken opitun yhteen: astut itse ihmiseksi agentin rinnalle.
Tällä kurssilla rakennettava tekoälyagentti rajataan kielimallin ja agentin ohjauskehyksen muodostamaksi järjestelmäksi. Kielimalli tulkitsee tilannetta, ja ohjauskehys välittää syötteet, työkalut, tehtävän tilan, oikeudet ja turvarajat. Tämä on kurssin rajaus, ei yleispätevä agentin määritelmä. Kurssin kuusi kohtaa ovat suunnittelutarkistuslista, eivät jokaisen agentin pakolliset tekniset osat.
Keskustelukäyttöliittymä, jossa järjestelmä vastaa käyttäjän viesteihin. Chatbot voi olla pelkkä kysymys–vastaus-palvelu tai se voidaan liittää työkaluihin ja työnkulkuihin. Pelkkä chat-näkymä ei siksi vielä kerro, onko taustalla tämän kurssin rajauksen mukainen tekoälyagentti.
Yksinkertainen ohjelma, joka tekee aina saman asian samalla tavalla. Se ei mieti tai muuta toimintaansa tilanteen perusteella.
Sarja vaiheita, joita ohjataan etukäteen kirjoitetuilla säännöillä ja päätöksillä. Työnkulku on älykkäämpi kuin skripti, mutta staattisempi kuin agentti.
Kyky tehdä päätöksiä ja toimia itsenäisesti ilman jatkuvaa ulkoista ohjausta. Agentti voi muuttaa toimintaansa tilanteen perusteella ja valita eri reittejä tavoitteen saavuttamiseksi.
Agentin silmät ja korvat. Se vastaanottaa herätteitä käyttäjältä tai ympäristöstä, muuttaa ne järjestelmän ymmärtämään muotoon ja välittää ne päättelykomponentille.
Agentin aivot. Se analysoi tilanteen, selvittää tavoitteen, pohtii mahdollisia ratkaisuja ja tekee suunnitelman siitä, kuinka edetä. Päättelijä käyttää logiikkaa ja tietoa tehdäkseen fiksuja päätöksiä.
Agentin kädet. Se kutsuu rajapintoja (API:ita) ja suorittaa konkreettisia toimintoja, kuten sähköpostien lähettämistä, tietokantojen päivittämistä tai muiden ohjelmien kutsumista. Suorittaja toteuttaa päättelykomponentin tekemät päätökset.
Tehtävän nykyinen tila voi olla keskustelun konteksti-ikkunassa tai agentin ohjauskehyksen muussa tilanhallinnassa. Pitkäkestoinen muisti tarkoittaa esimerkiksi tietokantaan tai lokiin tallennettua aiempaa tietoa, ja se lisätään vain silloin, kun myöhempi suoritus todella tarvitsee sitä. Muisti ei tarkoita, että malli oppisi automaattisesti.
Rajallinen määrä sisältöä, joka välitetään kielimallille yhdellä käsittelykerralla. Siihen voidaan koota esimerkiksi nykyinen viesti, valittuja aiempia viestejä, työkalujen tuloksia ja haettua tietoa. Konteksti-ikkuna ei itsessään ole muistijärjestelmä eikä pysyvä tallennuspaikka, vaan agentin ohjauskehys päättää, mitä siihen tuodaan kullakin kierroksella.
Komponentti, joka tarkistaa agentin tekemiä päätöksiä ja toimintoja. Se varmistaa, että agentti noudattaa sääntöjä ja normeja ennen toimintoa, sen aikana ja sen jälkeen. Turvakerros suojaa käyttäjiä ja järjestelmää virheiltä ja väärinkäytöksiltä.
Valinnainen prosessi, jossa toiminnan tuloksia seurataan ja toteutusta kehitetään. Palaute voi tulla käyttäjältä, järjestelmältä, testistä tai ympäristöstä. Palautesilmukka voi olla ihmisen tekemä katselmointi eikä tarkoita automaattista oppimista.
Yhden toteutuksen tapa järjestää syötteet, kielimallin päättely, työkalukutsut, turvarajat ja tulosten käsittely. Suoritusputkia voi olla erilaisia. Pitkäkestoinen muisti ja palautteesta oppiminen eivät ole jokaisessa putkessa pakollisia.
Agentin päätös siitä, mitä polkua tai strategiaa se käyttää tehtävän ratkaisemiseksi. Agentti valitsee reitin tavoitteen, tilanteen ja käytettävissä olevien resurssien perusteella.
Agentin prosessi oikean työkalun valitsemiseksi kuhunkin tilanteeseen. Jos agentti joutuu kirjoittamaan sähköpostia, se valitsee sähköpostin lähettämisen työkalun. Jos se tarvitsee tietoa tietokannasta, se valitsee tietokantakyselyn työkalun.
Valmiiksi rakennettu agenttituote, jossa joku muu on toteuttanut kielimallia ympäröivän agentin ohjauskehyksen. Tuotetta voi arvioida kurssin kuuden kohdan tarkistuslistalla, vaikka toteutus ei jakautuisi kuuteen erilliseen osaan.
Sovelluksen toimintatila, jossa tekoäly ei vain vastaa viesteihin, vaan suorittaa monivaiheisia tehtäviä työkaluilla käyttäjän puolesta.
Kielimallin ympärille rakennettu kokonaisuus: esimerkiksi syötteiden käsittely, työkalut, tehtävän tila, oikeudet ja turvarajat. Englannin sana harness tarkoittaa valjaita.