از پیکربندی مدل برای کنترل پاسخ ها استفاده کنید

در هر تماس با یک مدل، می‌توانید پیکربندی مدل را برای کنترل نحوه ایجاد پاسخ توسط مدل ارسال کنید. هر مدل گزینه های پیکربندی مختلفی را ارائه می دهد.

همچنین می‌توانید با استفاده از Google AI Studio ، فرمان‌ها و پیکربندی‌های مدل را آزمایش کنید.

پرش به گزینه های پیکربندی Gemini پرش به گزینه های پیکربندی Imagen



مدل های Gemini را پیکربندی کنید

برای مشاهده محتوا و کد ارائه دهنده خاص در این صفحه، روی ارائه دهنده API Gemini خود کلیک کنید.

این بخش نحوه تنظیم یک پیکربندی برای استفاده با مدل‌های Gemini را به شما نشان می‌دهد و توضیحی درباره هر پارامتر ارائه می‌دهد.

تنظیم یک پیکربندی مدل ( جمینی )

پیکربندی برای موارد استفاده عمومی

پیکربندی برای تمام طول عمر نمونه حفظ می شود. اگر می خواهید از پیکربندی متفاوتی استفاده کنید، یک نمونه GenerativeModel جدید با آن پیکربندی ایجاد کنید.

سویفت

مقادیر پارامترها را در 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,
);

// ...

وحدت

مقادیر پارامترها را در 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

یک Boolean که درک مهر زمانی را برای فایل‌های ورودی فقط صوتی امکان‌پذیر می‌کند.

فقط در هنگام استفاده از تماس‌های generateContent یا generateContentStream قابل استفاده است و نوع ورودی یک فایل فقط صوتی است.

false
جریمه فرکانس
frequencyPenalty
احتمال گنجاندن نشانه هایی را که به طور مکرر در پاسخ تولید شده ظاهر می شوند را کنترل می کند.
مقادیر مثبت توکن هایی را که به طور مکرر در محتوای تولید شده ظاهر می شوند جریمه می کند و احتمال تکرار محتوا را کاهش می دهد.
---
حداکثر توکن های خروجی
maxOutputTokens
حداکثر تعداد نشانه هایی را که می توان در پاسخ تولید کرد را مشخص می کند. ---
جریمه حضور
presencePenalty
احتمال گنجاندن نشانه هایی را که قبلاً در پاسخ تولید شده ظاهر می شوند، کنترل می کند.
مقادیر مثبت توکن هایی را که قبلاً در محتوای تولید شده ظاهر می شوند جریمه می کند و احتمال تولید محتوای متنوع تر را افزایش می دهد.
---
توالی ها را متوقف کنید
stopSequences

فهرستی از رشته‌ها را مشخص می‌کند که به مدل می‌گوید در صورت مواجه شدن با یکی از رشته‌ها در پاسخ، تولید محتوا را متوقف کند.

فقط هنگام استفاده از پیکربندی GenerativeModel قابل استفاده است.

---
دما
temperature
میزان تصادفی بودن پاسخ را کنترل می کند.
دماهای پایین‌تر منجر به پاسخ‌های قطعی‌تر می‌شوند و دماهای بالاتر منجر به پاسخ‌های متنوع یا خلاقانه‌تر می‌شوند.
بستگی به مدل داره
Top-K
topK
تعداد کلمات با بیشترین احتمال مورد استفاده در محتوای تولید شده را محدود می کند.
مقدار top-K 1 به این معنی است که نشانه انتخابی بعدی باید محتمل ترین توکن در واژگان مدل باشد، در حالی که مقدار top-K n به این معنی است که نشانه بعدی باید از میان n توکن محتمل ترین انتخاب شود (همه بر اساس دمای تنظیم شده).
بستگی به مدل داره
Top-P
topP
تنوع محتوای تولید شده را کنترل می کند.
توکن ها از محتمل ترین (نگاه کنید به top-K در بالا) تا کمترین احتمال انتخاب می شوند تا زمانی که مجموع احتمالات آنها با مقدار top-P برابری شود.
بستگی به مدل داره
روش پاسخگویی
responseModality

