מודל 340 מיליון פרמטרים רץ על GPU של טלפון, עם זהות מספרית למודל הייחוס

החוקרים של Fastino שחררו גרסת LiteRT של GLiNER2.5-Decide, מודל מבוסס DeBERTa-v3-large שמבצע סיווג zero-shot עם תוויות שרירותיות בזמן ההרצה. ההמרה ל-fp16 שומרת על זהות מלאה לתוצאות המודל המקורי ב-fp32: 361 מתוך 361 בקשות בדיקה החזירו החלטות זהות בגרסת שולחן העבודה, ו-126 מתוך 126 צמדי (בקשה, חלון) בגרסת האנדרואיד על Galaxy S26. זו לא קוונטיזציה אגרסיבית שמקריבה דיוק, משקולות השכבות המחוברות במלואן (146 טנזורים) נשמרות ב-fp16 עם דה-קוונטיזציה ל-fp32 בזמן הריצה, בעוד האקטיבציות ושאר הקבועים נשארים ב-fp32.
ארכיטקטורה של מעבר יחיד למשימות מרובות
המודל מקבל טקסט ומילון משימות, כוונה, דחיפות, סנטימנט, נושאים עם ריבוי תוויות, ומחזיר החלטה לכל משימה במעבר קדמי יחיד. המארח (host) מטפל בהטמעות המילים לפני הגרף ובהמרת הלוגיטים להחלטות אחריו, לפי חוזה מפורש שמגדיר את רצף הטוקנים המקודדים, מיקומי הסמנים וכללי ההחלטה. שלושה גרפים בגדלי חלון שונים (s128, s256, ועוד אחד) מסופקים; המפתח בוחר את הקטן ביותר שמכיל את הסכמות והטקסט, עם מגבלה של 32 תוויות בסך הכול. גודל החבילה הכולל, שלושת הגרפים, טבלת ההטמעות ב-fp16 וה-tokenizer, עומד על כ-2.45 ג'יגה-בייט.
ביצועים על חומרה אמיתית, לא סימולציה
על Galaxy S26 (דגם SM-S942Q, מעבד SM8850, אנדרואיד 16) עם LiteRT 2.2.0 והאצת GPU מפורשת ב-FP32, זמן האינפרנס נע בין 66 ל-70 מילישניות לחלון 128 טוקנים, וכ-175 מילישניות לחלון 256 טוקנים. על CPU שולחני עם 4 תהליכונים הזמנים דומים. ההאצה מוגדרת במפורש כ-GPU FP32, לא fp16 מקורי של ה-GPU, מה שמסביר את היציבות המספרית. משפחות GPU אחרות של אנדרואיד לא נבדקו בגרסה זו, והמפתחים מציינים זאת במפורש.
מה זה משנה בפועל, וממה להיזהר
היכולת להריץ מודל 340M פרמטרים עם סכמת תוויות דינמית על מכשיר קצה פותחת דלת לניתוב כוונות, זיהוי דחיפות וסיווג נושאים בלי שרת, בלי לאטנס רשת ובלי לשלוח טקסט משתמש לענן. הקוד לדוגמה (Python ואנדרואיד) משתמש ב-gliner2 2.0.0 כסכמה וטוקנייזר נעולים, כך שאין צורך בהורדת צ'קפוינט נפרדת. מצד שני, 2.45 ג'יגה הם עדיין משקל כבד לאפליקציה ממוצעת, וההרצה דורשת LiteRT 2.2.0 עם תמיכת GPU FP32, תלות לא טריוויאלית בפריסה רחבה.