Suuret kielimallit (LLM)
Tokenit ja suomen kieli: miksi suomeksi kysyminen maksaa enemmän
Kielimalli ei näe sanoja vaan tokeneita. Näin suomen taivutus ja yhdyssanat pilkkoutuvat moneksi palaksi, mitä se maksaa ja miten se näkyy vastausten laadussa.
Lyhyt vastaus
Kielimalli pilkkoo tekstin tokeneiksi, ja pilkkomissäännöt on opittu aineistosta, jossa englanti on ylivoimaisesti yleisin kieli. Siksi tavallinen englannin sana on usein yksi token, kun taas taivutettu suomen sana tai yhdyssana hajoaa useaksi. Sama sisältö vie suomeksi selvästi enemmän tokeneita kuin englanniksi, mikä nostaa hintaa, hidastaa vastausta ja täyttää konteksti-ikkunan nopeammin. Vastausten sujuvuuteen tämä ei yleensä vaikuta, mutta se selittää osan sanatason kömmähdyksistä.
Sisällys
- Tokenisaattori on oma osansa, ei mallin ymmärrystä
- Miksi pilkkomissäännöt opitaan aineistosta
- Taivutus: sama sana kymmenessä eri asussa
- Yhdyssanat ja pitkät erikoistermit
- Mitä tämä maksaa ja miten se näkyy nopeudessa
- Näkyykö tämä vastausten laadussa
- Milloin kannattaa kysyä englanniksi
- Mitä tästä kannattaa jäädä käteen
- Usein kysytyt kysymykset
- Lähteet ja lisälukemista
Kielimalli ei lue kirjaimia eikä sanoja. Se lukee tokeneita, eli tekstin paloja, joilla on kullakin numerotunniste mallin sanastossa. Yksityiskohta kuulostaa tekniseltä, mutta se on syy siihen, miksi suomenkielinen käyttö maksaa enemmän, täyttää keskustelun kapasiteetin nopeammin ja tuottaa toisinaan outoja virheitä keskellä muuten moitteetonta tekstiä.
Yleinen käsitys on, että malli osaa suomea joko hyvin tai huonosti ja että kyse on kielitaidosta. Tokenisoinnin kannalta kyse on jostain muusta. Malli voi kirjoittaa täysin sujuvaa suomea ja silti käsitellä sitä tehottomasti, koska tehokkuus ratkaistiin jo ennen opetusta, siinä vaiheessa kun päätettiin miten teksti pilkotaan. Perusmekanismi on kuvattu artikkelissa miten kielimalli toimii, ja tässä katsotaan tarkemmin sitä, mitä tapahtuu kun pilkkoja kohtaa suomen.
Tokenisaattori on oma osansa, ei mallin ymmärrystä
Ennen kuin teksti menee malliin, sen käsittelee erillinen ohjelma, tokenisaattori. Sillä on kiinteä sanasto: lista merkkijonoja, joista kullakin on numero. Tokenisaattori etsii tekstistä pisimmät sanastoon sopivat palat ja muuttaa ne numeroiksi. Malli näkee vain numerot.
Sanaston koko lyödään lukkoon ennen opetusta. Se on kompromissi: iso sanasto pilkkoo tekstin harvempiin paloihin mutta kasvattaa mallin uloskäyntikerrosta, koska jokaiselle sanaston tokenille lasketaan oma todennäköisyys. Pieni sanasto tekee päinvastoin. Kun sanasto on kerran valittu, se on osa mallia eikä sitä voi vaihtaa jälkikäteen.
Tokenisaattori ei tunne kielioppia. Se ei tiedä, että "ssa" on inessiivin pääte tai että "kokoushuone" koostuu kahdesta sanasta. Se tuntee vain sen, mitkä merkkijonot esiintyivät yhdessä usein siinä aineistossa, josta sanasto muodostettiin.
Miksi pilkkomissäännöt opitaan aineistosta
Sanastoa ei kirjoiteta käsin. Tavallisin menetelmä lähtee liikkeelle yksittäisistä merkeistä ja tavuista, laskee mitkä vierekkäiset parit esiintyvät aineistossa useimmin ja yhdistää ne uudeksi yksiköksi. Sitten se toistaa saman uudelleen, kunnes sanasto on täynnä. Lopputulos on lista, jossa yleisimmät merkkijonot ovat kokonaisina ja harvinaiset joudutaan kokoamaan paloista.
Ratkaiseva seikka on, mistä aineistosta tuo laskenta tehdään. Verkosta kerätyssä tekstimassassa englanti on ylivoimaisesti suurin kieli, ja suomi on pieni vähemmistö. Aineiston koostumus määrää siis suoraan sen, minkä kielten sanat mahtuvat sanastoon kokonaisina. Sama ilmiö näkyy laajemminkin siinä, mistä tekoäly on opetettu: englannin painotus ei ole kenenkään valinta suomea vastaan vaan aineiston jakauman seuraus.
Tästä syystä tavallinen englannin sana on usein tasan yksi token, kun taas suomen sanat joudutaan kokoamaan useasta palasta. Ero ei ole tasainen. Yleiset suomen perusmuodot kuten "talo" tai "auto" ovat todennäköisesti sanastossa. Harvinaiset taivutusmuodot ja pitkät yhdyssanat eivät ole.
Vielä yksi kerros: monet tokenisaattorit toimivat tavutasolla. Silloin merkit esitetään ensin UTF-8-koodauksena, jossa ä ja ö vievät kaksi tavua yhden sijasta. Jos ääkkösellinen merkkijono ei satu olemaan sanastossa, se hajoaa tavuiksi eikä kirjaimiksi. Tavujen ja merkkien ero on avattu tarkemmin artikkelissa tavut, megatavut ja gigatavut.
Taivutus: sama sana kymmenessä eri asussa
Suomen kieliopissa erotetaan tavallisimman jaon mukaan viisitoista sijamuotoa. Niiden päälle tulevat omistusliitteet ja liitepartikkelit. Yhdestä sanavartalosta syntyy siis suuri joukko eri kirjoitusasuja, joista kukin on aineistossa harvinaisempi kuin vartalo yksinään.
Englannissa sama merkitys ilmaistaan usein erillisillä lyhyillä sanoilla, jotka kaikki ovat aineiston yleisimpiä ja siten omia tokeneitaan. Suomi pakkaa saman tiedon yhteen sanaan, joka on aineistossa harvinainen ja hajoaa siksi paloiksi.
Alla oleva taulukko on havainnollistava esimerkki, ei minkään tietyn mallin tuloste. Eri malleilla rajat menevät eri kohtiin.
| Suomen sana | Mahdollinen pilkkoutuminen | Englannin vastine |
|---|---|---|
| talo | talo | house |
| talossa | talo + ssa | in the house |
| taloissammekin | talo + i + ssa + mme + kin | in our houses too |
| kokoushuoneessa | kokous + huone + essa | in the meeting room |
| ajanvarausjärjestelmä | ajan + varaus + järjes + telmä | booking system |
Huomaa viimeinen rivi. Pilkkoutuminen ei noudata sanarajoja eikä tavurajoja, koska tokenisaattori seuraa esiintymistiheyttä eikä kielioppia. Siksi yhdyssana voi katketa keskeltä osasanaa, ja mallin näkökulmasta jälkimmäinen pala on merkityksetön kirjainjono.
Yhdyssanat ja pitkät erikoistermit
Suomessa yhdyssana kirjoitetaan yhteen. Työelämän ja hallinnon kieli tuottaa niitä jatkuvasti: asiakaspalvelujärjestelmä, kiinteistönhoitosopimus, henkilötietojen käsittelytoimi. Englannissa vastaava ilmaus on tyypillisesti useampi erillinen sana, joista jokainen on aineistossa yleinen.
Kaksi seurausta kannattaa pitää mielessä. Ensinnäkin pitkä suomalainen erikoistermi vie enemmän tokeneita kuin sen englanninkielinen vastine, vaikka se olisi lyhyempi merkkeinä. Toiseksi harvinaisen yhdyssanan sisäinen rakenne on mallille vaikeammin havaittavissa kuin voisi olettaa, koska osasanat eivät välttämättä erotu tokenirajoina.
Erisnimet ja lyhenteet käyttäytyvät samoin. Suomalainen paikannimi tai viranomaisen nimi, joka esiintyy aineistossa harvoin, hajoaa moneksi palaseksi ja on siten mallille "kalliimpi" ja vaikeampi kuin tuttu kansainvälinen nimi.
Sama koskee muutakin kuin sanoja. Numerot, päivämäärät, viitenumerot ja tunnisteet pilkkoutuvat omien sääntöjensä mukaan, ja pitkä numerosarja hajoaa yleensä useaksi tokeniksi tavalla, joka ei noudata numeron rakennetta. Siksi mallin on helpompi toistaa numero oikein kuin muokata sitä, ja siksi pitkien tunnisteiden kopiointi kannattaa aina tarkistaa itse.
Mitä tämä maksaa ja miten se näkyy nopeudessa
Kolme asiaa mitataan tokeneina eikä sanoina:
- Hinta. Rajapintakäytössä lasku muodostuu syötteen ja vastauksen tokeneista. Kuukausimaksullisessa kuluttajapalvelussa sama näkyy kiintiöinä ja käyttörajoina. Hinnoittelun rakenne on avattu erikseen artikkelissa tekoälypalvelun hinnoittelu.
- Nopeus. Vastaus tuotetaan token kerrallaan. Jos sama sisältö vaatii suomeksi enemmän tokeneita, sen kirjoittamiseen menee myös enemmän aikaa.
- Kapasiteetti. Kaikki mitä malli näkee kerralla, mahtuu konteksti-ikkunaan, joka mitataan tokeneina. Suomenkielinen aineisto täyttää sen nopeammin kuin sama aineisto englanniksi.
Yksi kohta jää usein huomaamatta: sama ilmiö toistuu vastauksen puolella. Malli tuottaa vastauksensa tokeneina, ja useissa hinnastoissa vastauksen tokenit ovat syötettä kalliimpia. Pitkä suomenkielinen vastaus painaa siis laskussa enemmän kuin yhtä pitkä suomenkielinen kysymys. Jos pyydät mallilta tiiviin vastauksen, säästät kahdesti: lyhyempi vastaus maksaa vähemmän ja jättää enemmän tilaa keskustelun jatkolle.
Kuinka suuri ero on? Tarkkaa yleispätevää lukua ei ole, koska suhde riippuu mallin sanastosta ja tekstin luonteesta. Uudempien mallien sanastot ovat kasvaneet ja niissä on enemmän muiden kielten kuin englannin merkkijonoja, joten ero on kaventunut. Suuruusluokka on silti se, että suomi vie samasta asiasta selvästi enemmän tokeneita kuin englanti, ja hallinnollisessa tai teknisessä tekstissä ero on suurempi kuin arkisessa puheessa. Jos luku on sinulle tärkeä, mittaa se itse: monet palvelut näyttävät käytetyn tokenimäärän tai tarjoavat laskurin, ja vertailu omalla tekstilläsi kertoo enemmän kuin mikään keskiarvo.
Näkyykö tämä vastausten laadussa
Osittain, mutta ei siellä missä sitä yleensä epäillään. Sujuvuus on hyvä eikä johdu tokenisoinnista, vaan siitä kuinka paljon suomea oli opetusaineistossa. Tokenisointi selittää tarkemmin rajatun joukon ongelmia:
- Sanan sisäiset tehtävät. Kirjainten laskeminen, tavutus, riimittely, anagrammit ja kirjain kerrallaan tehtävät muokkaukset ovat vaikeita, koska malli ei näe kirjaimia vaan paloja. Suomen pitkissä sanoissa vaikeus korostuu.
- Katkeavat harvinaiset sanat. Erikoistermi tai erisnimi voi vääntyä lähelle osuvaksi mutta vääräksi, kun malli kokoaa sen paloista.
- Taivutuksen sekoittuminen. Virheet keskittyvät harvinaisiin muotoihin ja pitkiin yhdyssanoihin, eivät perusmuotoihin.
Sen sijaan asiavirheet, keksityt lähteet ja väärät päivämäärät eivät johdu tokenisoinnista lainkaan. Ne ovat eri ilmiö, ja niistä kerrotaan artikkelissa miksi tekoäly keksii asioita. Kannattaa siis olla vetämättä liian pitkälle meneviä johtopäätöksiä: token on tehokkuuskysymys ensin ja laatukysymys vasta reunatapauksissa.
Milloin kannattaa kysyä englanniksi
Kielen vaihtaminen on todellinen keino, mutta se ei ole ilmainen. Käytä sitä harkiten näin:
- Tunnista tilanne, jossa määrä ratkaisee. Pitkä liite, iso aineisto tai monivaiheinen työ, jossa sama teksti kulkee mukana joka vuorolla. Tässä tokenisäästö on suurin.
- Kirjoita ohje englanniksi ja pyydä vastaus suomeksi. Ohjeen sisältö ei muutu, ja pyyntö "vastaa suomeksi" toimii luotettavasti. Kehotteen rakenteesta on oma artikkelinsa hyvän promptin rakenne.
- Jätä lähdeaineisto sille kielelle, jolla se on. Älä käännä suomalaista sopimusta tai viranomaisohjetta englanniksi vain säästääksesi tokeneita. Käännös tuo oman virheensä, ja se virhe kulkee vastaukseen asti.
- Pysy suomessa, kun kieli itse on kohde. Tekstin muokkaus, sävy, oikeinkirjoitus, taivutus ja suomalaiset vakiintuneet termit kannattaa käsitellä suomeksi.
- Tarkista lopputulos suomeksi. Jos vastaus syntyi englanninkielisestä ohjeesta, lue se läpi suomalaisin silmin: erityisesti termit, virastojen nimet ja lakiviittaukset.
Rehellisyyden nimissä: englanniksi kysyminen ei automaattisesti paranna vastauksen laatua. Ero riippuu tehtävästä ja mallista, ja monissa arkisissa tehtävissä sitä ei huomaa lainkaan. Jos haluat tietää miten hyvin jokin palvelu pärjää suomeksi, se kannattaa testata itse, ja siihen on oma ohjeensa artikkelissa mikä tekoäly osaa suomea parhaiten.
Mitä tästä kannattaa jäädä käteen
Käy nämä läpi, kun mietit suomen ja englannin välillä:
- Jos työskentelet lyhyillä kysymyksillä, älä optimoi mitään. Ero on olemassa mutta merkityksetön.
- Jos syötät pitkiä liitteitä, laske niiden koko tokeneina eikä sivuina. Sivumäärä ei kerro kapasiteetista mitään.
- Jos keskustelu venyy, aloita uusi ja liitä mukaan vain oleellinen. Vanha historia kulkee mukana ja maksaa joka vuorolla.
- Jos pyydät sanan sisäisiä temppuja, kuten kirjainten laskemista, älä luota tulokseen. Tarkista se itse tai pyydä mallilta työkalua, joka laskee sen ohjelmallisesti.
- Jos vaihdat kieltä, vaihda vain ohjeen kieli. Aineisto ja vastaus pysyvät suomeksi silloin, kun aihe on suomalainen.
Usein kysytyt kysymykset
Miksi sama teksti maksaa suomeksi enemmän kuin englanniksi?
Koska hinta lasketaan tokeneina ja suomenkielinen teksti pilkkoutuu useampaan tokeniin. Tokenisaattorin sanasto on muodostettu aineistosta, jossa englanti on yleisin kieli, joten englannin sanat mahtuvat siihen kokonaisina ja suomen taivutusmuodot eivät. Ero näkyy sekä laskussa että siinä, kuinka nopeasti vastaus valmistuu.
Kannattaako minun kirjoittaa kehotteet englanniksi?
Vain silloin kun käsittelet suuria tekstimääriä tai törmäät kapasiteetin rajoihin. Kirjoita silloin ohje englanniksi ja pyydä vastaus suomeksi. Jos aihe on suomalainen laki, sopimus tai viranomaisasia, pysy suomessa, koska käännös lisää virheen mahdollisuuden.
Miksi tekoäly ei osaa laskea sanan kirjaimia oikein?
Malli ei näe kirjaimia vaan tokeneita eli merkkijonon paloja. Kirjainten laskeminen vaatisi tiedon, joka on hävinnyt jo ennen kuin teksti tuli malliin. Suomen pitkissä sanoissa virhe on todennäköisempi, koska ne hajoavat useaan palaan.
Onko tokenisointi syy siihen, että tekoäly keksii asioita?
Ei. Keksityt väitteet johtuvat siitä, että malli tuottaa todennäköistä tekstiä eikä tarkista totuutta. Tokenisointi selittää sanatason kömmähdyksiä, kuten vääntyneitä erikoistermejä, mutta ei asiavirheitä.
Voiko tokenisaattoria vaihtaa parempaan suomen kannalta?
Ei käyttäjänä. Sanasto lyödään lukkoon ennen mallin opetusta ja on kiinteä osa valmista mallia. Mallien kehittäjät voivat valita paremmin monikielisen sanaston seuraavaan versioon, ja tämä ero on kaventunut mallisukupolvien myötä.
Miten näen, kuinka monta tokenia tekstini vie?
Monet palvelut näyttävät käytetyn tokenimäärän keskustelun tai laskutuksen yhteydessä, ja mallintarjoajilla on siihen omia laskureita. Tarkista luku sillä mallilla, jota oikeasti käytät, koska tulos vaihtelee mallista toiseen.
Vaikuttaako tokenimäärä siihen, kuinka pitkän tekstin voin liittää mukaan?
Kyllä, koska konteksti-ikkuna mitataan tokeneina. Suomenkielinen dokumentti täyttää ikkunan nopeammin kuin saman mittainen englanninkielinen, joten samaan rajaan mahtuu vähemmän sisältöä.