עטיפות Bash צרכו יותר טוקנים מאשר ה-Model Context Protocol (MCP) בעל שבע הסכמות (schemas) במהלך הרצה של 12 שאלות, מה שמראה שה-shell אינו הקיצור הזול שמהנדסים רבים חושבים שהוא. צריכת טוקנים מתרגמת ישירות לעלות עבור סוכני מודלי שפה גדולים (LLM) הפועלים בקנה מידה רחב.

הניסוי ששינה את התמונה

מפתח מדד ארבע דרכים שבהן סוכן LLM יכול למשוך נתוני כלי שיט:

  • MCP – שבע סכמות של כלים המאוחסנות מאחורי ה-Model Context Protocol.
  • Bash + curl (cold) – קריאת shell גולמית ללא הנחיות (prompting) נוספות.
  • Bash + curl (warm) – אותה קריאת shell בתוספת הנחיות מערכת (system prompts) המנחות שימוש בטוח.
  • Dedicated CLI tool – ממשק שורת פקודה (CLI) ייעודי שנבנה למטרה זו.

כל ארבע הדרכים עברו שיחה של 12 שאלות. צריכת הטוקנים, המניעה את החיובים ב-API, הייתה כדלקמן:

  • MCP: 109,779 טוקנים
  • Bash + curl (cold): 158,021 טוקנים
  • Bash + curl (warm): 178,577 טוקנים

הנתונים של ה-dedicated CLI tool לא פורסמו, אך שני וריאנטים של Bash כבר עלו יותר מ-MCP.

למה ה-shell עלה יותר מהפרוטוקול

כל כלי Bash דרש בערך 2,700 טוקנים של "harness prompts" – ההנחיות שאומרות לסוכן כיצד להפעיל את ה-shell בבטחה, לנתח (parse) את הפלט ולטפל בשגיאות. ההנחיות הללו לבדן עולות על משקל הטוקנים הכולל של כל שבע סכמות ה-MCP יחד.

העלות אינה רק הקריאה הראשונית. בסביבת ייצור (production), אותו סוכן טען מראש 11 שרתי MCP בעת ההפעלה, מה שצרך 19,800 טוקנים עוד לפני שהגיעה שאילתת המשתמש הראשונה. לאחר מכן, בכל תור, הסוכן קרא מחדש כל סכימה מכל שרת, כך שגם בקשה טריוויאלית כמו "מה השעה?" שילמה את מחיר הטוקנים של כל שאר תיאורי הכלים.

הניקוז הנסתר של eager loading

כאשר סוכן LLM מבצע eager loading לכל שרת כלים בכל תור, חשבון הטוקנים מתנפח בצורה דרמטית. הניסוי הראה שהעלות ה"אמיתית" של שימוש ב-Bash אינה פקודת ה-shell עצמה, אלא ההקשר (context) המקיף שעליו להיות מועבר למודל בכל פעם.

  • Fixed-cost tools (סכמות MCP) מוסיפות תקורת טוקנים (overhead) צפויה לכל תור.
  • Dynamic payloads (תגובות curl) מוסיפות חוב גדל שמתרחב בהתאם לאורך השיחה וגודל הנתונים.

לכן, shell שנראה "חינם" על פני השטח מטיל למעשה מס טוקנים משתנה וגדול יותר.

מה מהנדסי AI צריכים לעשות כעת

  • אימוץ lazy loading. טענו שרת כלים רק כאשר הסכימה שלו נחוצה בפועל, ושמרו אותו בזיכרון לאורך התורים במקום לקרוא אותו מחדש בכל פעם.
  • התייחסו לסכמות כלים כהוצאה קבועה לכל תור. תכננו תקציבי טוקנים על בסיס הגודל הידוע של הגדרות MCP, במקום להניח שפקודות shell הן בחינם.
  • העריכו מחדש את הנחת ה-"shell = cheap". בצעו פרופיל (profile) לצריכת הטוקנים עבור כל נתיב כלי לפני שאתם מתחייבים לעיצוב מסוים.
  • השתמשו בכלים מובנים (shaped tools) עבור מודלים קטנים. גם עם חלונות הקשר (context windows) מוגבלים, סכמות מוגדרות היטב משפרות את יכולת ההסקה, המרת היחידות וטיפול בשגיאות.

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

מקור: https://dev.to/clarkbw--/enabling-bash-costs-more-context-than-seven-mcp-tool-schemas-2h82