Apple'ın Foundation Models çerçevesi aracılığıyla Gemini API'ye erişirken yapılandırma seçenekleri


Bu sayfadaki örneklerde, Başlangıç: Apple'ın Foundation Models çerçevesi aracılığıyla Gemini API'a erişme başlıklı makaledeki adımları tamamladığınız varsayılır.


Bir modele gönderdiğiniz her istekle birlikte, modelin nasıl yanıt oluşturacağını kontrol etmek için bazı yapılandırma ayarları gönderebilirsiniz. Her Gemini modeli farklı yapılandırma seçenekleri sunar.

Ayara bağlı olarak yapılandırma, geminiLanguageModel veya LanguageModelSession'nin kullanım ömrü boyunca korunur. Farklı bir yapılandırma kullanmak istiyorsanız bu yapılandırmayla yeni bir model veya oturum oluşturun.

Sayfada aşağıdaki yapılandırma seçenekleri açıklanmaktadır:

Sistem talimatlarını belirtme

Sistem talimatları, modelin son kullanıcıdan başka talimatlar almadan önce eklediğiniz bir "giriş" gibidir. Bu sayede, modelin davranışını özel ihtiyaçlarınıza ve kullanım alanlarınıza göre yönlendirebilirsiniz.

LanguageModelSession üzerinde sistem talimatlarını belirtin:

// ...

// Make sure you initialize your chosen Gemini API backend service
let model = FirebaseAI.firebaseAI().geminiLanguageModel(name: "GEMINI_MODEL_NAME")

// Specify the system instructions as part of creating the session
let session = LanguageModelSession(
    model: model,
    instructions: "You are a cat. Your name is Neko."
)

// ...



Düşünme (diğer adıyla "akıl yürütme") özelliğini yapılandırma

Gemini modelinin yanıtını oluşturmak için yapabileceği düşünme (akıl yürütme olarak da adlandırılır) miktarını yapılandırabilirsiniz. Düşünme ile ilgili ayrıntılar, en iyi uygulamalar ve kullanım alanları için genel Düşünme rehberine bakın.

Apple, düşünme seviyesi yerine akıl yürütme seviyesi ifadesini kullanır. Her istekte ContextOptions içindeki reasoningLevel değerini LanguageModelSession aracılığıyla ayarlarsınız:

// ...

// Make sure you initialize your chosen Gemini API backend service.
let model = FirebaseAI.firebaseAI().geminiLanguageModel(name: "GEMINI_MODEL_NAME")

let session = LanguageModelSession(model: model)

// Specify the reasoning level when generating a response.
// Possible reasoningLevels: .light, .moderate, .deep, .custom("minimal").
let response = try await session.respond(
  to: "Write a story about a magic backpack.",
  contextOptions: ContextOptions(reasoningLevel: .REASONING_LEVEL)
)

// ...

Desteklenen düşünme seviyesi değerleri

Aşağıdakileri göz önünde bulundurun:

  • Gemini 3.x modelleri her zaman düşünme özelliğini kullanır. Bu modellerde düşünme özelliğini devre dışı bırakamazsınız.
  • Gemini 3.x modelleri her zaman dinamik düşünme özelliğini kullanır. Model, yapılandırılan tutara kadar ne zaman ve ne kadar düşüneceğine karar verir.

Aşağıdaki tabloda, her Gemini modeli için ayarlayabileceğiniz düşünme düzeyleri (reasoningLevel) listelenmektedir. Gemini değeri (MINIMAL, LOW, MEDIUM, HIGH) kullanırsanız bu değerin Apple sürümüne otomatik olarak eşleneceğini unutmayın.

Apple: .custom("minimal")
Gemini: MINIMAL
Apple: .light
Gemini: LOW
Apple: .moderate
Gemini: MEDIUM
Apple: .deep
Gemini: HIGH

Model, mümkün olduğunca az jeton kullanır ve düşünme süreci neredeyse hiç yoktur.

Düşük karmaşıklıkta görevler

Model daha az jeton kullanır, gecikmeyi ve maliyeti en aza indirir.

Basit görevler ve yüksek işleme hızlı görevler

Model dengeli bir yaklaşım kullanıyor

Orta düzeyde karmaşık görevler

Model, jetonları maksimum seviyeye kadar kullanır.

Derin akıl yürütme gerektiren karmaşık istemler

Gemini 3.x Pro
gemini-3.1-pro-preview
(varsayılan)
Gemini 3.x Flash
gemini-3.8-flash
gemini-3.7-flash
gemini-3.6-flash
gemini-3.5-flash

gemini-3.8-flash veya gemini-3.7-flash tarafından desteklenmiyor 1
(varsayılan)
Gemini 3.x Flash‑Lite
gemini-3.5-flash-lite
gemini-3.1-flash-lite
(varsayılan)
Gemini 3.x Pro Image
gemini-3-pro-image
("Nano Banana Pro")
(varsayılan)
Gemini 3.x Flash Image
gemini-3.1-flash-image
("Nano Banana 2")
(varsayılan)
Gemini 3.x Flash‑Lite Image
gemini-3.1-flash-lite-image
("Nano Banana 2 Lite")
(varsayılan)

1 gemini-3.8-flash ve gemini-3.7-flash MINIMAL düşünme seviyesini desteklemez. Düşünme seviyesini MINIMAL olarak ayarlarsanız istek 400 hatasıyla başarısız olur.



Resim çıkışını yapılandırma



Genel yapılandırma


Apple'ın Foundation Models çerçevesi aracılığıyla Gemini API'a erişim hakkında geri bildirimde bulunma