Vad AI-modellen får och inte får skriva
Högst upp på en offentlig statistiksida här kan det finnas två eller tre meningar som beskriver vad räknaren gjorde den här månaden. De skrivs av en språkmodell. Modellen hittar inte på något, och upplägget som gör det sant är värt att beskriva, eftersom det självklara sättet att bygga funktionen saknar den egenskapen.
Servern kör SQL-frågan, avgör vilken siffra som är värd att nämna och skriver prompten. Modellen gör om ett faktum till en mening på det begärda språket. Sedan läser servern tillbaka svaret och kastar det om någon siffra i det inte kom från prompten.
Modellens enda frihet är alltså formuleringen. Den väljer inte vad som är intressant, den räknar inte, den avrundar inte. Det den bidrar med är det som mallar inte klarar: elva språk som läses som språk.
Tre kontroller, och felet som var och en är till för
Ingen av dem skrevs av ren försiktighet. Var och en finns för att något bestämt gick fel den 17 augusti 2026. En liten modell fick två fakta om en räknare — starkaste veckodag måndag med 46 %, och 76 % av besökarna från Polen, fördelat på 5 länder — och producerade en mening som sa att onsdag var starkast och att 46 % av besökarna kom från Polen.
Två olika fel i en mening, och inget av dem är ett påhittat tal.
- Varje siffra måste finnas i prompten. Det fångar påhittade tal. Det har en följd som är lätt att göra fel på senare: instruktionsdelen av prompten innehåller inga siffror alls. Den säger ”en eller två meningar”, aldrig ”1-2”, eftersom 1 och 2 annars skulle bli tillåtna tal i svaret.
- En prompt per faktum. Det fångar förväxlade tal. 46 ovan var verkligt — det hörde bara till det andra faktumet, och en kontroll av mängden tal kan inte se det. Om modellen bara någonsin ser ett faktum finns det inget att förväxla.
- Namn kontrolleras också. Det fångar att ”måndag” blir ”onsdag”. Namnet står i faktumet på målspråket, det måste förekomma ordagrant i svaret, och dess syskon får inte göra det.
Vad de inte fångar
Det hör hemma i samma andetag som resten. Två saker slinker igenom.
En mening som säger något felaktigt utan att använda siffror — ”de flesta besökarna” när det var 46 % — fångas inte av någon av de tre. Upplägget tar hand om det i stället: bedömningen ligger redan i det faktum som servern valde ut, inte i modellens frihet.
Och en mening som handlar om ett annat ämne än sitt faktum slinker igenom, så länge siffrorna stämmer. Mot det finns bara en modell som följer instruktioner. För egenskaper som har ett namn — veckodag, enhet, robot, sida — täcker den tredje kontrollen även detta.
En verifiering som bara fångar påhittade tal hade släppt igenom meningen ovan oförändrad. Det var verkliga tal på fel ställen, en typ av fel som bara syns i utdata, aldrig i idén.