קבענו מגבלת אשראי של 100$ לצי עשרת סוכני ה-AI שלנו, ומנגנון ההגבלה (throttle) נכנס לפעולה באותו היום, ועצר כל משימה חדשה עד שהעלינו את התקרה. האירוע מראה שלולאת הבקרה נכנסה לפעולה באופן מיידי ברגע שחצה התקציב.

למה מגבלת אשראי חשובה עבור צי סוכני AI

הרצת עשרה סוכנים אוטונומיים על שרת בודד מייצרת זרם קבוע של קריאות API, שכל אחת מהן מחושבת לפי מספר הטוקנים (tokens) שהן צורכות. לוגים (logs) מסורתיים מתעדים את מה שהסוכנים עשו — שאילתות, תגובות, חותמות זמן — אך הם אינם אומרים דבר על העלות של הפעולות הללו. כאשר צי הסוכנים גדל, החשבון הבלתי נראה הזה עלול להתנפח ולהכריע את התקציב לפני שמישהו יספיק להבחין בכך.

הפיכת לוגים לספר חשבונות

הצעד הראשון שלנו היה להפסיק להתייחס ללוגים כטקסט פשוט ולהתחיל להתייחס אליהם כאל ספר חשבונות פיננסי. כל מחזור של סוכן — משימה ← ביצוע ← סיום — מייצר כעת שלוש רישומים ביומן:

  • כסף (Money) – ערך USD משוער הנגזר ממספר הטוקנים של הבקשה.
  • התחייבויות (Promises) – משימות פתוחות המייצגות התחייבות קיימת, כלומר עבודה שתחוייב ברגע שתסתיים.
  • עבודה (Labour) – יחידות העבודה בפועל שביצע הסוכן.

במקום לבצע grep לקובץ לוג עבור "error", אנחנו יכולים כעת להריץ שאילתה פיננסית אמיתית: "הצג את כל ההתחייבויות שסך הכסף שלהן עולה על 100$". ספר החשבונות הופך את העלות הנסתרת לנראית ולניתנת לחיפוש.

מערכת הבקרה בלולאה סגורה

מנגנון מגבלת האשראי פועל לפי לולאה בת ארבעה שלבים שרצה באופן רציף:

  1. מדידה (Measure) – כל תור של סוכן מוסיף שורה ללוג ההוצאות, המתעדת את שימוש הטוקנים ואת סכום הדולרים הנגזר.
  2. תמחור (Price) – המערכת ממירה את מספר הטוקנים לדולרים (USD) באמצעות השער הנוכחי.
  3. התראה (Alert) – מוניטור עוקב אחר התקציב הנע. המצב שלו עובר מ-none (ללא אזהרה) ל-warn (מתקרב למגבלה) ל-cap (הגעת למגבלה).
  4. הגבלה (Throttle) – השער קורא את המצב הנוכחי וחוסם כל שליחת משימה חדשה כאשר ה-cap פעיל.

חלון התקציב הוא תקופה נעה של חמש שעות, מה שאומר שהמערכת תמיד בוחנת את חמש השעות האחרונות של ההוצאות, ולא בלוק קלנדרי קבוע. זה שומר על הלולאה מגיבה להתפרצויות של פעילות ומונע מזינוק בודד לנעול את הצי ללא הגבלה.

לוח בקרה (dashboard) שמציג פשוט את ההוצאות מספר סיפור; מנגנון ההגבלה שקורא את המספר הזה ועוצר את השליחה הוא הבקרה האמיתית.

חוסן מובנה (Resilience by design)

מערכת בקרת הוצאות שהופכת לנקודת כשל בודדת (single point of failure) תהיה הפוכה מהכוונה. בנינו שלושה מנגנוני הגנה:

  • נכשל במצב פתוח (Fails open) – אם כלי התקציב קורס, הסוכנים ממשיכים לפעול. ההוצאות עשויות שלא להיבדק, אך הצי נשאר פעיל.
  • עקיפה ידנית (Manual bypass) – מפעילים יכולים לעקוף את מנגנון ההגבלה באמצעות ערוץ עדיפות, מה שמאפשר למשימות קריטיות להמשיך גם כאשר המגבלה הושגה.
  • חידוש אוטומטי (Auto-resume) – ככל שחלון הזמן הנע מתקדם, הוצאות ישנות יוצאות מהחישוב. ברגע שהסכום הכולל יורד מתחת למגבלה, השער נפתח מחדש באופן אוטומטי ללא התערבות אנושית.

המבחן: מגבלה של 100$ מול הוצאה קיימת של 156$

השקנו את המערכת עם מגבלה של 100$ בזמן שהפעילות האחרונה של הצי כבר צברה הוצאה של 156$. מנגנון ההגבלה נכנס לפעולה באופן מיידי ועצר את כל המשימות החדשות. כאשר העלינו את התקרה ל-200$, השער נפתח מחדש והעבודה חודשה ללא צורך בצעדים ידניים נוספים.

הניסוי אישר שני דברים:

  1. לולאת הבקרה מגיבה בזמן אמת; אין השהיה בין זיהוי החריגה לאכיפה.
  2. מפעילים יכולים להתאים את המגבלות תוך כדי תנועה, ובכך למנוע זמן השבתה מיותר לעבודה בעדיפות נמוכה.

שורה תחתונה: התייחסות ללוגים של סוכנים כאל ספר חשבונות פיננסי וחיבור מנגנון הגבלה מבוסס תקציב נע לצנרת השליחה (dispatch pipeline) מעניקים לך הגנה מיידית וניתנת לאכיפה מפני הוצאות יתר. זהו מנגנון בקרה זול וחסין שעובד כבר היום; ניתן להוסיף מדיניות מתוחכמת יותר מאוחר יותר, אך הלולאה הבסיסית צריכה להיות קו ההגנה הראשון עבור כל צי סוכני AI.