Skip to main content

बजट नियंत्रण क्यों महत्वपूर्ण है

एक AI एजेंट जो लूप में पेड APIs को कॉल करता है, वह तेज़ी से लागत बढ़ा सकता है। बजट नियंत्रण आपको ये करने देता है:
  • प्रति सत्र कुल खर्च की सीमा तय करें
  • प्रति-डोमेन सीमाएं निर्धारित करें (जैसे, api.weather.com पर अधिकतम 100 sats/सत्र)
  • प्रत्येक भुगतान से पहले कॉलबैक प्राप्त करें
  • कभी भी पूरी खर्च रिपोर्ट प्राप्त करें

वैश्विक बजट

जब एक 402 रिस्पॉन्स में priceSats फ़ील्ड होती है और वह शेष बजट से अधिक होती है, तो क्लाइंट भुगतान करने से पहले BudgetExceededError थ्रो करता है — कोई satoshi खर्च नहीं होता।

प्रति-डोमेन बजट

प्रति-डोमेन सीमाएं वैश्विक सीमा से स्वतंत्र रूप से जाँची जाती हैं — भुगतान आगे बढ़ने के लिए दोनों को पास होना आवश्यक है।

कॉलबैक

onBudgetExceeded / on_budget_exceeded को BudgetExceededError थ्रो होने से ठीक पहले कॉल किया जाता है — लॉगिंग या अलर्ट के लिए उपयोगी।

खर्च रिपोर्ट

spendingReport() तब null / None लौटाता है जब कोई बजट कॉन्फ़िगर नहीं किया गया हो।

BudgetExceededError को हैंडल करना


समवर्तिता संबंधी नोट्स

जब बजट सीमाएं महत्वपूर्ण हों तो एक L402Client इंस्टेंस को समवर्ती Promise.all कॉल्स में साझा न करें।BudgetTracker.check() और record() के बीच एक await (Lightning भुगतान) है। दो समवर्ती client.fetch() कॉल्स अलग-अलग एंडपॉइंट्स पर, दोनों बजट जाँच पास कर सकती हैं, इससे पहले कि कोई भी खर्च रिकॉर्ड करे — इसका मतलब है कि संयुक्त लागत अस्थायी रूप से आपकी बजट सीमा से एक भुगतान अधिक हो सकती है।सुरक्षित पैटर्न — क्रमिक कॉल्स:
जोखिम भरा पैटर्न — समानांतर कॉल्स:
समानांतर वर्कलोड के लिए समाधान: अपना budgetSats सतर्कता से निर्धारित करें (जैसे, अपनी वास्तविक सीमा का 80%) ताकि एक समवर्ती भुगतान से अतिरिक्त खर्च को अवशोषित किया जा सके। सख्त प्रवर्तन के लिए, कॉल्स को क्रमिक रूप से प्रोसेस करें।

पूर्ण विकल्प संदर्भ