Temperature (LLM) (HE)

From Systems analysis Wiki
Jump to navigation Jump to search

טמפרטורה (באנגלית: Temperature) בהקשר של מודלי שפה גדולים (LLM) — היא היפר-פרמטר השולט ברמת האקראיות וה"יצירתיות" בעת יצירת טקסט. הוא מווסת את ה"חדות" או, להיפך, את ה"החלקה" של התפלגות ההסתברות של ה-token הבא בכל שלב של decoding. על ידי מניפולציה של הטמפרטורה, ניתן לנהל את האיזון בין צפיות (קוהרנטיות) לבין מגוון (יצירתיות) של הטקסט המיוצר.

הסבר פשוט

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

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

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

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

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

כך, הטמפרטורה אחראית על האיזון בין שתי תכונות של היצירה:

  • צפיות ויציבות של התשובה;
  • מגוון ובלתי-צפיות של הניסוחים.

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

הגדרה תיאורטית

מבחינה מתמטית, הטמפרטורה (T) מוכנסת כמחלק בפונקציית ה-softmax, הממירה את ה-logits של המודל (ui) להתפלגות הסתברות (Pi). הנוסחה היא כדלקמן:

Pi(T)=eui/Tjeuj/T

כאשר:

  • Pi(T) — ההסתברות הסופית של ה-token ה-i בטמפרטורה T.
  • ui — ה-logit (ציון לא מנורמל) עבור ה-token ה-i, כפי שהוציא המודל.
  • T — פרמטר הטמפרטורה (מספר חיובי קפדני). לדוגמה, ב-API של OpenAI עבור רוב המודלים הטווח המותר הוא מ-0 עד 2.0, כאשר 0 הוא מקרה מיוחד של greedy decoding (ראה להלן). בספריות אחרות (Hugging Face Transformers, llama.cpp) הטמפרטורה יכולה לקבל כל ערך חיובי.

חשוב: הטמפרטורה משפיעה על הפלט רק במצבים עם sampling. במצבים ללא sampling (greedy decoding, beam search קלאסי) פרמטר הטמפרטורה אינו משפיע. לדוגמה, ב-Hugging Face Transformers לפעולת הטמפרטורה יש להפעיל את do_sample=True.

השפעת ערך הטמפרטורה

  • T=1 (ערך סטנדרטי): התפלגות ההסתברות נשארת ללא שינוי. זהו softmax סטנדרטי המשקף את תחזיות המקוריות של המודל.
  • T<1 (טמפרטורה נמוכה, לדוגמה 0.20.7): ההתפלגות הופכת חדה יותר או מקורבת לפיק. הסתברויות ה-tokens הסבירים ביותר עולות, ואלה של חסרי הסבירות — יורדות. הדבר הופך את היצירה לדטרמיניסטית וצפויה יותר. המודל בוחר לעיתים קרובות יותר במילים ברורות ובעלות תדירות גבוהה, מה שמגביר את הקוהרנטיות והנכונות הדקדוקית של הטקסט, אך מקטין את מגוונו.
  • T>1 (טמפרטורה גבוהה, לדוגמה 1.11.5): ההתפלגות הופכת חלקה יותר או אחידה יותר. ההבדל בין הסתברויות ה-tokens מתמרח, מה שמגדיל את סיכוי הבחירה ב-tokens פחות סבירים (ו"בלתי-צפויים" יותר). הדבר הופך את הטקסט ליצירתי, מגוון ובלתי-צפוי יותר, אך מגביר את הסיכון ליצירת משפטים לא קוהרנטיים או דקדוקית שגויים.

