Folk skriver navn, telefonnummer, e-post og ordrenummer i fritekstfelt, og noen skriver om helsa si. Navn på egne ansatte dukker opp også, i ros og i klager. Datatilsynet bruker ansattnummer som eksempel på en personopplysning, fordi arbeidsgiveren kan koble det til en person. Et ordrenummer bedriften kan koble til en kunde, er i samme situasjon.
Ta det ut før du limer inn, og bruk bare et verktøy bedriften har godkjent. Er du usikker på om undersøkelsen dekker at svarene behandles på denne måten, spør personvernombudet eller den som eier undersøkelsen. Skriptet lenger ned finner tall og e-post, men ikke alle navn. Dette er ikke juridisk rådgivning.
Å gjøre fritekst om til tall med AI er fire jobber, og bare to av dem passer for AI-en. Den foreslår kategorier og merker hver rad. Du teller i regnearket, og du kontrollerer merkingen med en stikkprøve.
Legger noen fram tall fra fritekst for deg? Da er det tre spørsmål som avgjør om du kan bruke dem:
Kundeundersøkelsen har en fritekstkolonne med 500 svar, og ingen har lest dem, fordi det tar en dag. Det er akkurat den typen jobb AI er god til: lese mye tekst og sortere den. Men én del av jobben er den dårlig til, og det er den delen som blir tallet du legger fram.
Siden hører til serien «For styret og ledelsen». Den bruker en konstruert undersøkelse fra en nettbutikk som ikke finnes, med 500 oppdiktede svar.
En språkmodell lager tekst. Den teller ikke rader slik et regneark gjør. Spør du hvor mange av de 500 som handler om levering, får du et tall som ser presist ut, men som ikke kommer av at hver rad er sjekket. Hou, Zorzi og Testolin testet fem modeller i 2025. Modellene kunne bruke en telleprosedyre når de ble bedt om det, men ingen gjorde det av seg selv når de bare ble spurt om antallet. Hasani og kolleger skriver i 2026 at nøyaktigheten faller når antallet blir stort.
Unntaket er når verktøyet kjører kode på fila og viser deg koden. Mange verktøy kan det i dag, og da er det koden som teller, ikke modellen. Les koden, og sjekk at summen blir 500. Ser du ingen kode, er tallet skrevet, ikke telt.
Derfor deler du jobben. AI-en leser hver kommentar og setter én kategori på den. Regnearket teller. Det går gjennom alle radene hver gang, og gir samme svar neste gang.
Her er 500 kommentarer. Hva handler de om, og hvor mange av hver?
Rundt 180 av kommentarene, omtrent 36 prosent, handler om levering. Deretter kommer pris med rundt 90 …
Merk hver kommentar med én kategori. Svar bare med id;kategori.
1;Levering
2;Pris
3;Ros
4;Levering
…
I den konstruerte fila gir AI-merkingen 146 kommentarer om levering når regnearket teller. Tallet til venstre er laget for å vise hvordan et utelt svar kan se ut. Det kan være nær eller langt unna. Du vet ikke hvilket før du har telt.
Gi hver rad et id-nummer i regnearket, så du kan koble svarene tilbake. Ta ut navn, telefonnummer, e-post og ordrenummer. Søk etter tall og @ i kolonnen, og les etter navn. Ingen søk finner alle navn.
Under er et utvalg kommentarer fra en kundeundersøkelse. Foreslå 5 til 7 kategorier som dekker dem. For hver kategori: et kort navn, én setning som definerer den, og to eksempler fra utvalget. Ta med «Annet». Ikke tell noe. Kommentarene: [50 til 100 tilfeldige rader, uten personopplysninger]
Les kategoriene og rett dem. Det er du som vet hva bedriften trenger å vite. Slå sammen det som er det samme, og del det som er for stort. Definisjonen er viktigere enn navnet, for det er den som avgjør hvor en kommentar som handler om to ting havner.
Merk hver kommentar under med nøyaktig én kategori fra listen. Kategoriene: [den rettede listen, med definisjoner] Handler en kommentar om flere ting, velg den viktigste. Passer ingen, bruk «Annet». Svar bare med id;kategori, én linje per kommentar, i samme rekkefølge. Ikke tell og ikke oppsummer. Kommentarene, som id;kommentar: [100 rader om gangen]
Sjekk at det kom like mange linjer tilbake som du sendte. En rad som forsvinner på veien uten at noen sier fra, er den feilen som er vanskeligst å oppdage etterpå.
Lim id og kategori inn i en ny kolonne ved siden av kommentarene. Tell med en pivottabell, eller med =ANTALL.HVIS(C:C;"Levering") i norsk Excel (COUNTIF på engelsk). Sjekk at summen blir 500. Blir den ikke det, mangler det rader.
Tellingen er riktig. Merkingen er det ikke nødvendigvis. Trekk 30 tilfeldige rader, for eksempel med =TILFELDIG() i en hjelpekolonne som du sorterer på, og les dem selv. Er mange merket feil, retter du definisjonene og merker på nytt. 30 er et praktisk tall, ikke en regel.
I den konstruerte fila er 60 av 500 rader merket feil med vilje, 12 prosent. Stikkprøven på 30 fant 6, altså 20 prosent. Det er ikke det samme tallet, og det skal du ikke vente heller. 6 av 30 er forenlig med en feilrate et sted mellom omtrent 8 og 39 prosent (et vanlig 95 prosent konfidensintervall). 12 prosent ligger godt innenfor. 30 rader sier om merkingen er brukbar eller dårlig, ikke hvor god den er. Tre av de seks var kommentarer om pris som var merket som noe annet. Det er et hint om at definisjonen av pris må skrives tydeligere.
Og her er grunnen til at stikkprøven betyr noe. Regnearket teller 146 kommentarer om levering, og det er riktig telt. Men fasiten i den konstruerte fila er 158. Feilen ligger i merkingen, ikke i tellingen, og bare en som leser kan finne den.
Tre filer, bare standardbiblioteket. lag_data.py lager den konstruerte fila, med feil i merkingen og noen personopplysninger lagt inn med vilje. tell.py teller, ser etter personopplysninger og trekker stikkprøven. kommentarer.csv er fila, med semikolon som skilletegn så den åpnes riktig i norsk Excel. Merkingen i fila er simulert med feil lagt inn med vilje, ikke kjørt gjennom en modell.
Lagrer du din egen fil fra norsk Excel, velg «CSV UTF-8». Vanlig «CSV (semikolondelt)» lagres i en eldre tegnkoding, Windows-1252. Den leser skriptet også, og sier fra når det skjer. Har fila komma som skilletegn eller andre kolonnenavn, stopper skriptet med en melding om det.
Leste 500 rader fra kommentarer.csv
Rader uten kategori: 0
Doble id-er: 0
Kategori Antall Andel
Levering 146 29,2 %
Nettsiden 88 17,6 %
Pris 85 17,0 %
Ros 70 14,0 %
Retur 66 13,2 %
Annet 45 9,0 %
Sum 500 100,0 %
Mulige personopplysninger (telefon, e-post, ordrenummer): 4 rader
id 150: e-post
id 251: ordrenummer
id 469: telefon
id 474: ordrenummer
Mulige navn (stor forbokstav midt i setningen): 3 treff
id 12: Hanne
id 207: Ali
id 341: Per
Et navn først i en setning blir ikke funnet. Les selv før du limer inn.
Stikkprøve på 30 rader (frø 2026), les disse selv:
id 2, 53, 61, 115, 123, 164, 216, 226, 252, 258, 263, 281, 285, 294, 301, 308, 315, 319, 332, 375, 385, 394, 396, 398, 402, 432, 441, 453, 459, 488
Bare fordi dataene er konstruerte, sammenlignet med fasit:
Stikkprøven: 6 av 30 merket feil
id 294: merket Ros, fasit Retur
id 301: merket Annet, fasit Pris
id 375: merket Retur, fasit Pris
id 394: merket Nettsiden, fasit Pris
id 441: merket Levering, fasit Ros
id 459: merket Ros, fasit Nettsiden
Hele fila: 60 av 500 merket feil (12,0 %)
Kategori Merket Fasit
Levering 146 158
Nettsiden 88 83
Pris 85 87
Ros 70 71
Retur 66 60
Annet 45 41
Kolonnen «fasit» finnes bare fordi dataene er konstruerte. I en ekte undersøkelse er det du som er fasiten. Skriptet fant alle fire radene med telefon, e-post eller ordrenummer, i det formatet den konstruerte fila bruker, og tre av fire navn. Et telefonnummer skrevet som 00 00 00 00 finner det ikke. Navnet det bommet på, sto først i en setning. Ingen av de fire navneradene kom med i stikkprøven. Derfor står vask før liming som eget steg, og ikke som noe stikkprøven tar seg av.
Si hvordan de er laget. «Merket av AI, telt i regneark, stikkprøve på 30 rader med 6 feil» er en bedre setning i en presentasjon enn et tall uten forklaring, og den tåler et kritisk spørsmål fra et styremedlem. Ta med to eller tre ordrette sitater per kategori. De sier mer enn søylene.
Skal dette skje hver måned, med data rett fra systemene, er det et annet prosjekt. Se Bedriftsdata med AI. Hva du kan lime inn hvor, står i Hva kan du lime inn, og en regel for hele bedriften finnes i AI-reglene dine på én side. Hvorfor modellen ser tekst som biter og ikke som rader, forklarer Token.
Oppdatert oktober 2026. Undersøkelsen, nettbutikken og alle svarene er konstruerte. Telefonnumrene er 000 00 000 med vilje. Utskriften fra tell.py er faktisk, kjørt med Python 3.13 9. oktober 2026. Chatsvaret med «rundt 180» er en illustrasjon, ikke en kjørt samtale. Hva en personopplysning er, og ansattnummer som eksempel: Datatilsynet, lest 9. oktober 2026. Telling i språkmodeller: Hou, Zorzi og Testolin, «Sequential Enumeration in Large Language Models» (arXiv, desember 2025), og Hasani m.fl., «Mechanistic Interpretability of Large-Scale Counting in LLMs through a System-2 Strategy» (arXiv, januar 2026). Begge ligger på arXiv, og bare sammendragene er lest. Dette er ikke juridisk rådgivning.