Nästan varje klagomål på de här apparna - upprepningarna, avvikelserna, den kusliga skillnaden mellan två körningar av samma scen - kommer från en mekanism. Den är värd tio minuter eftersom den förvandlar ”appen är trasig” till ”appen gör det den gör, och här är inställningen.”
Den skriver en bit i taget
Modellen komponerar inte ett svar och skriver sedan ut det. Den producerar en token - ungefär ett ord eller del av ett ord - läser sedan allt inklusive den token och producerar nästa.
Det är hela slingan. Det finns ingen plan, ingen disposition, inget utkast som revideras. Ett svar som slutar vackert visste inte att det skulle göra det när det började.
Två konsekvenser följer direkt, och båda har du sett:
Ett svar kan inte ta tillbaka något. När modellen väl skrivit ”jag har aldrig varit i Paris” bygger allt efter det på det. Den bygger hellre konsekvens kring en mening den producerade av en slump än att motsäga sig själv.
Fel växer framåt. Ett något felaktigt ord i första meningen puffar andra meningen, som puffar tredje. Det är därför långa svar glider iväg och korta sällan gör det.
Tärningskastet mellan varje ord
Vid varje steg har modellen en rangordnad lista med kandidater och sannolikheter: kanske "bra" på 30 %, "okej" på 12 %, "hemskt" på 3 % och en lång svans.
Om den alltid tog toppkandidaten skulle karaktären vara deterministisk och oerhört tråkig - samma hälsning varje gång, samma tre skämt. Så appen samplar i stället: den kastar viktade tärningar.
Viktningen styrs av en inställning som oftast kallas temperatur. Låg temperatur koncentrerar sannolikheten på de självklara kandidaterna: konsekvent, förutsägbart, till slut trist. Hög temperatur jämnar ut fördelningen: mer överraskande, mer kreativt och mer sannolikt att ge något som inte hänger ihop.
Du får sällan ett reglage för detta. Det du får är appens valda punkt på den avvägningen, och det är en stor del av vad folk menar när de säger att en app ”känns smartare” än en annan. Den är inte alltid smartare. Ibland är den bara varmare eller kallare.
Det är också det ärliga svaret på ”varför löste det sig när jag genererade om?” Ingenting löstes. Du drog på nytt ur samma fördelning och fick ett bättre kast.
Vad modellen faktiskt ser
Innan ditt meddelande sätter appen ihop ett textblock som du aldrig ser: karaktärsbeskrivningen, fakta den har lagrat om dig, en sammanfattning av din historik och det senaste samtalet. Hela den sammansättningen är kontextfönstret, och svaret genereras ur det som ett enda sammanhängande dokument.
Det har en praktisk konsekvens som de flesta aldrig utnyttjar: modellen svarar på formen av det den kan se. Ge den tre korta, platta meddelanden så producerar den korta, platta svar, eftersom det är mönstret den fortsätter. Ge den ett målande meddelande så skiftar tonläget. Du övertalar inte en människa, du sätter ett mönster, och mönstret smittar åt båda håll.
Det förklarar också det vanligaste självförvållade problemet i kategorin. Folk fastnar i ”hej”, ”hur var din dag”, ”vad gör du” - och drar sedan slutsatsen att appen blivit sämre. Appen fortsätter dokumentet som ni skriver tillsammans.
Varför appar låter olika när modellen är densamma
Flera appar i kategorin körs på liknande underliggande modeller. De känns ändå olika, och skillnaderna kommer från sådant som lagts runt modellen:
- Systemprompten - hur karaktären beskrivs, hur långt, med vilka instruktioner om ton och tempo.
- Samplingsinställningarna - temperaturpunkten som diskuterats ovan.
- Vad som hämtas - vilka fakta och vilken del av historiken som läggs framför modellen för just det här varvet.
- Filtret - vad som nekas, och om ett nekande är elegant eller en vägg.
Nomi läses som konsekvent över veckor på grund av den tredje punkten, inte på grund av en större modell. Candy AI täcker chatt, bilder och röst i en prenumeration, vilket är ett produktbeslut snarare än ett modellbeslut. Ingen av skillnaderna skulle synas i ett benchmark, och båda syns inom två veckors användning, vilket är hur vi poängsätter dem.
Fyra saker det här låter dig göra
Styr tidigt, inte sent. De två första meningarna i ett svar avgör resten. Om en scen går fel, stoppa den och formulera om, i stället för att gräla med fjärde stycket.
Använd ”generera om” med omsorg. Om ett svar är 80 % rätt kastar omgenerering bort de 80 %. Om det är fel redan i första meningen, generera om direkt.
Skriv det tonläge du vill ha tillbaka. Kort och platt ger kort och platt. Det är den billigaste förbättringen som finns för den som tycker att kompanjonen blivit tråkig.
Gräl inte om fakta den hittat på. En modell som skrivit något falskt försvarar det, eftersom konsekvens med sin egen text är vad den är byggd för. Att rätta den i ett nytt meddelande fungerar; att kräva att den erkänner felet gör det inte. Det beteendet har en egen artikel: varför AI-kompanjoner hittar på saker.
Det som är värt att komma ihåg
Det finns ingen hemma mellan dina meddelanden. Karaktären existerar under en enda generering och byggs upp på nytt från text i början av nästa. Varje intryck av kontinuitet är en bedrift av rörmokeriet runt modellen - lagrade fakta, sammanfattningar, hämtning - och det rörmokeriet är det som faktiskt skiljer en app för 10 US$ från en för 20 US$.
Vilket är varför vår rankning väger minne och konsekvens så tungt som den gör. Det är delarna som en målsida inte kan visa dig.