מקרי קצה

  • T0: בגבול, כאשר הטמפרטורה שואפת לאפס, פונקציית ה-softmax הופכת ל-argmax. המודל תמיד יבחר את ה-token בעל ה-logit הגבוה ביותר. מצב זה שקול ל-decoding חמדני (greedy decoding) והוא דטרמיניסטי לחלוטין. הוא לעיתים קרובות מוביל לטקסט חוזר ושגרתי. הערה: לא ניתן להציב את הערך T=0 ישירות בנוסחה (חלוקה באפס); ברוב המימושים הוא מטופל כמצב מיוחד של בחירה שמרנית מרבית, קרוב ל-greedy decoding. יחד עם זאת, לא כל hosted API מבטיח דטרמיניזם מלא בעת T=0 — לדוגמה, ב-API של Anthropic גם בטמפרטורה אפסית התוצאות עשויות להשתנות במעט.
  • T: כאשר הטמפרטורה שואפת לאינסוף, התפלגות ההסתברות הופכת אחידה. כל ה-tokens באוצר המילים הופכים לבעלי הסתברות שווה, והמודל מייצר "זרם תודעה" אקראי, תוך אובדן מוחלט של קוהרנטיות. בפועל, אינסוף אינו נחוץ: כבר בעת T>2.0 ההתפלגות הופכת כמעט אחידה והטקסט הופך לאוסף בלתי-קוהרנטי של tokens.

שימוש מעשי והמלצות

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

  • למשימות יצירתיות (כתיבת סיפורים, שירה, סלוגנים שיווקיים):
    • מומלצת טמפרטורה גבוהה יותר (T0.71.2).
    • הדבר מעודד את המודל לייצר רעיונות בלתי-צפויים ויצירתיים יותר, להשתמש באוצר מילים מגוון ולהימנע מביטויים שגרתיים.
  • למשימות הדורשות דיוק ועובדתיות (מענה לשאלות, סיכום, יצירת קוד):
    • מומלצת טמפרטורה נמוכה (T0.00.4).
    • הדבר מקטין ווריאטיביות ומגביר את יכולת השחזור של התוצאה, ומאלץ את המודל להיצמד להמשכי הטקסט הסבירים ביותר. בעת T=0 היצירה הופכת דטרמיניסטית (בהינתן seed קבוע ובהיעדר מקורות אקראיות אחרים), הדבר שימושי לבדיקות ולדיבוג, אך עלול להסתיר בעיות המתגלות רק בעת sampling. אולם טמפרטורה נמוכה כשלעצמה אינה מבטיחה דיוק עובדתי — אם המודל אינו מחזיק בידע הנדרש, הוא עלול לייצר תשובה שגויה בביטחון רב. לדיוק עובדתי מרבי, מומלץ לשלב טמפרטורה נמוכה עם שיטות חיפוש בבסיס ידע (RAG) ו-prompting משופר. בתיעוד של OpenAI למשימות חילוץ נתונים ותשובות עובדתיות מומלץ T=0.
  • למשימות reasoning, מתמטיקה ויצירת קוד:
    • בדרך כלל נעשה שימוש ב-טמפרטורות נמוכות יותר, אולם הערך האופטימלי תלוי משמעותית במודל הספציפי ובמשימה.
    • הערה: בחלק ממודלי ה-reasoning (לדוגמה, משפחת OpenAI o1/o3) פרמטרי ה-sampling עשויים להיות מוגבלים או קבועים מצד הספק. ה-chain-of-thought הפנימי דורש התפלגות יציבה, לכן ספקים עשויים לחסום לחלוטין את שינוי הטמפרטורה, או לקבל ערכי משתמש רק בטווח צר.
  • למערכות דיאלוג וצ'אט-בוטים:
    • מומלצת טמפרטורה מתונה (T0.50.8).
    • הדבר מאפשר למצוא איזון: התשובות נשארות קוהרנטיות ורלוונטיות לנושא, אך יחד עם זאת אינן הופכות יבשות ואחידות מדי.

הערה: בתיעוד של OpenAI API מומלץ לשנות או temperature, או top_p, אך לא את שניהם בו-זמנית — אחרת ההתנהגות הופכת לקשה לחיזוי. בדוגמאות העזר של OpenAI API, הערך הנפוץ כברירת מחדל הוא T=1.0.

השוואה עם Top-k ו-Top-p

