שימוש בתצורת המודל כדי לשלוט בתשובות

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

אפשר גם להתנסות בהנחיות ובהגדרות של מודלים באמצעות Google AI Studio.

מעבר אל Gemini אפשרויות ההגדרה מעבר אל Imagen אפשרויות ההגדרה (הוצא משימוש)



הגדרת מודלים של Gemini

בקטע הזה מוסבר איך להגדיר הגדרה לשימוש עם מודלים של Gemini ומופיע תיאור של כל פרמטר.

הגדרת תצורת מודל (Gemini)

הגדרות לתרחישי שימוש כלליים ב-Gemini

לוחצים על הספק Gemini API כדי לראות בדף הזה תוכן וקוד שספציפיים לספק.

ההגדרה נשמרת למשך משך החיים של המופע. אם רוצים להשתמש בהגדרה אחרת, צריך ליצור מופע חדש של GenerativeModel עם ההגדרה הזו.

Swift

מגדירים את ערכי הפרמטרים ב-GenerationConfig כחלק מיצירת מופע של GenerativeModel.


import FirebaseAILogic

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
let config = GenerationConfig(
  candidateCount: 1,
  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`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
val config = generationConfig {
    candidateCount = 1
    maxOutputTokens = 200
    stopSequences = listOf("red")
}

// 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`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.candidateCount = 1;
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");

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`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
const generationConfig = {
  candidate_count: 1,
  maxOutputTokens: 200,
  stopSequences: ["red"],
};

// 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`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
final generationConfig = GenerationConfig(
  candidateCount: 1,
  maxOutputTokens: 200,
  stopSequences: ["red"],
);

// 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`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
var generationConfig = new GenerationConfig(
  candidateCount: 1,
  maxOutputTokens: 200,
  stopSequences: new string[] { "red" }
);

// 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 API כדי לראות בדף הזה תוכן וקוד שספציפיים לספק.

ההגדרה נשמרת למשך משך החיים של המופע. אם רוצים להשתמש בהגדרה אחרת, צריך ליצור מופע חדש של LiveModel עם ההגדרה הזו.

Swift

מגדירים את ערכי הפרמטרים ב-liveGenerationConfig במהלך האתחול של מופע LiveModel:


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here)
let config = LiveGenerationConfig(
  maxOutputTokens: 200,
  responseModalities: [.audio],
  speech: SpeechConfig(voiceName: "Fenrir"),
)

// Specify the config as part of creating the `liveModel` instance
let liveModel = FirebaseAI.firebaseAI(backend: .googleAI()).liveModel(
  modelName: "GEMINI_LIVE_MODEL_NAME",
  generationConfig: config
)

// ...

Kotlin

מגדירים את ערכי הפרמטרים ב-LiveGenerationConfig כחלק מיצירת מופע של LiveModel.


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here)
val config = liveGenerationConfig {
    maxOutputTokens = 200
    responseModality = ResponseModality.AUDIO
    speechConfig = SpeechConfig(voice = Voices.FENRIR)
}

// Specify the config as part of creating the `LiveModel` instance
val liveModel = Firebase.ai(backend = GenerativeBackend.googleAI()).liveModel(
    modelName = "GEMINI_LIVE_MODEL_NAME",
    generationConfig = config
)

// ...

Java

מגדירים את ערכי הפרמטרים ב-LiveGenerationConfig כחלק מיצירת מופע של LiveModel.


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here)
LiveGenerationConfig.Builder configBuilder = new LiveGenerationConfig.Builder();
configBuilder.setMaxOutputTokens(200);
configBuilder.setResponseModality(ResponseModality.AUDIO);

configBuilder.setSpeechConfig(new SpeechConfig(Voices.FENRIR));

LiveGenerationConfig config = configBuilder.build();

// Specify the config as part of creating the `LiveModel` instance
LiveGenerativeModel lm = FirebaseAI.getInstance(GenerativeBackend.googleAI()).liveModel(
          "GEMINI_LIVE_MODEL_NAME",
          config
);

// ...

Web

מגדירים את ערכי הפרמטרים ב-LiveGenerationConfig במהלך האתחול של מופע LiveGenerativeModel:


// ...

const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Set parameter values in a `LiveGenerationConfig` (example values shown here)
const liveGenerationConfig = {
  maxOutputTokens: 200,
  responseModalities: [ResponseModality.AUDIO],
  speechConfig: {
    voiceConfig: {
      prebuiltVoiceConfig: { voiceName: "Fenrir" },
    },
  },
};

