Skip to main content

Warum Budgetkontrolle wichtig ist

Ein KI-Agent, der bezahlte APIs in einer Schleife aufruft, kann schnell hohe Kosten verursachen. Budgetkontrolle ermöglicht Ihnen:
  • Gesamtausgaben pro Sitzung begrenzen
  • Domain-spezifische Limits festlegen (z. B. max. 100 sats/Sitzung auf api.weather.com)
  • Einen Callback vor jeder Zahlung erhalten
  • Jederzeit einen vollständigen Ausgabenbericht abrufen

Globales Budget

Wenn eine 402-Antwort ein priceSats-Feld enthält und dieses das verbleibende Budget überschreiten würde, wirft der Client BudgetExceededError vor der Zahlung — es werden keine satoshis ausgegeben.

Budget pro Domain

Domain-spezifische Limits werden unabhängig vom globalen Limit geprüft — beide müssen eingehalten werden, damit die Zahlung fortgesetzt werden kann.

Callbacks

onBudgetExceeded / on_budget_exceeded wird unmittelbar vor dem Werfen von BudgetExceededError aufgerufen — nützlich für Protokollierung oder Benachrichtigungen.

Ausgabenbericht

spendingReport() gibt null / None zurück, wenn kein Budget konfiguriert ist.

Umgang mit BudgetExceededError


Hinweise zur Nebenläufigkeit

Teilen Sie eine L402Client-Instanz nicht auf mehrere gleichzeitige Promise.all-Aufrufe auf, wenn Budgetlimits eine Rolle spielen.BudgetTracker.check() und record() sind durch ein await (die Lightning-Zahlung) voneinander getrennt. Zwei gleichzeitige client.fetch()-Aufrufe an verschiedene Endpunkte können beide die Budgetprüfung bestehen, bevor einer der beiden die Ausgabe erfasst — das bedeutet, dass die kombinierten Kosten Ihr Budgetlimit vorübergehend um eine Zahlung überschreiten können.Sicheres Muster — sequenzielle Aufrufe:
Riskantes Muster — parallele Aufrufe:
Abhilfemaßnahme für parallele Workloads: Setzen Sie budgetSats konservativ (z. B. 80 % Ihres tatsächlichen Limits), um die Mehrausgaben durch eine gleichzeitige Zahlung aufzufangen. Für eine strikte Durchsetzung verarbeiten Sie Aufrufe sequenziell.

Vollständige Optionsreferenz