KAPACITI.
Tillbaka till bloggen
Bygga14 mars 20267 min läsning

Kostnadsstyrning på LLM-anrop: vad vi lärde oss av en miljon tokens

I januari betalade en av våra kunder fyra gånger så mycket som budgeterat. Här är hur vi spårade vad som hände och vad vi gjorde för att det inte ska upprepas.

AG

Alexander Galldin

Kapaciti

I januari kom det ett oroligt mail från CFO hos en av våra kunder. Förra månadens AI-faktura var fyra gånger högre än den vi hade prognosticerat. Det var en smärtsam morgon för oss. Det var också en värdefull lektion om kostnadsstyrning som vi nu bygger in i alla produktionsystem.

Det vi missade

Agenten vi byggt åt kunden hanterade inkommande mail. Den läste, kategoriserade och föreslog svar. När en användare bytte mail-leverantör i mitten av månaden började deras IMAP-server skicka samma mail flera gånger om dagen. Vår agent läste samma mail om och om igen och fakturerade tokens varje gång.

Vi hade ingen idempotenskontroll. Vi hade ingen kostnadströskel som larmade. Vi hade ingen daglig kostnadssammanställning. Tre brister, en faktura.

Det vi gjorde direkt

Inom 48 timmar hade vi byggt in tre saker. Först en deduplikering på message-id-nivå så att samma mail bara läses en gång oavsett hur många gånger det dyker upp. Sedan en daglig kostnadströskel per kund där vi pausar agenten om något stiger ovanligt mycket. Sist en dashboard som visar kostnad per timme i realtid.

Inget av det var komplicerat att bygga. Det är teknik vi använder överallt nu. Det är dyrare att inte göra det.

Tre principer vi följer för all kostnadshantering

Den första är att aldrig stänga av kostnadsspårning, även för småskaliga system. Det är de små systemen som tenderar att smyga upp i pris. När du upptäcker det är det redan dyrt.

Den andra är att alltid dela in kostnaden per slutkund eller per process. Aggregerad kostnad döljer var pengarna går. Detaljerad spårning visar omedelbart vilka delar som är dyra och vilka som är billiga.

Den tredje är att designa retries med kostnad i åtanke. En naiv retry-loop som körs vid varje fel kan multiplicera kostnaden snabbt vid ett api-avbrott. Vi använder exponential backoff med tak och cirkuitbrytare som stänger av efter ett visst antal misslyckanden.

Modellvalet är ofta större än optimeringen

Innan du optimerar prompts eller cachar svar, fråga dig om du kör rätt modell för uppgiften. Många av våra kunder körde flaggskeppsmodeller på uppgifter där en mindre modell skulle prestera lika bra till en tiondel av priset.

Klassificering, extraktion, enkel formatering. Allt det går utmärkt på mindre modeller. Spara de stora för det som faktiskt kräver resonemang.

Det viktiga budskapet till ledningsgrupper

AI-kostnader är inte fasta. De drivs av användning och användning kan skena utan förvarning. Bygg in kostnadsstyrning från dag ett. Det är inte ett efterhandstillägg, det är en del av att leverera en produktionsmogen agent.

● Vill ni prata om det här?

Ta en kaffe med oss

Om något här resonerade med er situation, hör av er. Vi sitter gärna ner och pratar om var ni är och vad nästa rimliga steg kunde vara. Inga säljpitchar, bara ett samtal.

Skriv till oss