// Specify the config as part of creating the `LiveGenerativeModel` instance
const liveModel = getLiveGenerativeModel(ai, {
  model: "GEMINI_LIVE_MODEL_NAME",
  liveGenerationConfig,
});

// ...

Dart

מגדירים את ערכי הפרמטרים ב-LiveGenerationConfig כחלק מיצירת מופע של LiveGenerativeModel.


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here)
final config = LiveGenerationConfig(
  maxOutputTokens: 200,
  responseModalities: [ResponseModalities.audio],
  speechConfig: SpeechConfig(voiceName: 'Fenrir'),
);

// Specify the config as part of creating the `liveGenerativeModel` instance
final liveModel = FirebaseAI.googleAI().liveGenerativeModel(
  model: 'GEMINI_LIVE_MODEL_NAME',
  liveGenerationConfig: config,
);

// ...

Unity

מגדירים את ערכי הפרמטרים ב-LiveGenerationConfig כחלק מיצירת מופע של LiveModel.


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here)
var config = new LiveGenerationConfig(
  maxOutputTokens: 200,
  responseModalities: new[] { ResponseModality.Audio },
  speechConfig: SpeechConfig.UsePrebuiltVoice("Fenrir")
);

// Specify the config as part of creating the `LiveModel` instance
var liveModel = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI()).GetLiveModel(
  modelName: "GEMINI_LIVE_MODEL_NAME",
  liveGenerationConfig: config
);

// ...

בקטע הבא בדף הזה מופיע תיאור של כל פרמטר.

תיאור הפרמטרים (Gemini)

ריכזנו כאן סקירה כללית של הפרמטרים הזמינים, לפי הצורך. רשימה מקיפה של פרמטרים והערכים שלהם זמינה במסמכי התיעוד של ספק Gemini API שבחרתם: Gemini Developer API או Vertex AI Gemini API.

פרמטר תיאור ערך ברירת מחדל
חותמת זמן של אודיו
audioTimestamp

ערך בוליאני שמאפשר להבין חותמות זמן בקובצי קלט של אודיו בלבד.

רלוונטי רק כשמשתמשים בשיחות generateContent או generateContentStream וסוג הקלט הוא קובץ אודיו בלבד.

false
מספר המועמדים
candidateCount

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

ערכים נתמכים: 1 עד 8 (כולל)

רלוונטי רק כשמשתמשים ב-generateContent ובמודלים העדכניים ביותר של Gemini. אין תמיכה במודלים של Live API וב-generateContentStream.

1
קנס על תדירות
frequencyPenalty
הפרמטר הזה קובע את הסבירות להכללת טוקנים שמופיעים שוב ושוב בתשובה שנוצרת.
ערכים חיוביים מענישים טוקנים שמופיעים שוב ושוב בתוכן שנוצר, ומקטינים את ההסתברות לחזרה על תוכן.
---
מספר מקסימלי של טוקנים בפלט
maxOutputTokens
מציין את המספר המקסימלי של טוקנים שאפשר ליצור בתשובה. ---
קנס על נוכחות
presencePenalty
שליטה בהסתברות להכללת טוקנים שכבר מופיעים בתשובה שנוצרה.
ערכים חיוביים מענישים טוקנים שכבר מופיעים בתוכן שנוצר, ומגדילים את ההסתברות ליצירת תוכן מגוון יותר.
---
הפסקת רצפים
stopSequences

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

רלוונטי רק כשמשתמשים בהגדרת GenerativeModel.

---
אופני תגובה
responseModalities

מציין את סוג הפלט (כמו טקסט, אודיו או תמונות).

האפשרות הזו רלוונטית רק כשמשתמשים במודלים של Live API, או כשמשתמשים במודל Gemini שיכול להפיק פלט רב-אופני (כמו המודלים Nano Banana).

---
דיבור (קול)
speechConfig

מציינת את הקול שמשמש לפלט האודיו בסטרימינג כשמשתמשים ב-Live API.

רלוונטי רק כשמשתמשים במודלים של Live API.

Puck
מאפייני התמונה
imageConfig

מציין את יחס הגובה-רוחב והרזולוציה של התמונות שנוצרו.

ערכים נתמכים: ראו הגדרה של יצירת תמונות

ההגדרה רלוונטית רק כשמשתמשים במודל Gemini שיכול ליצור תמונות (כמו מודלי Nano Banana).

יחס גובה-רוחב של 1:1 (ריבוע)
רזולוציה של 1024x1024

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

