Hva er store språkmodeller?

Du har kanskje brukt ChatGPT, Copilot eller Gemini. Du har skrevet et spørsmål og fått et svar tilbake – noen ganger overraskende godt, andre ganger litt på siden. Men hva er egentlig en språkmodell? Og hvordan kan en datamaskin, som i bunn og grunn bare jobber med tall, skrive tekst som virker menneskelig?

I denne artikkelen gir vi en enkel innføring i hva store språkmodeller er, hvordan de lærer, og hva som gjør dem nyttige.

Kilde: Colourbox

Av Erling Midtgard, Osloskolen
Publisert 30. apr. 2026

Hva kan språkmodeller brukes til?

Språkmodeller brukes allerede på mange områder i samfunnet og i skolen. Her er noen eksempler:

  • Oversettelse – tjenester som Google Translate bruker språkmodeller til å oversette mellom språk.
  • Oppsummering – du kan be en språkmodell om å oppsummere en lang tekst på noen få setninger.
  • Samtale og spørsmål – prateroboter som ChatGPT lar deg stille spørsmål og få svar i naturlig språk.
  • Tekstskriving – modellene kan hjelpe med å lage utkast til tekster, e-poster eller undervisningsopplegg.
  • Kodeskriving – språkmodeller kan også skrive og forklare kode.

Felles for alle disse oppgavene er at språkmodellen genererer tekst – ord for ord – basert på mønstre den har lært fra store mengder tekst. Men hvordan lærer den egentlig disse mønstrene?

Språkmodeller er en type nevrale nettverk

Mange av oss har i dag blitt kjent med store språkmodeller gjennom tjenester som ChatGPT og Copilot. Gjennom disse tjenestene fører vi samtaler med store språkmodeller. En viktig forutsetning for å få laget disse store språkmodellene var at det ble mulig å trene opp nevrale nettverk. Hva er så det?

Et nevralt nettverk er en modell for maskinlæring som er inspirert av hvordan hjernen fungerer – og det høres vanskeligere ut enn det er. Vi bruker ordet nettverk fordi modellen består av flere lag. Hvert av disse lagene består av flere noder. En node er en liten byggestein i nettverket som har en eller flere “vekter”. En vekt er rett og slett et tall som bestemmer hvor stor betydningen den aktuelle noden skal ha. Tenk på det som en volumknapp: noen forbindelser er skrudd høyt opp (høy vekt), andre er nesten lydløse (lav vekt). Når modellen lærer, justeres disse vektene gradvis slik at den blir bedre og bedre til å gjøre det den skal.

Nevrale nettverk er komplekse fordi de består av mange lag med vekter, men hver enkelt del av det nevrale nettverket er altså ganske enkelt. Hver node tar inn tall, ganger dem med vektene sine, og sender resultatet videre til neste lag. Det er litt som et stafettløp der stafettpinnen forandrer seg litt for hver veksling.

Hvordan trenes et nevralt nettverk?

Det er viktig å forstå noe om hvordan et nevralt nettverk trenes opp, fordi det forklarer både hva språkmodellene kan og hva de ikke kan. Nettverket lærer av eksempler – det prøver, feiler, og justerer seg.

For å trene opp et nettverk trenger vi mye data, helst data med en eller annen form for merkelapp eller fasit som vi kan lære opp nettverket å gjette eller predikere. Et eksempel kan være å trene opp et nettverk til å gjenkjenne om filmanmeldelser er positive, negative eller nøytrale. Dette kaller vi en klassifiseringsoppgave fordi modellen har tre klasser – positiv, negativ, nøytral – som den må velge mellom. Modellen får kun se filmanmeldelsen og må gjette så godt den kan hvilken klasse den tilhører. Så får den se fasit og dersom den gjetter feil, endres vektene i nettverket sånn at den skal gjette litt bedre neste gang. Målet er at modellen skal bli så god at den kan klassifisere nye filmanmeldelser som ikke har fasit.

Denne typen trening av modeller – der dataene har en merkelapp eller fasit – kalles for veiledet læring.

Når man har et stort datasett med treningsdata er det vanlig å «spare» på 10% av disse – altså at modellen ikke får se dem før helt til slutt. Disse kaller vi «testdata» og de blir brukt til å evaluere hvor god modellen har blitt og hvor god den vil være på data den ikke har blitt trent på. Dette er også måten forskere sammenligner ulike språkmodeller med hverandre – ved å teste dem på de samme testdataene og se hvilken som gjør det best.

Matematiske operasjoner i et nevralt nettverk

Det er i utgangspunktet tre typer matematiske operasjoner som skjer i et slikt nettverk. Den ene er at man ganger hvert element i en liste av inndata med hver av vektene i nettverket. Slike lister kalles også vektorer. Dette skjer internt i hvert lag og resultatet eller output fra det første laget blir input til neste lag.

Den andre typen matematisk operasjon i slike nettverk kalles en «aktiveringsfunksjon». Dette er matematiske operasjoner som «presser sammen» tallene etter at de har blitt multiplisert for å unngå at de blir for små eller for store. Man har nesten alltid en aktiveringsfunksjon helt på slutten av et slikt nettverk som konverterer tallene til sannsynligheter, altså verdier mellom 0 og 1.

Den tredje typen matematiske operasjoner er formler for oppdatering av vektene og denne er bare nødvendig når vi trener opp modellen – ikke når vi bruker den etter at den er ferdigtrent. For å kunne oppdatere vektene må vi regne ut forskjellen mellom hvor godt den gjettet og fasiten. Dette kalles gjerne «tapet» (loss) og måten vi regner det ut på kalles en tapsfunksjon.