نوع خروجی پخش جریانی را هنگام استفاده از Live API ، برای مثال متن یا صدا، مشخص می‌کند.

فقط هنگام استفاده از Live API و پیکربندی LiveModel قابل استفاده است.

---
گفتار (صدا)
speechConfig

صدای استفاده شده برای خروجی صوتی پخش شده را هنگام استفاده از Live API مشخص می کند.

فقط هنگام استفاده از Live API و پیکربندی LiveModel قابل استفاده است.

Puck



پیکربندی مدل های Imagen

برای مشاهده محتوا و کد ارائه دهنده خاص در این صفحه، روی ارائه دهنده Imagen API خود کلیک کنید.

این بخش نحوه تنظیم پیکربندی برای استفاده با مدل های Imagen را به شما نشان می دهد و توضیحی برای هر پارامتر ارائه می دهد.

پیکربندی مدل را تنظیم کنید ( Imagen )

پیکربندی برای تمام طول عمر نمونه حفظ می شود. اگر می خواهید از پیکربندی متفاوتی استفاده کنید، یک نمونه ImagenModel جدید با آن پیکربندی ایجاد کنید.

سویفت

مقادیر پارامترها را در 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,
);

// ...

وحدت

استفاده از Imagen هنوز برای Unity پشتیبانی نمی شود، اما به زودی دوباره بررسی کنید!

در بخش بعدی این صفحه می توانید شرح هر پارامتر را بیابید.

توضیحات پارامترها ( Imagen )

در اینجا یک نمای کلی از پارامترهای موجود در سطح بالا وجود دارد. می‌توانید فهرست جامعی از پارامترها و مقادیر آنها را در اسناد Google Cloud بیابید.

پارامتر توضیحات مقدار پیش فرض
اخطار منفی
negativePrompt
توضیحی درباره آنچه می خواهید در تصاویر تولید شده حذف کنید

این پارامتر هنوز توسط imagen-3.0-generate-002 پشتیبانی نمی شود.

---
تعداد نتایج
numberOfImages
تعداد تصاویر تولید شده برای هر درخواست بازگردانده شده است پیش فرض یک تصویر برای مدل های Imagen 3 است
نسبت ابعاد
aspectRatio
نسبت عرض به ارتفاع تصاویر تولید شده پیش فرض مربع است (1:1)
فرمت تصویر
imageFormat
گزینه های خروجی مانند فرمت تصویر (نوع MIME) و سطح فشرده سازی تصاویر تولید شده نوع پیش فرض MIME PNG است
فشرده سازی پیش فرض 75 است (اگر نوع MIME روی JPEG تنظیم شده باشد)
واترمارک
addWatermark
آیا باید یک واترمارک دیجیتال غیرقابل مشاهده (به نام SynthID ) به تصاویر تولید شده اضافه شود پیش فرض برای مدل های Imagen 3 true است
نسل شخص
personGeneration
آیا اجازه تولید افراد بر اساس مدل را می دهد پیش فرض بستگی به مدل دارد



گزینه های دیگر برای کنترل تولید محتوا

  • در مورد طراحی سریع بیشتر بیاموزید تا بتوانید مدل را تحت تأثیر قرار دهید تا خروجی خاصی برای نیازهای شما ایجاد کند.
  • از تنظیمات ایمنی برای تنظیم احتمال دریافت پاسخ هایی که ممکن است مضر تلقی شوند، از جمله سخنان مشوق عداوت و تنفر و محتوای صریح جنسی استفاده کنید.
  • دستورالعمل های سیستم را برای هدایت رفتار مدل تنظیم کنید. این ویژگی مانند مقدمه ای است که قبل از اینکه مدل در معرض دستورالعمل های بیشتر از کاربر نهایی قرار گیرد، اضافه می کنید.
  • یک طرح پاسخ را همراه با اعلان برای تعیین یک طرح خروجی خاص ارسال کنید. این ویژگی بیشتر هنگام تولید خروجی JSON استفاده می‌شود، اما می‌توان از آن برای کارهای طبقه‌بندی نیز استفاده کرد (مانند زمانی که می‌خواهید مدل از برچسب‌ها یا برچسب‌های خاصی استفاده کند).