מטמון קר עולה כסף מלא. כשעובדים מול סוכני קוד כמו Cursor או Claude Code, כל קריאה נוספת שולחת מחדש היסטוריית קבצים ארוכה. ספקי המודלים מציעים הנחות על טוקנים שמורים, אבל נתב שמפזר בקשות בין ספקים פשוט מאפס את הזיכרון בכל שלב. אתמול הודיעה Vercel על תצוגת שיחות ייעודית ב-AI Gateway שמאגדת את שלבי הריצה ומראה מתי שמרתם על ספק קבוע ומתי שילמתם מחיר מלא.
שליחת מזהה שיחה מפורש שומרת על הספק ועל פרטי האימות המדויקים שעיבדו את הפנייה הקודמת.
הקאש שלכם מתאפס בסתר
המטמון של ספקי המודלים שמור בחשבון הספציפי שעיבד את הפנייה הקודמת. ברגע שהבקשה הבאה בסבב מנותבת לספק חלופי, הזיכרון מתרוקן והתשלום חוזר למחיר קלט מלא. כדי לפתור את זה, ורסל הפעילה מנגנון Session Affinity כברירת מחדל לבקשות טקסט וצ'אט. המנגנון מזהה פניות ששייכות לאותה שיחה, בודק מי שירת את הפנייה האחרונה, ומנסה לפנות אליו שוב כדי לקרוא את הפרומפט מהמטמון החם.
היררכיית הזיהוי של השיחה
איך המערכת יודעת לחבר בין שתי פניות? לפי התיעוד הרשמי, השער סורק שישה מקורות לפי סדר עדיפויות קשיח ונעצר בראשון שנמצא. העדיפות הראשונה ניתנת להגדרה ישירה של sessionId באפשרויות הספק. בעדיפות השנייה נבדקת כותרת ה-HTTP הישירה x-session-id, ובעדיפות השלישית כותרת x-session-affinity, שנשלחות הלאה לספק כדי לשמר ביצועים באשכול העיבוד שלו. בהמשך נמצאים שדה prompt_cache_key של OpenAI וכותרת הזיהוי האוטומטית של Claude Code.
אם אף אחד מאלה לא נשלח, המערכת מפיקה טביעת אצבע דיגיטלית מתחילת הפרומפט. זה נשמע נוח, אבל בדוקומנטציה מוסבר שהצמדת פרטי האימות המדויקים של החשבון שמורה רק למזהה שיחה מפורש או ל-Claude Code. כשמשתמשים בשדה prompt_cache_key, למשל, המערכת מצמידה את הספק בלבד ולא את פרטי האימות, כדי למנוע העמסה של תנועה משותפת על חשבון בודד. לא הייתי ממהר להסתמך על טביעת אצבע אוטומטית כשיש תקציב על הפרק.
| עדיפות | שיטת זיהוי | איך מגדירים | רמת אמינות לשמירת קאש |
|---|---|---|---|
| 1 | אפשרות sessionId | providerOptions.gateway.sessionId או שדה session_id | גבוהה ביותר |
| 2 | כותרת x-session-id | כותרת HTTP ישירה או הגדרת headers ב-SDK | גבוהה ביותר |
| 3 | כותרת x-session-affinity | כותרת HTTP שמועברת גם ישירות לספק המודל | גבוהה ביותר |
| 4 | שדה prompt_cache_key | שדה הבקשה המובנה ב-OpenAI | בינונית (מצמיד ספק בלבד) |
| 5 | כותרת ייעודית של סוכן | x-claude-code-session-id נשלחת אוטומטית | גבוהה |
| 6 | טביעת אצבע של שיחה | זיהוי אוטומטי לפי תחילת הפרומפט | נמוכה (סכנת התנגשויות) |
מה רואים עכשיו ביומנים
תצוגת היומנים המעודכנת מאפשרת לפתוח שיחה ולראות את כל שלבי הריצה שלה ברצף. כל שורה ביומן מציגה את הסוכן שהריץ את הפקודות, המודל שנבחר, העלות המצטברת בדולרים ומשך השיחה. הממשק חושף את שיעור הפגיעה במטמון עבור כל שלב ואת נתיב הניתוב המלא בין ספקים. אפשר לסנן שיחות לפי מספר שלבים, ספק, כלי פיתוח, שיטת אימות או רף עלות, כאשר שיחות בעלות שלב בודד מוסתרות כברירת מחדל עד שמנקים את הסינון.
בלי עמלות אבל עם אותיות קטנות
השימוש בשער הניתוב של ורסל אינו גובה עמלת תיווך על טוקנים, ותומך בשימוש במפתחות אישיים בשיטת Bring Your Own Key. עם זאת, יש מגבלות ברורות. המנגנון לא רלוונטי לבקשות דוגמת embeddings, תמונות או הפעלות realtime, שבהן אין מטמון פרומפטים שצריך לשמור חם. בנוסף, המטמון עדיין תלוי במדיניות של ספק הקצה. אצל Anthropic, למשל, תוקף המטמון עומד על חמש דקות בלבד כברירת מחדל, אלא אם מגדירים ידנית תוקף של שעה במחיר כתיבה ראשוני גבוה יותר של פי 2 מעלות הקלט הבסיסית.
הצמדת שיחה מעבירה את הספק שנבחר לראש התור שתוכנן מראש, אך לעולם לא תוסיף ספק שהגדרות הניתוב שלכם חסמו.דוקומנטציית AI Gateway Session Affinity
במצב מעקב חי היומנים מציגים עיכוב קל של כ-90 שניות עד להשלמת קליטת הנתונים, ותקופת השמירה ביומנים מוגבלת לטווח של 36 ימים לכל היותר.
להוסיף כותרת אחת לקוד
אם אתם מחברים סוכני פיתוח עצמאיים בטרמינל, הדרך הפשוטה ביותר להגדיר את השער היא להריץ את כלי השורה של ורסל:
פקודת npx vercel@latest ai-gateway setup מזהה את הסוכנים המותקנים במחשב. היא כותבת את הנתיבים לקובצי ההגדרה ושומרת את המפתחות במנהל הסיסמאות המקומי. בקוד שלכם, אל תסמכו על זיהוי אוטומטי של טביעות אצבע. הוסיפו את הכותרת x-session-id לכל בקשה שיוצאת מה-SDK, ותוודאו שאתם שומרים על אותו מזהה לאורך כל האינטראקציה. בדוקומנטציה לא מצוין אם השירות הותאם לישראל או לעברית. נתוני העלות מוצגים בדולרים בלבד, בעוד נתוני השימוש מדווחים ביחידות לפי המודליות. הכסף שנשפך על טוקנים כפולים לא חוזר.
מקורות
- AI Gateway logs now show session affinityhttps://vercel.com/changelog/ai-gateway-logs-now-show-session-affinity
- AI Gateway Request Logshttps://vercel.com/docs/ai-gateway/observability-and-spend/logs
- Coding Agents and Chat Platforms with AI Gatewayhttps://vercel.com/docs/ai-gateway/coding-agents
- AI Gateway Session Affinityhttps://vercel.com/docs/ai-gateway/models-and-providers/session-affinity
- AI Gateway Automatic Prompt Cachinghttps://vercel.com/docs/ai-gateway/models-and-providers/automatic-caching
- Claude Codehttps://weba.co.il/tools/claude-code/
- Cursorhttps://weba.co.il/tools/cursor/
- Vercelhttps://weba.co.il/tools/vercel/
הידיעה נכתבה מהמקורות שלמעלה בתאריך הפרסום, וכל טענה בה נבדקה מולם. מצאתם טעות? כתבו.