אם אתם מריצים עומסי עבודה בייצור (production) על מודלי שפה גדולים (LLMs), אתם כבר יודעים שביצועי המודל הם רק חצי מהקרב. החצי השני הוא החשבון בסוף החודש. שלושה ספקים — Mancer 2, Novita ו-StreamLake — עדכנו לאחרונה את מחירי המודלים שלהם. אם אתם מסתמכים על אחת מה-APIs הללו, החשבונית הבאה שלכם עשויה להיראות שונה מזו האחרונה.
זה כבר לא דבר חריג. שוק ה-LLM עדיין מתנסה בדרכים לגבות תשלום על inference. חלק מהספקים מחייבים לפי אלף טוקנים. אחרים מאגדים בקשות למסלולים (tiers) או מציעים הנחות על שימוש ממושך. כשפלטפורמה אחת משנה את מחיר היחידה שלה או משנה את מבנה המסלולים, ההשפעה על התקציב שלכם יכולה לנוע בין מטרד קטן לחריגה משמעותית בעלויות. מעקב אחר העדכונים הללו אינו אופציונלי; זה חלק מהעבודה.
למה תמחור API ראוי לתשומת הלב שלכם
מפתחים נוטים לעיתים קרובות להתייחס לתמחור API כאל סעיף ש"קובעים ושוכחים". אתם מבצעים benchmark למודל, בוחרים ספק, וממשיכים לבניית פיצ'רים. זה עובד, עד שזה לא עובד. בנוף הנוכחי, שינויי מחירים יכולים לקרות ללא הכרזה רעשנית. ספק עשוי להוריד את העלות של מודל ישן (legacy) תוך העלאת המחיר של ה-endpoint החדש יותר שלו. ספק אחר עשוי להציג היטלי תשלום על output-tokens שלא היו קיימים ברבעון האחרון. אם אינכם עוקבים, תגלו זאת רק כשהחשבונית של הענן תגיע.
הרזולוציה (granularity) של חיוב ה-LLM הופכת את זה למורכב במיוחד. לעיתים נדירות אתם משלמים תעריף חודשי קבוע. אתם משלמים על כל prompt token ועל כל completion token. עלייה במחיר בצד ה-output יכולה לצרוב יותר מאשר בצד ה-input, מכיוון ש-completions הם לרוב ארוכים יותר מ-prompts. אם האפליקציה שלכם מייצרת טקסט ארוך, קוד או שרשראות חשיבה רב-שלביות, עלייה קטנה לכל טוקן יכולה להתרחב במהירות.
יש גם את בעיית ה-drift (סטייה). פרופיל הטוקנים של האפליקציה שלכם משתנה עם הזמן. אתם עשויים להוסיף system prompt חדש שצורך יותר input tokens. אתם עשויים לעבור ל-chain-of-thought prompting שמייצר output ארוך יותר. גם אם מחירי הספקים היו נשארים קבועים, העלויות שלכם היו משתנות. כשמחירי הספקים משתנים בו-זמנית, ההשפעה המשולבת עלולה להפתיע לרעה צוות שאין לו נראות (visibility) על הנתונים.
מה השתנה
Mancer 2, Novita ו-StreamLake השיקו כולן התאמות תמחור. הפרטים משתנים בין הפלטפורמות, אך הכיוון הוא אותו כיוון: מבנה העלויות שבו השתמשתם בחודש שעבר עשוי שלא להיות זה שבתוקף כעת.
Mancer 2 עדכנה את תמחור המודלים שלה, מה שאומר שמפתחים המשתמשים ב-endpoints שלה צריכים להעריך מחדש את העלויות שלהם לכל בקשה. אם שמרתם (cached) טבלאות מחירים ישנות בתיעוד הפנימי שלכם, המספרים הללו אינם רלוונטיים יותר.
גם Novita ביצעה התאמות מחירים בכלל ההיצע שלה. עבור צוותים שבחרו ב-Novita כי היא התאימה למסגרת תקציב מסוימת, התעריפים החדשים עשויים לשנות את עלות הבעלות הכוללת (TCO) עבור פרויקטים מתמשכים.
גם StreamLake שינתה את התמחור שלה. יש לבחון מחדש כל אינטגרציה שנבנתה סביב מחירון ה-rate card הקודם של StreamLake לפני מחזור החיוב הבא.
מכיוון שמדובר בשלוש פלטפורמות נפרדות עם שלושה מודלים שונים של תמחור, אין כלל אוניברסלי לגבי השאלה אם תשלמו יותר או פחות. ספק אחד עשוי להוריד את התעריפים במסלול ה-starter תוך העלאת המחיר עבור throughput פרימיום. ספק אחר עשוי לשנות את הפרמיה על ה-context-window. ההנחה הבטוחה היחידה היא שהגיליון הישן שלכם אינו נכון.
העלויות הנסתרות של התעלמות משינויי תעריפים
בואו נראה מה זה אומר בפועל. נניח שאתם מריצים עוזר תמיכה לקוחות שמטפל בעשרת אלפים שיחות ביום. כל חילופין ממוצעים אלפיים input tokens וארבע מאות output tokens. שינוי של אפילו כמה סנט למיליון טוקנים יכול להצטבר למאות דולרים בחודש. אם שינוי המחיר משפיע על output tokens והעוזר שלכם מתחיל לייצר תגובות ארוכות יותר בגלל ששדרגתם את המודל, אתם נפגעים פעמיים.
ואז יש את אפקט המכפלה. אפליקציות רבות אינן קוראות ל-LLM פעם אחת לכל בקשת משתמש. הן קוראות לו בלולאה, או ב-pipeline עם שלבי שליפה (retrieval), או עם fallback למודלים משניים. שינוי מחיר במודל ה-fallback עשוי שלא להיראות דחוף, עד שהמודל הראשי שלכם מגיע למגבלת קצב (rate limit) ואתם מבזבזים יום רביעי גשום על שימוש בגיבוי היקר יותר.
חריגות בתקציב אינן הסיכון היחיד. אם המחירים יורדים ואתם לא שמים לב, אתם עלולים להגביל (throttle) את השימוש שלא לצורך. יכולתם היו לשרת יותר משתמשים, לעבד מסמכים גדולים יותר, או להוריד את המחירים שלכם ללקוחות. חוסר ידיעה פועל בשני הכיוונים.
איך לבנות הרגל של מעקב אחר עלויות
אתם לא צריכים צוות כספים ארגוני כדי להישאר על זה. אתם צריכים שגרה ומקום לתעד בו שינויים.
התחילו בריכוז מחירוני התעריפים (rate cards) שלכם. שמרו מסמך פשוט — בין אם זה דף ויקי משותף, טבלת Notion, או הודעה נעוצה בערוץ הפיתוח שלכם — המפרט את המחיר הנוכחי לכל טוקן (per-token) או לבקשה (per-request) עבור כל מודל שבו אתם משתמשים. כשספק מודיע על שינוי, עדכנו את המסמך מיד. אל תחכו לסקירת הספרינט (sprint review).
לאחר מכן, תייגו את השימוש שלכם לפי ספק ולפי מודל. רוב כלי ה-observability מאפשרים לכם לצרף מטא-דאטה מותאם אישית לקריאות API. השתמשו בתגים הללו כדי להפיק סיכומי עלויות שבועיים. אם אתם רואים קפיצה, תוכלו לעקוב אחריה בעקבות עלייה בשימוש או שינוי בתעריף תוך שניות, לא ימים.
בנו התרעת קצב שריפה (burn-rate alert). זה לא חייב להיות משהו מתוחכם. סקריפט מתוזמן ששואל את לוח הבקרה (dashboard) של השימוש שלכם ומפרסם מספר ב-Slack בכל בוקר זה מספיק. כשהמספר קופץ, תדעו על כך באותו היום, ולא שלושים ימים מאוחר יותר כשהכספים ישלחו אימייל כועס.
בחנו מחדש את בחירות המודלים שלכם מדי רבעון. המודל הטוב ביותר עבור מקרה הבוחן שלכם בינואר עשוי שלא להיות הטוב ביותר ביוני, לא בגלל שהמודל נהיה גרוע יותר, אלא בגלל שנוף התמחור השתנה. ספק שהיה פעם יקר מדי עשוי היה להוריד מחירים. מועדף זול עשוי היה להעלות אותם. הריצו מחדש את הבנצ'מרקים (benchmarks) שלכם מול מחירים חיים, לא מול מחירים היסטוריים.
לבסוף, קחו בחשבון את התמחור בהחלטות הארכיטקטורה שלכם. אם אתם יודעים שספק משנה תעריפים לעיתים קרובות, תכננו את המערכת כך שתוכלו להחליף endpoints מבלי לכתוב מחדש חצי מקוד המקור שלכם. בצעו אבסטרקציה (Abstract) ללקוח מאחורי ממשק (interface) פנימי. שמרו את שם המודל בקובץ קונפיגורציה, ולא כקוד קשיח (hard-coded) בשכבת הפרומפט שלכם.
איפה לקבל עדכונים אמינים
בלוגים של ספקים ותיעוד (documentation) הם המקורות הרשמיים, אך קל לפספס אותם בשבוע עמוס. אפשרות אחת היא לעקוב אחרי סיכומים שנבחרו בקפידה (curated roundups) שעוקבים בדיוק אחרי סוגי השינויים הללו בכל האקו-סיסטם. לקבלת פירוט מלא של ההתאמות האחרונות של Mancer 2, Novita ו-StreamLake, בדקו את הסיכום המפורט כאן:
שינויים בתמחור LLM: Mancer 2, Novita, ו-StreamLake
אם אתם רוצים להישאר בעניינים ולהשוות הערות עם בונים אחרים שמנסים לשמור על חשבונות תשתית ה-AI שלהם בשליטה, יש גם קהילה שכדאי להצטרף אליה:
ההגנה הטובה ביותר מפני חשבונות מפתיעים היא רשת של אנשים שמסמנים שינויים ברגע שהם קורים.
השורה התחתונה
תנודתיות בתמחור היא מאפיין של שוק ה-LLM הנוכחי, לא באג. מודלים הופכים לזולים יותר להרצה, ספקים מתנסים במבני תעריפים, והתחרות מזיזה את המספרים. זהו בשורה טובה בטווח הארוך, אבל רק אם אתם מקדישים לכך תשומת לב. התייחסו לעלויות ה-API שלכם כפי שאתם מתייחסים למדדי ה-uptime שלכם: מדדו אותם, הגדירו התרעות עליהם, וערערו עליהם באופן קבוע. השינויים האחרונים של Mancer 2, Novita ו-StreamLake הם רק התזכורת האחרונה לכך שהתג המחיר של ערימת ה-AI שלכם לעולם אינו קבוע באמת.