Hva betyr parametre?

Vektene i modellen kalles også modellens parametere og er en vanlig måte å angi hvor stort nettverket er. Hvis man ser en språkmodell med et tall og en B etter seg står dette for hvor mange milliarder parametere modellen har. For eksempel betyr «11B» at modellen har 11 milliarder justerbare tall. Det som i skrivende stund er den beste norske språkmodellen: «Normistral-11B-thinking» har 11 milliarder parametere. De største kommersielle modellene har flere hundre og kanskje opp mot 1000 milliarder parametere.

Jo flere parametere en modell har, desto mer nyansert kan den være – men den krever også mer datakraft å trene og kjøre. Det er derfor de største modellene eies av store selskaper med tilgang til enorme mengder regnekraft.

Et annet mye brukt begrep er hyperparametere. Dette er tall vi kan stille inn når nettverket trenes opp. Eksempler er hvor mange ganger modellen får se treningsdataene, og hvor mye vektene skal justeres når modellen gjetter feil. Noen hyperparametere kan også justeres når modellen er ferdigtrent og brukes til å generere tekst – de vanligste er temperatur, top-k og top-p. Disse påvirker hvor «kreativ» eller forutsigbar modellen er.

Hvordan lærer en språkmodell?

Alle språkmodeller må trenes opp på en samling av tekster – et korpus. Denne prosessen kalles forhåndstrening (pre-training).

Det er ikke så effektivt å trene opp språkmodeller direkte på tekst. Vi trenger å dele den opp i mindre biter – såkalt «tokenisering». En «token» er en liten tekstbit, som oftest et kort ord eller en del av et ord. For eksempel kan ordet «systematikk» deles opp i «system» og «atikk». Språkmodellen jobber med slike orddeler heller enn hele ord. Nevrale nettverk trenger tall – ikke tekst – så i praksis lages det ei ordbok der hver orddel får et tall som en ID-kode. Det er lista med slike ID-koder som egentlig er input til modellen.

Språkmodellen lærer ved å gjette neste ord. Hvis vi for eksempel har setningen: «Alle katter liker fisk», må modellen gjette på «katter» gitt «Alle», «liker» gitt «Alle katter» og «fisk» gitt «Alle katter liker». Deretter oppdateres modellens vekter avhengig av hvor godt den gjettet. Når de største modellene trenes opp får de se mange millioner slike setninger og blir etter hvert veldig gode til å gjette neste orddel, men det er også det eneste de kan gjøre. Slike modeller kalles base-modeller.

Vi må gjøre noe mer for at de skal kunne bli nyttige som samtalepartnere. Det neste skrittet er instruksjonstrening av modellen. Her får den se mange par med spørsmål og svar, og i dette tilfellet bør det helst være spørsmål og svar som er skrevet av mennesker. Gitt spørsmålet må modellen gjette på hva som er det beste svaret. De første rundene i treningsprosessen vil modellen generere veldig dårlige svar, men etter hvert vil svarene bli bedre og bedre.

Så å si alle de store selskapene fortsetter å trene modellene på ulike måter. En vanlig måte å gjøre dette på er ved hjelp av en form for forsterkningslæring der modellens parametere oppdateres etter hvor godt mennesker liker svarene. Dersom ChatGPT eller Gemini gir deg to alternative svar og spør deg hvilket du likte best, deltar du antageligvis i en slik forsterkningslæring. Dette er sannsynligvis årsaken til at noen av de store språkmodellene kan oppfattes å være i overkant høflige – samt at de skryter av deg og sier at du var flink og smart også i tilfeller der du verken var flink eller smart.

Prateroboter ligger «på toppen» av alt dette. Den vanligste måten å interagere med prateroboter er å bruke nettsiden til selskapet som har laget dem. I tillegg har mange modeller ulike typer etiske filter, for eksempel kan du ikke spørre dem om oppskriften på en bombe.

Oppsummert går en språkmodell gjennom tre trinn: 

  1. forhåndstrening på store mengder tekst,
  2. instruksjonstrening med spørsmål og svar,
  3. forsterkningslæring basert på menneskelige tilbakemeldinger. 

Det er disse tre trinnene som gjør at modellen går fra å være en ren «ordgjetter» til å bli en nyttig samtalepartner.

Tokenisering og byte-pair encoding

Det som har vært mest effektivt har vist seg å være å dele teksten opp i biter som er litt mindre enn hele ord, eventuelt korte ord. Disse bitene kalles gjerne subword tokens som vi kan kalle «orddeler» på norsk. Noen steder blir det skrevet at teksten deles opp i «stavelser», men slike orddeler har ikke noe å gjøre med lingvistiske stavelser – de «regnes ut» basert på hvor ofte bokstaver står i nærheten av hverandre. Den vanligste metoden for dette kalles byte-pair encoding (BPE). BPE starter med enkeltbokstaver og slår gradvis sammen de bokstavparene som opptrer oftest i treningsdataene, til man har bygd opp et vokabular av orddeler.

Deler av denne artikkelen er redigert ved hjelp av KI-verktøyet Claude. Teksten er etterpå bearbeidet av FIKS og lest gjennom av forfatteren.

Kilde og videre lesing

Alammar, J. og Grootendorst, M. (2024). Hands-On Large Language Models, O'Reilly Media, Inc.: : https://www.oreilly.com/library/view/hands-on-large-language/9781098150952/ 

Publisert 30. apr. 2026 11:09 - Sist endret 10. juni 2026 14:53