כל קריאה ששולחים למודל כוללת ערכי פרמטרים שקובעים איך המודל יוצר תשובה. המודל יכול ליצור תוצאות שונות עבור ערכים שונים של פרמטרים. כדאי לנסות ערכי פרמטרים שונים כדי לקבל את הערכים הטובים ביותר למשימה. הפרמטרים שזמינים למודלים שונים עשויים להיות שונים.
ההגדרה נשמרת לכל משך החיים של השירות ושל מופע המודל של Vertex AI שהותחל. כדי לעדכן את הגדרות המודל, צריך לאתחל מחדש את מופע המודל.
בהמשך הדף הזה נסביר איך להגדיר פרמטרים של מודל.
תיאור של כל פרמטר
הפרמטרים הנפוצים ביותר הם:
בקטעים הבאים בדף זה מוסבר על כל אחד מהפרמטרים האלה.
מספר מקסימלי של אסימוני פלט
המספר המקסימלי של אסימונים שאפשר ליצור בתשובה. אסימון הוא ארבעה תווים בערך. 100 אסימונים תואמים ל-20 מילים בערך.
מציינים ערך נמוך יותר לתשובות קצרות וערך גבוה יותר לתשובות ארוכות יותר.
טמפרטורה
הטמפרטורה משמשת לדגימה במהלך יצירת התשובה, שמתרחשת כשמפעילים את topP
ואת topK
. הטמפרטורה שולטת במידת האקראיות בבחירת האסימון. טמפרטורות נמוכות טובות להנחיות עם ציפייה לתשובה deterministית יותר, ולא לתשובה פתוחה או יצירתית, ואילו טמפרטורות גבוהות יכולות להוביל לתוצאות יותר מגוונות או יצירתיות. הטמפרטורה של 0
היא דטרמיניסטית, כלומר תמיד נבחרת התגובה בעלת הסבירות הגבוהה ביותר.
ברוב התרחישים לדוגמה, כדאי להתחיל בטמפרטורה של 0.2
. אם התשובה שמוחזרת על ידי המודל קצרה מדי, גנרית מדי או שהיא תשובה חלופית, כדאי לנסות להגדיל את הטמפרטורה.
למעלה מ-K
האפשרות Top-K משנה את האופן שבו המודל בוחר אסימונים לפלט. כשה-top-K הוא 1
, המשמעות היא שהאסימון הבא שנבחר הוא בעל ההסתברות הגבוהה ביותר מבין כל האסימונים במילון של המודל (נקרא גם פענוח חמדן). לעומת זאת, כשה-top-K הוא 3
, המשמעות היא שהאסימון הבא נבחר מתוך שלושת האסימונים עם ההסתברות הגבוהה ביותר באמצעות טמפרטורה.
בכל שלב של בחירת אסימונים, מתבצעת דגימה של 'ה-K הטובים ביותר' עם ההסתברויות הגבוהות ביותר. לאחר מכן, האסימונים מסוננים עוד יותר על סמך top-P, והאסימון הסופי נבחר באמצעות דגימת טמפרטורה.
מציינים ערך נמוך יותר כדי לקבל פחות תשובות אקראיות וערך גבוה יותר כדי לקבל יותר תשובות אקראיות. ערך ברירת המחדל של top-K הוא 40
.
Top-P
Top-P משנה את האופן שבו המודל בוחר אסימונים לפלט. האסימונים נבחרים מהסיכוי הגבוה ביותר (ראו top-K) עד הנמוך ביותר, עד שסכום הסיכויים שלהם שווה לערך top-P. לדוגמה, אם לאסימונים A, B ו-C יש הסתברות ל-0.3, 0.2 ו-0.1 והערך P הוא 0.5
, המודל יבחר את A או B כאסימון הבא על ידי שימוש בטמפרטורה, ולא יכלול את C כמועמד.
מציינים ערך נמוך יותר כדי לקבל פחות תשובות אקראיות וערך גבוה יותר כדי לקבל יותר תשובות אקראיות. ערך ברירת המחדל של top-P הוא 0.95
.
הגדרת פרמטרים של מודל
מגדירים את הפרמטרים של המודל ב-generationConfig
במהלך האתחול של המודל. הנה דוגמה בסיסית:
Kotlin+KTX
// ...
val config = generationConfig {
maxOutputTokens = 200
stopSequences = listOf("red")
temperature = 0.9f
topK = 16
topP = 0.1f
}
val generativeModel = Firebase.vertexAI.generativeModel(
modelName = "MODEL_NAME",
generationConfig = config
)
// ...
Java
// ...
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");
configBuilder.temperature = 0.9f;
configBuilder.topK = 16;
configBuilder.topP = 0.1f;
GenerationConfig generationConfig = configBuilder.build();
GenerativeModel gm = FirebaseVertexAI.getInstance().generativeModel(
"MODEL_NAME",
generationConfig
);
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
// ...
אפשרויות נוספות לשליטה ביצירת תוכן
- מידע נוסף על עיצוב הנחיות כדי שתוכלו להשפיע על המודל וליצור פלט ספציפי לצרכים שלכם.
- אתם יכולים להשתמש בהגדרות הבטיחות כדי לשנות את הסבירות לקבלת תשובות שעשויות להיחשב כפוגעניות, כולל דברי שטנה ותוכן מיני בוטה.
- מגדירים הוראות מערכת כדי לשלוט בהתנהגות המודל. התכונה הזו דומה ל"הקדמה" שמוסיפים לפני שהמודל נחשף להוראות נוספות של משתמש הקצה.
- מעבירים סכימת פלט יחד עם ההנחיה לציון סכימת פלט ספציפית. התכונה הזו משמשת בדרך כלל ליצירת פלט JSON, אבל אפשר להשתמש בה גם למשימות סיווג (למשל, כשרוצים שהמודל ישתמש בתוויות או בתגים ספציפיים).