LLM-budgetten moeten gelijktijdige verzoeken kunnen opvangen

Zet een gebruiksdashboard om in een afdwingbaar uitgavenbeleid met atomaire reserveringen, begrensde oproepen, afstemming en tenant-specifieke boekhouding.

Een dashboard kan overschrijdingen van het budget perfect in kaart brengen, maar doet niets om deze te voorkomen. Handhaving vereist een besluit voordat het kostbare werk van start gaat, en dat besluit moet geldig blijven wanneer er meerdere verzoeken tegelijk binnenkomen.

Deze situatie is gemakkelijk over het hoofd te zien: bij twee verzoeken wordt telkens hetzelfde resterende saldo weergegeven, beide besluiten dat ze door kunnen gaan, en samen geven ze meer uit dan de limiet van de huurder. Een eenvoudige reeks van “saldo controleren, dan model aanroepen” lost dat probleem niet op.

Reservecapaciteit atomair

Ik bereken het beschikbare budget als de limiet minus het afgerekende verbruik en de actieve reserveringen. Een verzoek moet via een atomaire bewerking voldoende capaciteit reserveren voordat het met factureerbare werkzaamheden begint.

Bij een verzoek tot het genereren van een beperkte hoeveelheid tekst kan bij de reservering rekening worden gehouden met de geschatte invoerkosten en de geconfigureerde maximale uitvoer. Andere factureerbare aspecten, zoals beeldverwerking of extra stappen in het proces, moeten afzonderlijk en expliciet worden behandeld.

De reservering is een beleidsregel, geen garantie met betrekking tot het factureringsgedrag van elke dienstverlener. Strikte controles zijn afhankelijk van begrensde gesprekken, bekende tarieven en een beleid voor onzekerheid. Als een gesprek tot onbegrensde verdere werkzaamheden kan leiden, biedt geen enkele initiële schatting voldoende zekerheid.

Houd toelating en afwikkeling gescheiden

De toelatingsfase bepaalt of een verzoek mag worden gestart. De afwikkelingsfase registreert wat er daadwerkelijk is verbruikt en geeft ongebruikte reserveringen vrij. Voor beide bewerkingen zijn stabiele identificatiecodes nodig, zodat bij herhalingspogingen niet tweemaal hetzelfde bedrag in rekening wordt gebracht of vrijgegeven.

Een vereenvoudigde toelatingsregel luidt als volgt:

available = limit - settled_usage - active_reservations

atomically:
    if requested_reservation > available:
        reject_or_degrade()
    else:
        create_reservation(request_id, requested_reservation)

Deze pseudocode geeft de invariant weer. De implementatie van de productieomgeving moet nog worden voorzien van transactionele updates, verwerking van vervaldata, valutaprecisie en een duurzaam verzoekregister.

Omgaan met onderbroken en onduidelijke telefoongesprekken

Het feit dat de verbinding met een client is verbroken, betekent niet dat de provider is gestopt met rekenen. Een time-out betekent niet dat de aanroep gratis was. Als bij een mislukte verbinding onmiddellijk alle reserveringen worden vrijgegeven, kan dit ertoe leiden dat het werk dat hoogstwaarschijnlijk opnieuw zal worden geprobeerd, te laag wordt ingeschat.

Ik houd onzeker verbruik in een afstemmingsstatus. Als er verbruiksgegevens van de leverancier beschikbaar zijn, kunnen zij dit later verwerken. Anders heeft het product een conservatieve boekhoudregel nodig en moet er inzicht zijn in de geschatte hoeveelheid verbruik.

Reserveringen hebben ook herstelregels nodig voor gecrashte workers. Bij het verlopen van een reservering moet rekening worden gehouden met de mogelijkheid dat de externe taak nog steeds actief is; het verstrijken van de lease-time-out alleen is geen bewijs dat een provider-aanroep is beëindigd.

Prijzen van versies en begrotingsbeleid

Een verbruiksrecord moet het model, de factureerbare hoeveelheden, de prijsversie, de aanvraag-ID, de tenant en de taak bevatten. Het herberekenen van oud verbruik op basis van de huidige prijstabel maakt historische rapporten onbetrouwbaar.

Ik vermijd het om een onbekend model als kosteloos te beschouwen. Afhankelijk van het product moet een model zonder prijs ofwel niet beschikbaar zijn, ofwel een conservatieve reservering krijgen totdat de prijs ervan is geconfigureerd. Het ontbreken van een configuratie mag nooit stilletjes de bestedingslimiet verhogen.

In het beleid moet ook worden vastgelegd of een klantlimiet van toepassing is op de kosten van de aanbieder, een commercieel creditsaldo of een andere gebruikseenheid. Dit zijn verschillende begrippen en mogen niet onder de misleidende noemer ‘saldo’ worden geschaard.

Bied de klant een voorspelbaar alternatief traject aan

Een waarschuwingsdrempel kan een huurder helpen om actie te ondernemen voordat de limiet wordt bereikt. Wanneer de limiet wordt bereikt, kan de applicatie menselijke ondersteuning inbehouden, een duidelijke melding weergeven of een goedkopere oplossing aanbieden die binnen het beleid blijft.

Automatische uitwijking moet dezelfde toelatingscontrole doorstaan. Een overstap naar een andere aanbieder mag het budget van de tenant niet resetten of een afzonderlijke toelage creëren.

Ik test gelijktijdige toelatingen, dubbele afwikkelingen, systeemcrashes en onbekende prijzen. Het belangrijkste is dat de bestedingsregel ook onder die omstandigheden nog steeds geldt, en niet alleen tijdens één enkel succesvol verzoek.

Bijgewerkt op 25 september 2026.