Yanıtları kontrol etmek için model yapılandırmasını kullanma

Modelin yanıt oluşturma şeklini kontrol etmek için her model çağrısında bir model yapılandırması gönderebilirsiniz. Her model, maxOutputTokens ayarı veya düşünme, yanıt modları, resimler, konuşma ya da Ses Etkinliği Algılama (VAD) için özel yapılandırmalar gibi farklı yapılandırma seçeneklerini destekler.

Bir Gemini modeline erişirken çoğu kullanım alanında modeli GenerationConfig kullanarak yapılandırırsınız. Ancak Gemini Live API modeli yapılandırıyorsanız LiveGenerationConfig kullanırsınız.

Bu sayfada, Gemini modellerinin yapılandırmasının nasıl ayarlanacağı gösterilmekte ve kullanılabilir parametrelerin tablosu sunulmaktadır.

Gemini yapılandırmasına git Gemini Live API yapılandırmasına git

Gemini modelleri için GenerationConfig

Bu sayfada sağlayıcıya özel içerikleri ve kodları görüntülemek için Gemini API sağlayıcınızı tıklayın.

Genel kullanım modelleri, görüntü üretme (Nano Banana) modelleri ve metin okuma (TTS) modelleri de dahil olmak üzere çoğu Gemini modeli için GenerationConfig belirleyin.

Yapılandırma, GenerativeModel örneğinin kullanım ömrü boyunca korunur. Farklı bir yapılandırma kullanmak istiyorsanız farklı bir yapılandırmayla yeni bir örnek oluşturup kullanın.

Aşağıdaki örnekte çok basit bir model yapılandırması gösterilmektedir. Ek seçenekler (özellikle özel modeller için) için bu sayfanın ilerleyen bölümlerindeki kullanılabilir parametreler tablosuna bakın.

Swift

GenerationConfig içindeki parametrelerin değerlerini, GenerativeModel örneği oluşturma işleminin bir parçası olarak ayarlayın.