טמפרטורה, שלא כמו שיטות החיתוך כגון Top-k ו-Top-p (nucleus sampling), פועלת באופן שונה:

  • טמפרטורה מחלקת מחדש את ההסתברויות בין כל ה-tokens באוצר המילים, אך אינה חותכת אף אחד מהם. גם בטמפרטורה נמוכה מאוד, ל-tokens חסרי סבירות נשאר סיכוי זעיר אך לא אפסי להיבחר.
  • Top-k ו-Top-p מציגים חיתוך קשיח, המוציא לחלוטין tokens שאינם נמצאים בגרעין הדגימה. חיתוך כזה מקטין את הסיכון לבחירת tokens מהזנב, אך כשלעצמו הוא היוריסטיקה גסה ועשוי להשמיט המשכים סבירים עם הסתברות "אמיתית" לא אפסית.

בפועל, פרמטרים אלו משמשים לעיתים קרובות ביחד. לדוגמה, ניתן להגדיר טמפרטורה מתונה (לדוגמה, T=0.8) לסגנון הכולל ולהוסיף Top-p (לדוגמה, p=0.9), כדי לחתוך את "הזנב" של ההתפלגות ולהקטין את הסיכון לטעויות גסות. בטמפרטורה נמוכה מאוד (T0) Top-p למעשה מאבד את משמעותו, שכן ההתפלגות ממילא בעלת פיק אחד בלבד.

אינטראקציה של הטמפרטורה עם פרמטרי decoding אחרים

טמפרטורה כמעט אף פעם אינה משמשת בבידוד. בפועל, משלבים אותה עם היפר-פרמטרים אחרים לכוונון עדין של האיזון "יצירתיות ↔ אמינות".

סדר טיפוסי של יישום הפרמטרים

במימושי sampling נפוצים (בפרט, Hugging Face Transformers) הפרמטרים מיושמים בדרך כלל בסדר הבא:

  1. המודל מפיק logits גולמיים (ui).
  2. מיושמים קנסות חזרתיות (repetition / frequency / presence penalty) — שינוי ה-logits בהתבסס על tokens שכבר נוצרו.
  3. טמפרטורה מקנה סקאלה ל-logits: ui/T.
  4. מיושם softmax → מתקבלת התפלגות הסתברות חדשה.
  5. חיתוך (truncation): תחילה Top-k (אם מוגדר), לאחר מכן Top-p או Min-p.
  6. מתוך "הגרעין" הנותר מתבצעת דגימה אקראית (sampling).

בסכמה טיפוסית זו, הטמפרטורה משנה את צורת ההתפלגות לאחר יישום קנסות החזרתיות, אך לפני softmax וסינון. לכן אותו top_p=0.9 עם T=0.2 ועם T=1.5 מניב גודל "גרעין" שונה לחלוטין. קנסות וטמפרטורה מקיימים אינטראקציה לא-לינארית — חשוב לקחת זאת בחשבון בעת בחירת הפרמטרים. הסדר הפנימי של היישום ב-hosted API (OpenAI, Anthropic) אינו מתועד פומבית ברמת פירוט כזו.

Top-p (nucleus sampling) ו-Min-p

Min-p (minimum probability sampling) — שיטת חיתוך חדשה יחסית, הקובעת סף הסתברות מינימלי ביחס ל-token הסביר ביותר (בדרך כלל 0.05–0.1). בניגוד ל-Top-p, היא חותכת tokens לפי סף יחסי (מקושר להסתברות ה-token הטוב ביותר, ולא למסה הקומולטיבית הקבועה), מה שיעיל במיוחד בטמפרטורה גבוהה (>0.8): מונע בחירת tokens לא מתאימים לחלוטין ללא אובדן משמעותי של מגוון. Min-p נתמך על ידי מספר inference stacks פופולריים בקוד פתוח, כולל vLLM ו-llama.cpp.

Repetition / Frequency / Presence penalty

Frequency_penalty ו-presence_penalty (OpenAI API) מקטינים את הסבירות לחזרה על tokens שכבר הופיעו. הם עשויים לפצות על אחד מחסרונות הטמפרטורה הנמוכה — הנטייה לשגרתיות ולמעגליות.

Typical sampling ו-Mirostat

Typical sampling (Meister et al., 2023) בוחר tokens שהסתברותם קרובה לאנטרופיה ה"צפויה" של ההקשר. Mirostat (v2) מכוונן דינמית את פרמטרי החיתוך כדי שה-perplexity המטרה תישאר קבועה — הדבר שימושי לטקסטים ארוכים שבהם יציבות הסגנון קריטית.

