דילוג לתוכן

קוונטיזציה

Quantization

קוונטיזציה (Quantization) מקטינה את עלות החישוב והזיכרון של הרצת מודל, על ידי ייצוג המשקלים והאקטיבציות בסוגי נתונים בדיוק נמוך יותר, למשל int8 במקום float32. המקרים הנפוצים הם מעבר מ-float32 ל-float16 ומ-float32 ל-int8. כך אפשר להריץ מודלים פתוחים על שרת קטן או על מכשיר קצה, אבל הירידה בדיוק עלולה לפגוע באיכות, ולכן צריך לבדוק על נתונים אמיתיים.

עודכן ב־

איך זה קשור לאוטומציה?

הרצת מודל דורשת הרבה חישוב וזיכרון. קוונטיזציה מקטינה את העלות הזו בעזרת ייצוג המשקלים והאקטיבציות בסוגי נתונים בדיוק נמוך יותר, למשל int8 במקום float32. המקרים הנפוצים הם מעבר מ־float32 ל־float16 ומ־float32 ל־int8, והמחיר הוא ירידה אפשרית בדיוק.

דוגמאות שימוש באוטומציה

הדוגמאות להמחשה. את החיבורים והכללים מתאימים למערכות ולתהליך של העסק.

מודל פתוח על שרת קטן

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

בדיקה על נתונים אמיתיים

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

באילו כלים זה רלוונטי?

Hugging Face
ההגדרה לקוחה ממדריך הקוונטיזציה של Hugging Face Optimum.
Ollama
מודלים פתוחים שמוקטנים בקוונטיזציה הם הדרך להריץ אותם על שרת קטן או מכשיר קצה.

מה חשוב לבדוק לפני שמיישמים?

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

מונחים שיעזרו להעמיק

מקורות והמשך קריאה