AI Agents Operations

Uitgavenlimiet en noodstop voor een AI-agent instellen

Alejandro Rioja
Alejandro Rioja
5 min lezen
TL;DR

Elke productie-agent heeft vóór livegang drie limieten nodig: een harde bovengrens voor modelkosten per run en per dag, een maximaal aantal stappen per run en een noodstop die zonder deployment werkt. Zonder die limieten kan één foute loop in een nacht een maandbudget opmaken.

Bouwen met AI-agents

Leer hoe je AI-agents inzet voor marketing, sales en product. Elke week deel ik wat ik heb geleerd met 5.400+ lezers.

Een agent zonder limieten is een creditcard in handen van een supersnelle stagiair die nooit slaapt. Meestal gaat het goed. Die ene keer dat een tool een fout teruggeeft die de agent niet begrijpt, probeert hij het opnieuw, leest de fout, probeert opnieuw en gaat door tot je API-tegoed op is.

Ik draai veel agents en mijn regel is simpel: geen enkele agent gaat live zonder uitgavenlimiet, stappenlimiet en noodstop. Geen van de drie is moeilijk toe te voegen. Het overslaan ervan is wat duur uitvalt.

Waarom agents te veel uitgeven

Een gewoon script doet elke keer evenveel werk. Een agent bepaalt zelf hoeveel werk hij doet, en daar gebruik je hem juist voor. Dat is ook het risico. Vier oorzaken verklaren bijna alle uit de hand gelopen rekeningen:

  1. Herhaal-loops. Een tool faalt, de agent probeert het met iets andere invoer opnieuw, faalt weer en herhaalt dat.
  2. Groeiende context. Elke stap komt bij het gesprek, dus elke aanroep kost meer dan de vorige. Een run van 40 stappen kost veel meer dan 40 keer een run van 1 stap.
  3. Fan-out. De agent start subtaken en elke subtaak start er weer meer.
  4. Een trigger die te vaak afgaat. Een geplande taak of inkomende webhook draait 500 keer in plaats van 5 keer.

De cijfers achter de kosten per aanroep heb ik uitgesplitst in AI agent cost math. Dit artikel gaat over het plafond, niet over het gemiddelde.

Limiet 1: een harde uitgavenlimiet

Stel voor elke agent twee getallen in: een maximale uitgave per run en een maximale uitgave per dag.

Kies ze op basis van wat het werk waard is. Als een agent je inbox sorteert en je twintig minuten per dag bespaart, mag hij niet $40 uitgeven in één run. Een goed startpunt is vijf keer de kosten van een normale run. Kost een typische run 20 cent, begrens een run dan op $1 en een dag op $10. Je kunt de limiet verhogen zodra hij voor het eerst legitiem werk blokkeert, en dat is een prettig probleem.

Twee plekken om hem af te dwingen:

  • Bij de aanbieder. Stel in de console van Anthropic of OpenAI een maandelijkse uitgavenlimiet in. Dat is je vangnet en kost twee minuten. Het stopt het ergste scenario, ook als je eigen code fout zit.
  • In je eigen code. Houd tijdens een run een lopend totaal bij van de gebruikte tokens, reken het om naar dollars en stop zodra de limiet per run is overschreden. Bewaar het dagtotaal op een duurzame plek, zodat een herstart het niet op nul zet.

Limiet 2: een maximaal aantal stappen

Een stappenlimiet is de eenvoudigste beveiliging en vangt loops op die de dollarlimiet te laat ziet. Bepaal het maximale aantal stappen dat een gezonde run nodig heeft, tel er een marge bij en stop daar.

Gebruikt je langste normale run 12 toolaanroepen, zet de limiet dan op 25. Als de agent die bereikt, laat hem dan niet stilletjes doorgaan. Beëindig de run, leg de reden vast en stuur jezelf een bericht. Een run die tegen de stappenlimiet aanloopt is een bugrapport, en dat wil je lezen.

