אם אי פעם בניתם סוכן AI, אתם בטח מכירים את ההרגשה. כותבים פרומפט מפורט, מדביקים לתוכו כמה קבצים שלמים, מחברים סכמה של בסיס הנתונים ומריצים. בסביבת הפיתוח המקומית שלכם זה עובד נפלא. הסוכן עונה בצורה מדויקת, מוצא את המידע הנכון ועושה בדיוק מה שביקשתם.
ואז אתם מעלים את המערכת לייצור (Production). עשרות משתמשים מתחילים לעבוד איתה. תוך ימים ספורים קורים שני דברים: חשבון ה-API שלכם מזנק בצורה מפחידה, והמשתמשים מתחילים להתלונן שהסוכן איטי להחריד ולפעמים פשוט ממציא תשובות (הזיות).
זהו המחיר הנסתר של גישת הפרומפטים הנאיבית. אנחנו מתייחסים לטוקנים כמו אל מים זורמים, במקום להתייחס אליהם כמו אל דלק יקר ומרוכז.
המחיר של הרגל ה-"תזרוק הכל פנימה"
רוב המפתחים מתחילים מריכוז של כל המידע האפשרי בתוך חלון ההקשר (Context Window). זה המסלול הקל ביותר. נותנים לסוכן את כל קוד הפרויקט, את כל היסטוריית השיחות של המשתמש ורשימה אינסופית של הוראות גלובליות - רק כדי להיות בטוחים שיש לו את "כל ההקשר".
אבל בייצור, הנאיביות הזו עולה ביוקר.
בשבוע שעבר ניתחתי מערכת שנבנתה עבור לקוח. המשימה של הסוכן הייתה פשוטה: לשלוף משתנה הגדרה בודד מתוך תיקיית הפרויקט. אבל בכל פעם שהסוכן רץ, הוא טען מחדש את כל מבנה התיקיות, קרא שלושה קבצי קונפיגורציה מלאים, ועיבד את כל הוראות המערכת הגלובליות שלו.
כל הפעלה כזו צרכה יותר מ-80,000 טוקנים.
עלויות ה-API טיפסו במהירות, אבל הבעיה האמיתית הייתה חוויית המשתמש. בגלל שהמודל היה צריך לסנן הר של מידע מיותר כדי למצוא משתנה קטן אחד, לקח לו מעל 15 שניות להחזיר תשובה. גרוע מכך - הוא נטה "להתפזר" בגלל שורות קוד לא רלוונטיות ולהזות.
בהנדסת מערכות יש כלל ברזל: לעולם לא מוסיפים משקל למבנה אלא אם כן הוא תורם ליציבות שלו. כל גרם מיותר דורש יותר אנרגיה כדי להניע אותו, שוחק את הרכיבים ומייצר נקודות כשל חדשות.
זה בדיוק הכלל שמנחה אותנו גם בהנדסת הקשר ב-AI.
השינוי המחשבתי: ניתוב הקשר קפדני
בנינו מחדש את המערכת של הלקוח באמצעות מה שנקרא ניתוב הקשר (Context Routing).
במקום להזין את הסוכן בכל הקוד מראש, בנינו עבורו כלים קלים וממוקדים. נתנו לו את היכולת לבצע חיפוש ראשוני, לאתר את הקובץ הספציפי שהוא צריך, ולטעון רק את טווח השורות המדויק שבו נמצא המשתנה.
המערכת תוכננה עם גבולות גזרה ברורים ומדויקים.
התוצאות בשטח היו מיידיות:
- עלויות ה-API ירדו ב-92% - פשוט כי שלחנו 3,000 טוקנים במקום 80,000.
- מהירות ביצוע המשימה השתפרה פי 4 - למודל היה הרבה פחות טקסט לקרוא ולנתח.
- ההזיות נעלמו לחלוטין - לא היה שום רעש רקע שיסיח את דעתו של מנוע הבינה המלאכותית.
זהו הלב של הנדסת הקשר (Context Engineering). זה לא קשור לכתיבת פרומפטים מתוחכמים. זה קשור לבניית ארכיטקטורת מערכת שמנהלת בצורה מדויקת מה המודל יודע, מתי הוא יודע את זה, וכמה מידע הוא מקבל בכל רגע.
תבנו בשביל יעילות, לא רק בשביל יכולת
בשלב אבות-הטיפוס, ליעילות אין משמעות גדולה. אבל כשאתם בונים מערכות אמיתיות שעובדות בייצור ומשרתות מאות משתמשים ביום - יעילות היא שם המשחק.
אם הסוכן שלכם בזבזן, איטי ויקר - הוא לא כלי עבודה לפרודקשן. הוא צעצוע יקר.
כארכיטקטים של מערכות AI, התפקיד שלנו הוא לעצב מערכות רזות, מדויקות ויציבות. המשמעות היא להתייחס לטוקנים כאל משאב יקר ערך שיש לנהל בדיוק מירבי.
תייעלו את הקונטקסט שלכם. התקציב שלכם - והמשתמשים שלכם - יודו לכם על כך.