בכל קריאה למודל, אפשר לשלוח הגדרת מודל כדי לשלוט באופן שבו המודל יוצר תגובה. כל מודל מציע אפשרויות הגדרה שונות.
אפשר גם להתנסות בהנחיות ובהגדרות של מודלים באמצעות Google AI Studio.Gemini מעבר לאפשרויות ההגדרה של Imagen מעבר לאפשרויות ההגדרה של
הגדרת Gemini מודלים
לוחצים על הספק Gemini API כדי לראות בדף הזה תוכן וקוד שספציפיים לספק. |
בקטע הזה מוסבר איך להגדיר הגדרה לשימוש במודלים של Gemini, ומופיע תיאור של כל פרמטר.
הגדרת תצורת מודל (Gemini)
הגדרות לתרחישי שימוש כלליים
ההגדרה נשמרת למשך כל חיי המופע. אם רוצים להשתמש בהגדרה אחרת, צריך ליצור מופע חדש של GenerativeModel
עם ההגדרה הזו.
Swift
מגדירים את ערכי הפרמטרים ב-GenerationConfig
כחלק מיצירת מופע של GenerativeModel
.
import FirebaseAI
// Set parameter values in a `GenerationConfig` (example values shown here)
let config = GenerationConfig(
temperature: 0.9,
topP: 0.1,
topK: 16,
maxOutputTokens: 200,
stopSequences: ["red"]
)
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).generativeModel(
modelName: "GEMINI_MODEL_NAME",
generationConfig: config
)
// ...
Kotlin
מגדירים את ערכי הפרמטרים ב-GenerationConfig
כחלק מיצירת מופע של GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
val config = generationConfig {
maxOutputTokens = 200
stopSequences = listOf("red")
temperature = 0.9f
topK = 16
topP = 0.1f
}
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
modelName = "GEMINI_MODEL_NAME",
generationConfig = config
)
// ...
Java
מגדירים את ערכי הפרמטרים ב-GenerationConfig
כחלק מיצירת מופע של GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
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 config = configBuilder.build();
// Specify the config as part of creating the `GenerativeModel` instance
GenerativeModelFutures model = GenerativeModelFutures.from(
FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
"GEMINI_MODEL_NAME",
config
);
);
// ...
Web
מגדירים את ערכי הפרמטרים ב-GenerationConfig
כחלק מיצירת מופע של GenerativeModel
.
// ...
// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Set parameter values in a `GenerationConfig` (example values shown here)
const generationConfig = {
max_output_tokens: 200,
stop_sequences: ["red"],
temperature: 0.9,
top_p: 0.1,
top_k: 16,
};
// Specify the config as part of creating the `GenerativeModel` instance
const model = getGenerativeModel(ai, { model: "GEMINI_MODEL_NAME", generationConfig });
// ...
Dart
מגדירים את הערכים של הפרמטרים ב-GenerationConfig
כחלק מיצירת מופע של GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
final generationConfig = GenerationConfig(
maxOutputTokens: 200,
stopSequences: ["red"],
temperature: 0.9,
topP: 0.1,
topK: 16,
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
final model = FirebaseAI.googleAI().generativeModel(
model: 'GEMINI_MODEL_NAME',
config: generationConfig,
);
// ...
Unity
מגדירים את ערכי הפרמטרים ב-GenerationConfig
כחלק מיצירת מופע של GenerativeModel
.
// ...
// Set parameter values in a `GenerationConfig` (example values shown here)
var generationConfig = new GenerationConfig(
maxOutputTokens: 200,
stopSequences: new string[] { "red" },
temperature: 0.9f,
topK: 16,
topP: 0.1f
);
// Specify the config as part of creating the `GenerativeModel` instance
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
var model = ai.GetGenerativeModel(
modelName: "GEMINI_MODEL_NAME",
generationConfig: generationConfig
);
בקטע הבא בדף הזה מופיע תיאור של כל פרמטר.
ההגדרה של Gemini Live API
תיאור הפרמטרים (Gemini)
ריכזנו כאן סקירה כללית של הפרמטרים הזמינים, לפי הצורך. רשימה מקיפה של פרמטרים והערכים שלהם זמינה במסמכי התיעוד של Gemini Developer API.
פרמטר | תיאור | ערך ברירת מחדל |
---|---|---|
חותמת זמן של אודיו
audioTimestamp
|
ערך בוליאני שמאפשר להבין חותמות זמן בקובצי קלט של אודיו בלבד. רלוונטי רק כשמשתמשים בשיחות |
false |
קנס על תדירות
frequencyPenalty
|
ההגדרה הזו קובעת את ההסתברות להכללת טוקנים שמופיעים שוב ושוב בתשובה שנוצרת. ערכים חיוביים מענישים טוקנים שמופיעים שוב ושוב בתוכן שנוצר, ומקטינים את ההסתברות לחזרה על תוכן. |
--- |
Max output tokens
maxOutputTokens
|
מציין את המספר המקסימלי של טוקנים שאפשר ליצור בתשובה. | --- |
קנס על נוכחות
presencePenalty
|
שליטה בהסתברות להכללת טוקנים שכבר מופיעים בתשובה שנוצרה. ערכים חיוביים מענישים טוקנים שכבר מופיעים בתוכן שנוצר, ומגדילים את ההסתברות ליצירת תוכן מגוון יותר. |
--- |
הפסקת רצפים
stopSequences
|
מציינת רשימה של מחרוזות שאומרות למודל להפסיק ליצור תוכן אם אחת מהמחרוזות מופיעה בתשובה. רלוונטי רק כשמשתמשים בהגדרה של |
--- |
טמפרטורה
temperature
|
שליטה במידת הרנדומיזציה בתשובה. טמפרטורות נמוכות מובילות לתשובות יותר דטרמיניסטיות, וטמפרטורות גבוהות מובילות לתשובות יותר מגוונות או יצירתיות. |
תלוי במודל |
Top-K
topK
|
מגביל את מספר המילים עם ההסתברות הגבוהה ביותר שמשמשות בתוכן שנוצר. ערך של 1 במדד top-K אומר שהאסימון הבא שייבחר צריך להיות האסימון הסביר ביותר מבין כל האסימונים באוצר המילים של המודל, ואילו ערך של n במדד top-K אומר שהאסימון הבא שייבחר צריך להיות מבין n האסימונים הסבירים ביותר (הכול בהתאם לטמפרטורה שהוגדרה).
|
תלוי במודל |
Top-P
topP
|
קובעת את המגוון של התוכן שנוצר. האסימונים נבחרים מהסבירים ביותר (ראו למעלה את top-K) ועד לסבירים פחות עד שסכום ההסתברויות שלהם שווה לערך top-P. |
תלוי במודל |
אופן התגובה
responseModality
|
מציין את סוג הפלט שמוזרם כשמשתמשים ב-Live API או בפלט מולטימודאלי מקורי של מודל Gemini, למשל טקסט, אודיו או תמונות. רלוונטי רק כשמשתמשים ב-Live API ובהגדרת |
--- |
דיבור (קול)
speechConfig
|
מציינת את הקול שמשמש לפלט האודיו בסטרימינג כשמשתמשים ב-Live API. רלוונטי רק כשמשתמשים ב-Live API ובהגדרת |
Puck |
הגדרת Imagen מודלים
לוחצים על הספק Imagen API כדי לראות בדף הזה תוכן וקוד שספציפיים לספק. |
בקטע הזה מוסבר איך להגדיר הגדרה לשימוש במודלים של Imagen, ומופיע תיאור של כל פרמטר.
הגדרת תצורת מודל (Imagen)
ההגדרה נשמרת למשך כל חיי המופע. אם רוצים להשתמש בהגדרה אחרת, צריך ליצור מופע חדש של ImagenModel
עם ההגדרה הזו.
Swift
מגדירים את הערכים של הפרמטרים ב-ImagenGenerationConfig
כחלק מיצירת מופע של ImagenModel
.
import FirebaseAI
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
let config = ImagenGenerationConfig(
negativePrompt: "frogs",
numberOfImages: 2,
aspectRatio: .landscape16x9,
imageFormat: .jpeg(compressionQuality: 100),
addWatermark: false
)
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).imagenModel(
modelName: "IMAGEN_MODEL_NAME",
generationConfig: config
)
// ...
Kotlin
מגדירים את הערכים של הפרמטרים ב-ImagenGenerationConfig
כחלק מיצירת מופע של ImagenModel
.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
val config = ImagenGenerationConfig {
negativePrompt = "frogs",
numberOfImages = 2,
aspectRatio = ImagenAspectRatio.LANDSCAPE_16x9,
imageFormat = ImagenImageFormat.jpeg(compressionQuality = 100),
addWatermark = false
}
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `GenerativeModel` instance
val model = Firebase.ai(backend = GenerativeBackend.vertexAI()).imagenModel(
modelName = "IMAGEN_MODEL_NAME",
generationConfig = config
)
// ...
Java
מגדירים את הערכים של הפרמטרים ב-ImagenGenerationConfig
כחלק מיצירת מופע של ImagenModel
.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
ImagenGenerationConfig config = new ImagenGenerationConfig.Builder()
.setNegativePrompt("frogs")
.setNumberOfImages(2)
.setAspectRatio(ImagenAspectRatio.LANDSCAPE_16x9)
.setImageFormat(ImagenImageFormat.jpeg(100))
.setAddWatermark(false)
.build();
// Specify the config as part of creating the `ImagenModel` instance
ImagenModelFutures model = ImagenModelFutures.from(
FirebaseAI.getInstance(GenerativeBackend.googleAI())
.imagenModel(
"IMAGEN_MODEL_NAME",
config
);
);
// ...
Web
מגדירים את הערכים של הפרמטרים ב-ImagenGenerationConfig
כחלק מיצירת מופע של ImagenModel
.
// ...
// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
const generationConfig = {
negativePrompt: "frogs",
numberOfImages: 2,
aspectRatio: ImagenAspectRatio.LANDSCAPE_16x9,
imageFormat: ImagenImageFormat.jpeg(100),
addWatermark: false
};
// Specify the config as part of creating the `ImagenModel` instance
const model = getImagenModel(ai, { model: "IMAGEN_MODEL_NAME", generationConfig });
// ...
Dart
מגדירים את הערכים של הפרמטרים ב-ImagenGenerationConfig
כחלק מיצירת מופע של ImagenModel
.
// ...
// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
final generationConfig = ImagenGenerationConfig(
negativePrompt: 'frogs',
numberOfImages: 2,
aspectRatio: ImagenAspectRatio.landscape16x9,
imageFormat: ImagenImageFormat.jpeg(compressionQuality: 100)
addWatermark: false
);
// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
final model = FirebaseAI.googleAI().imagenModel(
model: 'IMAGEN_MODEL_NAME',
config: generationConfig,
);
// ...
Unity
עדיין אין תמיכה בשימוש ב-Imagen ב-Unity, אבל כדאי לבדוק שוב בקרוב.
בקטע הבא בדף הזה מופיע תיאור של כל פרמטר.
תיאור הפרמטרים (Imagen)
ריכזנו כאן סקירה כללית של הפרמטרים הזמינים, לפי הצורך. רשימה מקיפה של פרמטרים והערכים שלהם זמינה במסמכי התיעוד של Google Cloud.
פרמטר | תיאור | ערך ברירת מחדל |
---|---|---|
הנחיה שלילית
negativePrompt
|
תיאור של מה שרוצים להשמיט בתמונות שנוצרו
הפרמטר הזה עדיין לא נתמך על ידי |
--- |
מספר התוצאות
numberOfImages
|
מספר התמונות שנוצרו ומוחזרות לכל בקשה | ברירת המחדל היא תמונה אחת למודלים של Imagen 3 |
יחס גובה-רוחב
aspectRatio
|
היחס בין הרוחב לגובה של תמונות שנוצרו על ידי AI | ברירת המחדל היא ריבוע (1:1) |
פורמט התמונה
imageFormat
|
אפשרויות הפלט, כמו פורמט התמונה (סוג MIME) ורמת הדחיסה של התמונות שנוצרו | סוג ה-MIME שמוגדר כברירת מחדל הוא PNG הדחיסה שמוגדרת כברירת מחדל היא 75 (אם סוג ה-MIME מוגדר כ-JPEG) |
Watermark
addWatermark
|
האם להוסיף סימן מים דיגיטלי לא נראה (שנקרא SynthID) לתמונות שנוצרו | ברירת המחדל היא true עבור מודלים של Imagen 3
|
יצירת תמונות של אנשים
personGeneration
|
האם לאפשר למודל ליצור תמונות של אנשים | ברירת המחדל תלויה במודל |
אפשרויות נוספות לשליטה ביצירת תוכן
- מידע נוסף על עיצוב הנחיה כדי להשפיע על המודל ליצור פלט שמתאים לצרכים שלכם.
- אפשר להשתמש בהגדרות הבטיחות כדי לשנות את הסיכוי לקבל תשובות שעלולות להיחשב כמזיקות, כולל דברי שטנה ותוכן מיני בוטה.
- הגדרת הוראות למערכת כדי לכוון את התנהגות המודל. התכונה הזו היא כמו הקדמה שמוסיפים לפני שהמודל נחשף להוראות נוספות ממשתמש הקצה.
- מעבירים סכימת תגובה יחד עם ההנחיה כדי לציין סכימת פלט ספציפית. התכונה הזו שימושית בעיקר כשיוצרים פלט JSON, אבל אפשר להשתמש בה גם למשימות סיווג (למשל, כשרוצים שהמודל ישתמש בתוויות או בתגים ספציפיים).