חזרה
ספקי LLM מספקים לרוב 32K הקשר גם כשכרטיס הדגם מצהיר אחרת
SiTech AI Team2 წთ. საკითხავი

ספקי LLM מספקים לרוב 32K הקשר גם כשכרטיס הדגם מצהיר אחרת

מפתח שמפעיל סוכן צ'אט וקוד מתארח על מודלים במשקלים פתוחים מדווח שרוב נקודות הקצה שבדק מספקות כ-32K טוקנים של הקשר ללא קשר להצהרת כרטיס הדגם, ושהקיצוץ מתרחש בשקט, בלי שגיאה.

מהנדס שמפעיל סוכן צ'אט וקוד מתארח על מודלים במשקלים פתוחים פרסם ב-26 בספטמבר ב-dev.to אזהרה: חלון ההקשר בכרטיס הדגם כמעט אינו זהה למה שנקודת הקצה מספקת בפועל.

המספר בכרטיס אינו המספר שמקבלים

חלון ההקשר בכרטיס הוא תכונה של המשקלים, ואילו החלון שהלקוח מקבל תלוי במי שמארח אותם. מבין נקודות הקצה שבדק המחבר, רובן מספקות כ-32K טוקנים בלי קשר לכתוב בכרטיס, בודדות מגיעות ל-256K, ונתון ה-1M מהכרזות השחרור טרם נמצא בשימוש באף נקודת קצה.

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

שום שגיאה לא מופיעה

אין 413 ואין אזהרה. הבקשה מוגשת לפי התקרה הנמוכה ביותר, ותחילת ההקשר פשוט נעלמת. בצ'אט זה כמעט בלתי מורגש: השיחה נעשתה קצת פחות חכמה עם הזמן.

בתרחישים סוכניים זה האילוץ המכריע: ריצת build ארוכה פוגעת בתקרה, מופעל compaction, הצהרת המטרה מתומצתת לכדי עמימות, והמודל, שאינו יודע עוד במדויק מה עשה, מתחיל את התוכנית מחדש בשקט. מבחוץ זה נראה כמו מודל שמתקשה במשימות ארוכות; לדברי המחבר הסיבה היא תצורת האירוח.

איך למצוא את התקרה האמיתית

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

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

שלוש השלכות שכדאי להפנים

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

ב-gateway עם fallback התקרה יכולה להשתנות באמצע הסשן: ריצה שעוברת מספק עם 200K לספק עם 32K אינה מחזירה שגיאה אלא חותכת את ההקשר. זו בעיית נכונות ולא בעיית ביצועים.

ב-RAG הדבר מבטל בשקט את כיוונון האחזור: גודל ה-chunk, ה-top-k וה-reranking מכווננים מול תקציב שנלקח מהכרטיס. מערכת שכיווננה ל-128K אך מקבלת 32K מאחזרת יותר מדי, ה-chunk-ים המדורגים מחדש נחתכים, והתשובה חוזרת בטוחה ומוטעית; אחר כך הצוות מתחיל לכוונן את מודל ה-embedding, שמעולם לא היה הבעיה.

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

SSiTech

SiTech — פיתוח אתרים בכוח ה-AI

אנחנו בונים אתרים מהירים ומודרניים ומשלבים AI בתהליכי עבודה אמיתיים. יש לכם פרויקט או שאלה? נשמח לעזור.