הקדמה
מודל שפה הוא למעשה מודל חכם ומורכב שנבנה מהרבה רכיבים.
הקונספט הבסיסי עדיין שם - חיבורים, משקולות ולמידה.
אולם במודלי שפה קיים אלמנט נוסף שתייגו אותו בצורה די מחוכת, ניחשתם נכון?
טמפרטורה!
מה זה טמפרטורה?
במודל קיימים מערכים גדולים של ערכים כאשר כל ערך הוא בין 0 ל-1.
המשמעות של הערך הזה היא ההסתברות של מילה להיות קשורה למילה אחרת.
למשל אם הייתי מבקש מכם לנחש את המילה הבאה למשפט:
“קליפורד הוא כלב”
הייתם חושבים על “גדול” ו-“אדום” נכון?
אולם אם ניקח משפט אחר:
“החיה שחיה בים נקראת כלב”
אתם לא תנחשו “גדול” או “אדום” נכון?
במשפט הראשון נוכל לראות שהסבירות למילים מסוימות הן שונות ממשפטים אחרים למרות שאנחנו מבקשים לנחש אחרי אותה המילה “כלב”.
רנדומיזציה
ניקח את המשפט הראשון “קליפורד הוא כלב”.
ונבנה ערכים:
1 | גדול - 0.99 |
בהתחלה מודלים היו בנויים בצורה טיפשה, הם פשוט היו לוקחים את הערך הכי גבוה כי זו הסבירות הגדולה ביותר.
אולם זה גרם לכך שאותם משפטים מג’ונרטים מה שנותן את הגוון של “מכונה”.
אדם לא יינסח את עצמו כל פעם מחדש בדיוק באותו אופן.
לכן זה גרם לשינוי עמוק והוספת הטמפרטורה.
טמפרטורה - מקדם המשנה את הבחירה בצורה רנדומלית, ככל שיותר גבוה ככה גדולה יותר הרנדומיזציה והסיכוי שהוא ייבחר במילה פחות קשורה.
טמפרטורה זה מקדם שמחושב על ההסתברויות ככה שמקדם גבוה יותר גורם להתפלגות גבוה יותר בעוד שערך נמוך יותר כמו 0 ייגרום למודל להיות דטרמניסטי.
Top P
Top-p
(או nucleus sampling
) הוא שיטה לבחירת מילים מתוך המודל.
המודל מדרג את כל המילים לפי הסתברות, ואז שומר רק את הקבוצה הקטנה ביותר של מילים שמכסות למשל 90% מההסתברות (p=0.9).
הבחירה בסוף היא רק מתוך הקבוצה.
כך זה מונע בחירת מילים בהסתברות נמוכה ועדיין שומרים על גיוון מסוים.
אימון מודלים
אני לא אכנס לעומק של אימון מודלים אולם חשוב להזכיר את היכולות האלו.
ככל שאנחנו מתכללים יותר קטעים ומאמנים את המודלים בצורה נרחבת יותר ומדויקת יותר ככה המודל ייסטה פחות לכיוונים בלתי צפויים או בלתי הולמים.
אחרת היינו מקבלים הרבה ג’בריש.
קריאה נוספת
https://community.openai.com/t/cheat-sheet-mastering-temperature-and-top-p-in-chatgpt-api/172683
רנדומיזציה בפעולה
עשיתי ניסוי כאן, שאלתי את צ’אט 100 פעמים את אותה השאלה:What are aliens? Answer in a paragraph
.
עשיתי זאת בעזרת API
ובעזרת המודל gpt-5
.
1 | API_KEY="" |
כמות מילים
בין 90ל160 סך הכל.
כאשר רוב התשובות הן בין 110 ל-140.

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

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

- הגרף מציג אנטרופיה עבור המילים המופיעות בתשובות.
לאורך התשובות של הצ’אט אנו רואים יחסיות עקבית, ז”א המדד הרנדומלי איננו משתנה.
האם 6.5 בערך זה מדד טוב?
זה מראה על גיוון גבוה בתשובות של הצ’אט.
מסקנות
ניתן לראות גיוון גבוה בתשובות של הצ’אט מה שהופך אותו יחסית למאוד יצירתי.
היצירתיות הזו יכולה להיות שלילית כאשר אנו רוצים משהו מדויק יותר ורפטטיבי.
כאשר אנו רוצים לג’נרט קוד אין לנו סיבה להיות יצירתיים על יתר מידה,
זו אחת הסיבות למה כתיבת קוד זה נושא מאוד רלוונטי למודלי שפה.
אולם, בתפקידים כמו כתיבה יצירתית התכונה הזו תעזור לנו, אפשר לבקש ממנו תשובות שוב ושוב עד שגיוון מסויים יימצא חן בעינינו ונבחר בו.
איך להשתפר בשימוש במודל
היו ערניים לתכונת הרנדומיזציה בתשובותיו של Chat-GPT.
תבקשו ממנו לייצר כמה פעמים את אותו הדבר ותבחרו את מה שאתם אוהבים יותר.
ככל שאתם מבקשים תשובה ארוכה יותר, היא תהיה רנדומלית יותר ופחות מדויקת.
השתדלו לבקש ממנו לקצר תשובות כאשר אתם רוצים דיוק רב יותר.
תשובות של הצ’אט
ניתן להסתכל בקובץ להנאתכם:
Download Json Answersתודה על הקריאה!