בכל קריאה למודל, אפשר לשלוח הגדרה של המודל כדי לקבוע איך המודל ייצור תשובה. לכל מודל יש אפשרויות הגדרה שונות.
אפשר גם להתנסות בהנחיות ובהגדרות של מודלים באמצעות 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
|
קובעת את הסבירות לכלול אסימונים שמופיעים שוב ושוב בתשובה שנוצרת. ערכים חיוביים מפעילים סנקציה על אסימונים שמופיעים שוב ושוב בתוכן שנוצר, וכך מפחיתים את הסבירות לתוכן חוזר. |
--- |
מספר האסימונים המקסימלי להוצאה
maxOutputTokens
|
מציין את המספר המקסימלי של האסימונים שניתן ליצור בתגובה. | --- |
קנס על נוכחות
presencePenalty
|
קובע את הסבירות לכלול אסימונים שכבר מופיעים בתגובה שנוצרה. ערכים חיוביים מפעילים סנקציה על אסימונים שכבר מופיעים בתוכן שנוצר, וכך מגדילים את הסבירות ליצירת תוכן מגוון יותר. |
--- |
עצירת רצפים
stopSequences
|
מציין רשימה של מחרוזות שמורות למקרה שהמודל נתקל באחת מהן בתשובה, כדי להורות לו להפסיק ליצור תוכן. רלוונטי רק כשמשתמשים בהגדרה של |
--- |
טמפרטורה
temperature
|
קובעת את מידת האקראיות בתשובה. טמפרטורות נמוכות יותר מניבות תשובות גורליות יותר, וטמפרטורות גבוהות יותר מניבות תשובות מגוונות או יצירתיות יותר. |
תלוי במודל |
Top-K
topK
|
הגבלת מספר המילים עם הסבירות הגבוהה ביותר שנעשה בהן שימוש בתוכן שנוצר. כשהערך של top-K הוא 1 , האסימון הבא שנבחר צריך להיות האסימון עם ההסתברות הגבוהה ביותר מבין כל האסימונים במילון של המודל. כשהערך של top-K הוא n , האסימון הבא שנבחר צריך להיות מתוך n האסימונים עם ההסתברות הגבוהה ביותר (הכול בהתאם לטמפרטורה שהוגדרה).
|
תלוי במודל |
Top-P
topP
|
קובעת את המגוון של התוכן שנוצר. האסימונים נבחרים מהסיכוי הגבוה ביותר (ראו 'ה-K המובילים' למעלה) עד לסיכוי הנמוך ביותר, עד שסכום הסבירויות שלהם שווה לערך top-P. |
תלוי במודל |
Response modality
responseModality
|
מציין את סוג הפלט בסטרימינג כשמשתמשים ב-Live API, למשל טקסט או אודיו. רלוונטי רק כשמשתמשים ב-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
|
היחס בין הרוחב לגובה של התמונות שנוצרו | ברירת המחדל היא ריבוע (1:1) |
פורמט התמונה
imageFormat
|
אפשרויות הפלט, כמו פורמט התמונה (סוג ה-MIME) ורמת הדחיסה של התמונות שנוצרות | סוג ה-MIME שמוגדר כברירת מחדל הוא PNG דחיסת ברירת המחדל היא 75 (אם סוג ה-MIME מוגדר כ-JPEG) |
סימן מים
addWatermark
|
האם להוסיף סימן מים דיגיטלי בלתי נראה (שנקרא SynthID) לתמונות שנוצרו | ברירת המחדל היא true במודלים מסוג Imagen 3
|
יצירת אנשים
personGeneration
|
האם לאפשר ליצירת אנשים על ידי המודל | ברירת המחדל תלויה במודל |
אפשרויות נוספות לשליטה ביצירת תוכן
- מידע נוסף על עיצוב הנחיות כדי שתוכלו להשפיע על המודל כך שיניב פלט ספציפי לצרכים שלכם.
- אתם יכולים להשתמש בהגדרות הבטיחות כדי לשנות את הסבירות לקבלת תשובות שעשויות להיחשב כמזיקות, כולל דברי שטנה ותוכן מיני בוטה.
- מגדירים הוראות מערכת כדי להשפיע על התנהגות המודל. התכונה הזו היא כמו מבוא שמוסיפים לפני שהמודל נחשף להוראות נוספות ממשתמש הקצה.
- מעבירים סכימה של תגובה יחד עם ההנחיה כדי לציין סכימת פלט ספציפית. התכונה הזו משמשת בדרך כלל ליצירת פלט בפורמט JSON, אבל אפשר להשתמש בה גם למשימות סיווג (למשל, כשרוצים שהמודל ישתמש בתוויות או בתגים ספציפיים).