import FirebaseAILogic

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
let config = GenerationConfig(
  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 içindeki parametrelerin değerlerini, GenerativeModel örneği oluşturma işleminin bir parçası olarak ayarlayın.


// ...

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
val config = generationConfig {
    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 içindeki parametrelerin değerlerini, GenerativeModel örneği oluşturma işleminin bir parçası olarak ayarlayın.


// ...

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
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 içindeki parametrelerin değerlerini, GenerativeModel örneği oluşturma işleminin bir parçası olarak ayarlayın.


// ...

// 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.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
const generationConfig = {
  maxOutputTokens: 200,
  stopSequences: ["red"],
};

// Specify the config as part of creating the `GenerativeModel` instance.
const model = getGenerativeModel(ai, { model: "GEMINI_MODEL_NAME",  generationConfig });

// ...

Dart

GenerativeModel örneği oluşturma kapsamında GenerationConfig içindeki parametrelerin değerlerini ayarlayın.


// ...

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
final generationConfig = GenerationConfig(
  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',
  generationConfig: generationConfig,
);

// ...

Unity

GenerationConfig içindeki parametrelerin değerlerini, GenerativeModel örneği oluşturma işleminin bir parçası olarak ayarlayın.


// ...

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// For the latest general-use Gemini models, the following parameters are now unsupported:
// temperature, top-K, top-P, frequency penalty, presence penalty, and candidate count
var generationConfig = new GenerationConfig(
  maxOutputTokens: 200,
  stopSequences: new string[] { "red" }
);

// Initialize the Gemini Developer API backend service.
// 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
);

Google AI Studio ile istemler ve model yapılandırmalarıyla denemeler yapabilirsiniz.

Gemini Live API modelleri için LiveGenerationConfig

Bu sayfada sağlayıcıya özel içerikleri ve kodları görüntülemek için Gemini API sağlayıcınızı tıklayın.

LiveGenerationConfig değerini yalnızca Gemini Live API modellerini kullanırken ayarlayın.

Yapılandırma, LiveModel örneğinin kullanım ömrü boyunca korunur. Farklı bir yapılandırma kullanmak istiyorsanız farklı bir yapılandırmayla yeni bir örnek oluşturup kullanın.

Aşağıdaki örnekte çok basit bir model yapılandırması gösterilmektedir. Ses Etkinliği Algılama'yı (VAD) yapılandırma gibi ek seçenekler için bu sayfanın ilerleyen bölümlerindeki kullanılabilir parametreler tablosuna bakın.

Swift

LiveModel örneğinin başlatılması sırasında liveGenerationConfig içindeki parametrelerin değerlerini ayarlayın:


// ...

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

LiveModel örneği oluşturma kapsamında LiveGenerationConfig içindeki parametrelerin değerlerini ayarlayın.


// ...

// Set parameter values in a `LiveGenerationConfig` (example values shown here).
val config = liveGenerationConfig {
    maxOutputTokens = 200
    responseModality = ResponseModality.AUDIO
    speechConfig = SpeechConfig(voice = Voice("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

LiveModel örneği oluşturma kapsamında LiveGenerationConfig içindeki parametrelerin değerlerini ayarlayın.


// ...

// 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(new Voice("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

LiveGenerativeModel örneğinin başlatılması sırasında LiveGenerationConfig içindeki parametrelerin değerlerini ayarlayın:


// ...

// Initialize the Gemini Developer API backend service.
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

LiveGenerativeModel örneği oluşturma kapsamında LiveGenerationConfig içindeki parametrelerin değerlerini ayarlayın.


// ...

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

LiveModel örneği oluşturma kapsamında LiveGenerationConfig içindeki parametrelerin değerlerini ayarlayın.


// ...

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

// ...

Google AI Studio ile istemler ve model yapılandırmalarıyla denemeler yapabilirsiniz.



Kullanılabilir model parametreleri

Aşağıdaki tabloda, model yapılandırması için kullanılabilen parametreler genel olarak açıklanmıştır. Bazı parametreler yalnızca belirli modeller için geçerlidir.

Parametre Açıklama Sınırlamalar Varsayılan değer
Ses zaman damgası
audioTimestamp
Yalnızca ses içeren giriş dosyaları için zaman damgası algılamayı etkinleştirir.

Boole

Yalnızca GenerativeModel yapılandırması kullanıldığında ve giriş türü yalnızca ses dosyası olduğunda geçerlidir.

false
Maksimum çıkış jetonu sayısı
maxOutputTokens

Yanıtta oluşturulabilecek maksimum jeton sayısını belirtir.

gemini-4-argon için varsayılan ve maksimum çıkış jetonu sınırları, akış dışı istekler için 32,768 jeton, akış istekleri için ise 65,536 jetondur. Firebase AI Logic'ın henüz uzun kod çözmeyi desteklemediğini ancak bu özelliğin yakında kullanıma sunulacağını unutmayın.

--- ---
Durdurma dizileri
stopSequences
Yanıtta dizelerden biriyle karşılaşılırsa modele içerik oluşturmayı durdurmasını söyleyen dizelerin listesini belirtir.

Yalnızca GenerativeModel yapılandırması kullanılırken geçerlidir.

Nano Banana veya TTS modelleri için geçerli değildir.

---
Özel yapılandırmalar
Düşünüyor
thinkingConfig

Modellerin yanıt oluştururken "düşünme sürecini" kontrol eder.

  • Düşünme düzeyini kullanarak modelin ne kadar düşünebileceğini kontrol edebilirsiniz.
  • Düşünce özetlerinin dahil edilip edilmeyeceğini kontrol edin.

Desteklenen değerler: Düşünme belgelerine bakın.

TTS modelleri için geçerli değildir.

Firebase AI Logic, Live API modelleri için thinkingConfig ayarlamayı henüz desteklemiyor.

Modele bağlıdır
Yanıt modaliteleri
responseModalities
Çıkış türünü (ör. metin, ses veya resim) belirtir. Yalnızca Nano Banana, TTS ve Live API modelleri kullanılırken geçerlidir (ve gereklidir). ---
Resim özellikleri
imageConfig
Oluşturulan resimlerin en-boy oranını ve çözünürlüğünü belirtir.

Desteklenen değerler: Görüntü üretme özelliğini yapılandırma başlıklı makaleyi inceleyin.

Yalnızca Nano Banana modelleri kullanılırken geçerlidir.

1:1 en boy oranı (kare)
1024x1024 çözünürlük
Konuşma (ses)
speechConfig
Ses çıkışı için kullanılan sesi belirtir. Yalnızca TTS modelleri ve Live API modelleri kullanılırken geçerlidir.

TTS modelleri için gereklidir.
Puck
Ses Etkinliği Algılama (VAD)
realtimeInputConfig
Ses Etkinliği Algılama (VAD), kesinti yönetimi ve sıra bağlamı kapsamını yapılandırır veya otomatik VAD'yi devre dışı bırakır.

Desteklenen değerler: VAD'yi yapılandırma başlıklı makaleyi inceleyin.

Yalnızca Live API modelleri kullanılırken geçerlidir.

VAD etkin

Bağımsız ayarların varsayılan değerlerini inceleyin.



İçerik üretimini kontrol etmek için diğer seçenekler

  • Modeli, ihtiyaçlarınıza özel çıktılar üretecek şekilde etkilemek için istem tasarımı hakkında daha fazla bilgi edinin.
  • Nefret söylemi ve müstehcen içerik gibi zararlı olarak kabul edilebilecek yanıtlar alma olasılığını ayarlamak için güvenlik ayarlarını kullanın.
  • Modelin davranışını yönlendirmek için sistem talimatları belirleyin. Bu özellik, model son kullanıcıdan başka talimatlar almadan önce eklediğiniz bir ön talimat gibidir.
  • Belirli bir çıkış şeması belirtmek için istemle birlikte bir yanıt şeması iletin. Bu özellik en yaygın olarak JSON çıkışı oluştururken kullanılır ancak sınıflandırma görevleri için de kullanılabilir (ör. modelin belirli etiketleri kullanmasını istediğinizde).