פרמטר תיאור ערך ברירת מחדל
טמפרטורה
temperature
הפרמטר הזה קובע את מידת האקראיות בתשובה.
טמפרטורות נמוכות מובילות לתשובות יותר דטרמיניסטיות, וטמפרטורות גבוהות מובילות לתשובות יותר מגוונות או יצירתיות.
תלוי במודל
Top-K
topK
מגביל את מספר המילים עם ההסתברות הכי גבוהה שמשמשות בתוכן שנוצר.
ערך Top-K של 1 אומר שהטוקן הבא שייבחר צריך להיות הסביר ביותר מבין כל הטוקנים באוצר המילים של המודל, ואילו ערך Top-K של n אומר שהטוקן הבא צריך להיבחר מבין n הטוקנים הסבירים ביותר (הכול מבוסס על רמת האקראיות שהוגדרה).
תלוי במודל
Top-P
topP
שולט במגוון התוכן שנוצר.
הטוקנים נבחרים מההסתברות הגבוהה ביותר (ראו top-K למעלה) ועד להסתברות הנמוכה ביותר, עד שסכום ההסתברויות שלהם שווה לערך top-P.
תלוי במודל



הגדרת מודלים של Imagen

לוחצים על הספק Imagen API כדי לראות בדף הזה תוכן וקוד שספציפיים לספק.

בקטע הזה מוסבר איך להגדיר הגדרה לשימוש עם מודלים של Imagen ומופיע תיאור של כל פרמטר.

הגדרת תצורת מודל (Imagen)

ההגדרה נשמרת למשך משך החיים של המופע. אם רוצים להשתמש בהגדרה אחרת, צריך ליצור מופע חדש של ImagenModel עם ההגדרה הזו.

Swift

מגדירים את הערכים של הפרמטרים ב-ImagenGenerationConfig כחלק מיצירת מופע של ImagenModel.


import FirebaseAILogic

// 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

מגדירים את הערכים של הפרמטרים ב-ImagenGenerationConfig כחלק מיצירת מופע של ImagenModel.


using Firebase.AI;

// Set parameter values in a `ImagenGenerationConfig` (example values shown here)
var config = new ImagenGenerationConfig(
  numberOfImages: 2,
  aspectRatio: ImagenAspectRatio.Landscape16x9,
  imageFormat: ImagenImageFormat.Jpeg(100)
);

// Initialize the Gemini Developer API backend service
// Specify the config as part of creating the `ImagenModel` instance
var model = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI()).GetImagenModel(
  modelName: "imagen-4.0-generate-001",
  generationConfig: config
);

// ...

בקטע הבא בדף הזה מופיע תיאור של כל פרמטר.

תיאור הפרמטרים (Imagen)

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

פרמטר תיאור ערך ברירת מחדל
הנחיה שלילית
negativePrompt
תיאור של מה שרוצים להשמיט בתמונות שנוצרו

הפרמטר הזה עדיין לא נתמך על ידי imagen-3.0-generate-002.

---
מספר התוצאות
numberOfImages
מספר התמונות שנוצרו ומוחזרות לכל בקשה ברירת המחדל היא תמונה אחת
יחס גובה-רוחב
aspectRatio
יחס הגובה-רוחב של התמונות שנוצרו ברירת המחדל היא פורמט ריבועי (1:1)
פורמט התמונה
imageFormat
אפשרויות הפלט, כמו פורמט התמונה (סוג MIME) ורמת הדחיסה של התמונות שנוצרו סוג ה-MIME שמוגדר כברירת מחדל הוא PNG
הדחיסה שמוגדרת כברירת מחדל היא 75 (אם סוג ה-MIME מוגדר כ-JPEG)
Watermark
addWatermark
האם להוסיף סימן מים דיגיטלי בלתי נראה (שנקרא SynthID) לתמונות שנוצרו על ידי AI ברירת המחדל היא true
יצירת דמויות
personGeneration
האם לאפשר למודל ליצור תמונות של אנשים ברירת המחדל תלויה במודל
הוספת מאפייני בטיחות
includeSafetyAttributes
האם להפעיל עיגול של ציוני אתיקה של בינה מלאכותית לרשימה של מאפייני בטיחות בתשובות לקלט ולפלט לא מסוננים

קטגוריות של מאפייני בטיחות: "Death, Harm & Tragedy", "Firearms & Weapons", "Hate", "Health", "Illicit Drugs", "Politics", "Porn", "Religion & Belief", "Toxic", "Violence", "Vulgarity", "War & Conflict".

ברירת המחדל היא false



אפשרויות נוספות לשליטה ביצירת תוכן

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