דוגמאות ממחישות לכוונון

להלן תצורות לדוגמה עבור סוגי משימות שונים. ערכים אלו אינם המלצות לשימוש כללי — הפרמטרים האופטימליים תלויים במודל הספציפי, במשימה ובסביבת ה-inference.

משימה טמפרטורה שילוב אפשרי לוגיקה
Factual Q&A, סיכום 0.0–0.3 T + top_p=0.9 מזעור ווריאטיביות אקראית
יצירת קוד, מתמטיקה 0.1–0.4 T + repetition_penalty יציבות + הימנעות ממעגליות
דיאלוגים / צ'אט-בוטים 0.6–0.85 T + top_p=0.92 או min_p=0.1 איזון טבעיות וקוהרנטיות
יצירה (סיפורים, שיווק) 0.75–1.1 T + min_p=0.07–0.1 מגוון עם סינון זנב
Long-form / סוכנים 0.5–0.8 Mirostat או T + frequency_penalty שליטה באורך ובקוהרנטיות

עצה כללית: לא כדאי לשנות בו-זמנית temperature ו-top_p בצורה משמעותית. בדרך כלל, נוח יותר לקבע אחד מפרמטרי ה-truncation ולנהל את היצירתיות באמצעות הטמפרטורה — הדבר הופך את התנהגות המודל לצפויה יותר.

מאפיין של מודלים מיושרים מודרניים: במודלים מיושרים מאוד (שעברו RLHF / Constitutional AI / RLAIF) אפקט הטמפרטורה הגבוהה מוחלש בהשוואה למודלי בסיס — המודל נוטה פחות לייצר טקסט לא קוהרנטי גם בעת T=1.2. הערכים האופטימליים הספציפיים עשויים להשתנות עם יציאת דורות מודלים חדשים; ההמלצות שלעיל רלוונטיות נכון לשנים 2025–2026.

ספרות

  • Holtzman, A. et al. (2020). The Curious Case of Neural Text Degeneration. arXiv:1904.09751.
  • Caccia, M. et al. (2018). Language GANs Falling Short. arXiv:1811.02549.
  • Fan, A. et al. (2018). Hierarchical Neural Story Generation. arXiv:1805.04833.
  • Meister, C. et al. (2023). Locally Typical Sampling. arXiv:2202.00666.
  • Hewitt, J.; Manning, C.; Liang, P. (2022). Truncation Sampling as Language Model Desmoothing. arXiv:2210.15191.
  • Su, Y.; Collier, N. (2022). Contrastive Search Is What You Need for Neural Text Generation. arXiv:2210.14140.
  • O'Brien, S.; Lewis, M. (2023). Contrastive Decoding Improves Reasoning in Large Language Models. arXiv:2309.09117.
  • Finlayson, M. et al. (2023). Closing the Curious Case of Neural Text Degeneration. arXiv:2310.01693.
  • Shi, C. et al. (2024). A Thorough Examination of Decoding Methods in the Era of Large Language Models. arXiv:2402.06925.
  • Ravfogel, S. et al. (2023). Conformal Nucleus Sampling. arXiv:2305.02633.
  • Sen, J. et al. (2025). Advancing Decoding Strategies: Enhancements in Locally Typical Sampling for LLMs. arXiv:2506.05387.
  • Basu, S. et al. (2021). Mirostat: A Perplexity-Controlled Neural Text Decoding Algorithm. arXiv:2007.14966.
  • Nguyen, M. N. et al. (2025). Turning Up the Heat: Min-p Sampling for Diverse and High-Quality Text Generation. arXiv:2407.01082.
  • Renze, M.; Guven, E. (2024). The Effect of Sampling Temperature on Problem Solving in Large Language Models. arXiv:2402.05201.
  • Zhang, S. et al. (2024). EDT: Improving Large Language Models' Generation by Entropy-based Dynamic Temperature Sampling. arXiv:2403.14541.
  • Li, L. et al. (2025). Exploring the Impact of Temperature on Large Language Models: Hot or Cold?. arXiv:2506.07295.

ראו גם

  • מודלי שפה גדולים