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

Bir modele yapılan her çağrıda, modelin nasıl yanıt oluşturacağını kontrol etmek için bir model yapılandırması gönderebilirsiniz. Her model, maxOutputTokens ayarı veya düşünme, yanıt biçimleri, resimler ya da konuşma için özel yapılandırmalar gibi farklı yapılandırma seçeneklerini destekler.

Gemini modeline erişirken kullanım alanlarının çoğunda modeli GenerationConfig kullanarak yapılandırırsınız. Ancak bir 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 her parametrenin açıklaması verilmektedir.

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

Gemini modeli için GenerationConfig

Sağlayıcıya özel içeriği ve kodu bu sayfada görüntülemek için Gemini API sağlayıcınızı tıklayın.

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

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

Swift

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


import FirebaseAILogic

// Set parameter values in a `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
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

GenerativeModel örneği oluşturma kapsamında bir 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.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
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

GenerativeModel örneği oluşturma kapsamında bir 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.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
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

GenerativeModel örneği oluşturma kapsamında bir GenerationConfig 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 `GenerationConfig`.
// IMPORTANT: Example values shown here. Make sure to update for your use case.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
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

GenerativeModel örneği oluşturma kapsamında bir 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.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
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

GenerativeModel örneği oluşturma kapsamında bir 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.
// Note that temperature, top-K, and top-P are deprecated and ignored by the latest Gemini models.
var generationConfig = new GenerationConfig(
  candidateCount: 1,
  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
);

Her parametrenin açıklamasına bu sayfanın sonraki bölümünden ulaşabilirsiniz.

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

Gemini Live API modelleri için LiveGenerationConfig

Sağlayıcıya özel içeriği ve kodu bu sayfada görüntülemek için Gemini API sağlayıcınızı tıklayın.

Gemini Live API modelleri kullanılırken yalnızca LiveGenerationConfig ayarlayın.

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

Swift

LiveModel örneği başlatılırken 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 bir 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 = Voices.FENRIR)
}

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

// ...

Java

LiveModel örneği oluşturma kapsamında bir 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(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

LiveGenerativeModel örneği başlatılırken 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 bir 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 bir 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
);

// ...

Her parametrenin açıklamasına bu sayfanın sonraki bölümünden ulaşabilirsiniz.

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



Parametrelerin açıklaması

Aşağıdaki tabloda, kullanılabilen parametrelerle ilgili genel bir bakış sunulmaktadır. Bazı parametreler yalnızca belirli modeller için geçerlidir.

Sıcaklık, top-K ve top-P parametrelerinin artık kullanılmadığını ve en yeni Gemini modelleri tarafından yoksayıldığını unutmayın.

Parametre Açıklama Sınırlamalar Varsayılan değer
Ses zaman damgası
audioTimestamp
Yalnızca sesli giriş dosyalarında zaman damgası anlaşılmasını sağlar.

Boole

Yalnızca GenerativeModel yapılandırması kullanılırken ve giriş türü yalnızca ses içeren bir dosyayken geçerlidir.

false
Aday sayısı
candidateCount
Döndürülecek yanıt varyasyonlarının sayısını belirtir. Her istek için, tüm adayların çıkış jetonları için ücretlendirilirsiniz ancak giriş jetonları için yalnızca bir kez ücretlendirilirsiniz.

Desteklenen değerler: 1 - 8 (dahil)

Yalnızca generateContent kullanılırken geçerlidir.

generateContentStream, TTS modelleri veya Live API modelleri kullanılırken geçerli değildir.

1
Maksimum çıkış jetonu sayısı
maxOutputTokens
Yanıt oluşturulurken kullanılabilecek maksimum jeton sayısını belirtir. --- ---
Sıklık cezası
frequencyPenalty

Oluşturulan yanıtta tekrar tekrar görünen jetonların dahil edilme olasılığını kontrol eder.

Pozitif değerler, oluşturulan içerikte tekrar tekrar görünen jetonları cezalandırarak içeriğin tekrarlanma olasılığını azaltır.

TTS modelleri için geçerli değildir. ---
Varlık cezası
presencePenalty

Oluşturulan yanıtta zaten görünen jetonların dahil edilme olasılığını kontrol eder.

Pozitif değerler, oluşturulan içerikte zaten görünen jetonları cezalandırarak daha çeşitli içerik oluşturma olasılığını artırır.

TTS modelleri için geçerli değildir. ---
Sıraları durdurma
stopSequences
Modelin, yanıtta bu dizelerden biriyle karşılaşması durumunda içerik oluşturmayı durdurmasını söyleyen bir dize listesi belirtir.

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

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

---
Özel yapılandırmalar
Düşünme
thinkingConfig

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

  • Düşünme seviyesi (Gemini 3.x ve sonraki modeller) kullanarak modelin yapabileceği düşünme miktarını kontrol edin.
  • 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 ayarlanmasını henüz desteklememektedir.

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

Desteklenen değerler: Görüntü oluşturmayı yapılandırma bölümüne bakın.

Yalnızca Gemini görüntü modelleri ("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ışında kullanılan sesi belirtir. Yalnızca TTS modelleri ve Live API modelleri kullanılırken geçerlidir.

TTS modelleri için gereklidir.
Puck





İçerik oluşturmayı kontrol etmeye yönelik diğer seçenekler

  • İstem tasarımı hakkında daha fazla bilgi edinin böylece modeli, ihtiyaçlarınıza özel çıkışlar oluşturması için etkileyebilirsiniz.
  • 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ı ayarlayın. Bu özellik, model son kullanıcının başka talimatlarına maruz kalmadan önce eklediğiniz bir giriş gibidir.
  • Belirli bir çıkış şeması belirtmek için istemle birlikte bir yanıt şeması iletebilirsiniz. Bu özellik en çok JSON çıkışı oluştururken kullanılır ancak sınıflandırma görevleri için de kullanılabilir (ör. modelin belirli etiketleri veya tag'leri kullanmasını istediğinizde).