Hetzelfde idee werkt voor herhaalde identieke aanroepen: als de agent drie keer achter elkaar dezelfde toolaanroep met dezelfde invoer doet, stop hem dan. Dat is een loop, geen voortgang.

Limiet 3: een noodstop zonder deployment

Als er om 2 uur ‘s nachts iets misgaat, wil je geen code aanpassen, opnieuw bouwen en opnieuw uitrollen. Je wilt één schakelaar omzetten.

Een noodstop is één vlag die de agent aan het begin van elke stap controleert, niet alleen aan het begin van een run. Zegt de vlag stop, dan stopt de agent. Waar de vlag staat maakt minder uit dan dat je hem vanaf je telefoon kunt wijzigen: een sleutel in een key-value-opslag, een rij in een database of een omgevingsvariabele die je platform laat aanpassen zonder opnieuw te deployen.

Let op deze details:

  • Controleer vaak. Een vlag die alleen bij het opstarten wordt gelezen, kan een lopende run niet stoppen.
  • Maak stoppen veilig. De agent moet de actie waar hij middenin zit afmaken of terugdraaien, en geen half verstuurde e-mail of half geboekte afspraak achterlaten.
  • Faal gesloten. Kan de agent de vlag niet lezen, dan stopt hij. Een kapotte vlagopslag mag niet betekenen dat de uitgaven onbegrensd zijn.
  • Test hem één keer. Zet de schakelaar om op een staging-kopie en kijk hoe de agent stopt. Een ongeteste noodstop is een hoop.

Een verwante maatregel, de goedkeuringsstap, behandelde ik in human-in-the-loop agents. Goedkeuringen stoppen foute acties. Limieten stoppen foute uitgaven. Je wilt allebei.

Voeg meldingen toe zodat jij het als eerste hoort

Limieten beschermen je budget, maar je moet toch weten wanneer ze afgaan. Stuur een bericht bij 50% en 80% van de daglimiet en telkens wanneer een run wordt afgebroken door de stappenlimiet of de noodstop. En lees ze. Een melding die je hebt leren negeren is niets waard, dus als er een voortdurend afgaat, los dan de oorzaak op of pas de limiet aan.

Als je ook elke stap vastlegt met een trace-ID, zie je precies welke run het geld verbrandde. Die opzet beschrijf ik in how to debug an AI agent in production.

Prompt om alle drie de limieten toe te voegen

Je hoeft dit niet zelf te schrijven. Open Claude in de map waar de code van je agent staat en plak dit:

code
Read my agent's code. Add three safety limits and show me every file you change:
1. A per-run and per-day spending cap, computed from token usage. Read the limits
   from configuration, and stop the run with a clear logged reason when either is hit.
2. A maximum step count per run, plus a stop if the same tool is called with the same
   input three times in a row.
3. A kill switch: a flag checked before every step that stops the agent safely.
   If the flag can't be read, the agent must stop.
Then list what you assumed about where the flag should live, and give me a short
checklist to test each limit on a non-production copy.

Controleer voordat je het resultaat vertrouwt drie dingen: of de dollarberekening de actuele prijzen van jouw model gebruikt (het model verzint ze misschien), of de vlag bij elke stap wordt gelezen en of je elke limiet één keer hebt laten afgaan. Modellen schrijven maar al te graag een limiet die nooit afgaat.

Begin met de strengste getallen waarmee je kunt leven

Stel de limieten op dag één strak in en versoepel ze op basis van bewijs. Een limiet die een legitieme run blokkeert kost je een paar minuten. Een ontbrekende limiet kan je een maandbudget in één nacht kosten. Zet de limieten erin voordat de agent iets echts aanraakt, en de rest van de bouw wordt een stuk rustiger.

Advertentie
Lees verder

Gerelateerde berichten

Lees verder

Ontvang het AI-playbook in je inbox

Leer hoe je AI-agents inzet voor marketing, sales en product. Elke week deel ik wat ik heb geleerd met 5.400+ lezers.

↵ ↵ alle resultaten bekijken esc esc om te sluiten