Gemini 3.5 Flash'teki yenilikler

Gemini 3.5 Flash, genel kullanıma sunulmuş (GK), kararlı ve ölçeklendirilmiş üretim kullanımına hazırdır. En akıllı Flash modelimiz olan bu model, ajan tabanlı yürütme, kodlama ve uzun vadeli görevlerde ölçekli olarak sürekli en üst düzeyde performans sunar.

Bu kılavuzda, Gemini 3.5 Flash ile ilgili iyileştirmeler, API değişiklikleri ve taşıma yönergeleri hakkında genel bilgiler yer almaktadır.

Yeni model

Model Model Kimliği Açıklama
Gemini 3.5 Flash gemini-3.5-flash Ajan tabanlı ve kodlama görevlerinde sürekli olarak en iyi performansı sunan en akıllı modelimiz.

Gemini 3.5 Flash, 1 milyon parçalık bağlam penceresini, 65 bin maksimum çıkış parçası sayısını, düşünme özelliğini ve Gemini 3 Flash ile aynı araç ve platform özelliklerini destekler. Bilgisayar Kullanımı şu anda desteklenmemektedir.

Tüm özellikler için modellere genel bakış başlıklı makaleyi inceleyin. Fiyatlandırma için fiyatlandırma sayfasına bakın.

Hızlı başlangıç kılavuzu

Bu kılavuzdaki tüm örneklerde GenerateContent API kullanılır. Etkileşimler API'si de desteklenir. Aynı yapılandırma seçenekleri ve öneriler geçerlidir.

Python

from google import genai

client = genai.Client()

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Explain how parallel agentic execution works in three sentences.",
)
print(response.text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-3.5-flash",
    contents: "Explain how parallel agentic execution works in three sentences.",
  });
  console.log(response.text);
}

main();

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.5-flash:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -X POST \
  -d '{
    "contents": [{
      "parts": [{"text": "Explain how parallel agentic execution works in three sentences."}]
    }]
  }'

Yenilikler

  • Sürekli olarak en üst düzey performans: En akıllı Flash modelimiz, büyük ölçekte ajan ve kodlama görevleri için optimize edilmiştir.
  • Ajan benzeri yürütme: Alt ajan dağıtımı, sorun çözme ve büyük ölçekte hızlı ajan benzeri döngüler.
  • Kodlama: Alternatif yolları test etmek ve çözümleri dinamik olarak keşfetmek için yinelemeli kodlama döngüleri, hızlı keşif ve prototip oluşturma.
  • Uzun vadeli: Çok adımlı iş akışları ve araçların büyük ölçekte kullanımı.
  • Düşünce koruma: Model, çok turlu sohbetlerde ara muhakemeyi otomatik olarak korur. API'de değişiklik yapılması gerekmez.
  • Yeni varsayılan çaba düzeyi: Varsayılan düşünme çabası high değerinden medium değerine değiştirildi. Ayrıntılar için Yeni varsayılan çaba düzeyi başlıklı makaleyi inceleyin.
  • Geliştirilmiş low düşünme: low, artık daha az adım gerektiren kod ve aracı görevleri için önemli ölçüde geliştirildi. Daha düşük gecikme süresi ve maliyetle yüksek kalite sunuyor.
  • GA sürümü: Ölçeklendirilmiş üretim kullanımı için kararlı model.

Davranış değişiklikleri

Yeni varsayılan çaba düzeyi: medium

Varsayılan düşünme çabası, Gemini 3 Flash önizlemesindeki high'ten medium'ye değiştirildi. medium daha hızlı ve daha uygun maliyetli olmasının yanı sıra çok çeşitli görevlerde çok iyi sonuçlar verir. Karmaşık sorunlarda high modelin daha derinlemesine düşünmesini sağlar.

Çaba düzeyi Ne zaman kullanılır?
minimal Yanıt hızı için optimize edilmiştir. Sohbet benzeri kullanım alanları, hızlı bilgi yanıtları, daha basit araç çağrıları.
low Daha düşük gecikme süresi ve daha az adım gerektiren kodlama ve yapay zeka görevleri. Biraz düşünmeyi gerektiren analiz ve yazma görevleri için de uygundur.
medium (varsayılan) Çoğu görev için en iyi kalite. Karmaşık kod ve aracı kullanım alanları için önerilir.
high Modelin düşünme ve araç kullanma becerisini en üst düzeye çıkarır. Karmaşık akıl yürütme, zor matematik ve en zor kod ya da aracı görevleri için idealdir. Genişletilmiş düşüncelere ve işlev çağrılarına olanak tanır.

Varsayılanı geçersiz kılmak için yapılandırmanızda thinking_level değerini ayarlayın:

Python

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Prove that the square root of 2 is irrational.",
    config=types.GenerateContentConfig(
        thinking_config=types.ThinkingConfig(thinking_level="high")
    ),
)

print(response.text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-3.5-flash",
    contents: "Prove that the square root of 2 is irrational.",
    config: {
      thinkingConfig: {
        thinkingLevel: "HIGH",
      },
    },
  });
  console.log(response.text);
}

main();

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.5-flash:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -X POST \
  -d '{
    "contents": [{
      "parts": [{"text": "Prove that the square root of 2 is irrational."}]
    }],
    "generationConfig": {
      "thinkingConfig": {
        "thinkingLevel": "HIGH"
      }
    }
  }'

Düşünceleri koruma

Model, çok adımlı sohbetlerdeki ara muhakemeyi otomatik olarak korur. Sohbet geçmişinde yer aldığında akıl yürütme bağlamı devam eder. Bu da yinelemeli hata ayıklama ve kod yeniden düzenleme gibi karmaşık çok adımlı görevlerde performansı artırır. API'de değişiklik yapılması gerekmez:

  • Interactions API: Düşünceler otomatik olarak korunur. Davranışta değişiklik yok.
  • GenerateContent API: Gemini 3.5 Flash'tan itibaren model, görüşme geçmişinde düşünce imzaları varsa önceki tüm aşamalardaki akıl yürütme bağlamını kullanır. Bunu etkinleştirmek için contents içinde tam ve değiştirilmemiş sohbet geçmişini (düşünce imzaları dahil) iletin. SDK'lar bunu otomatik olarak yapar.

Gemini 3.x'teki parametre güncellemeleri ve en iyi uygulamalar

Gemini 3.5 Flash dahil olmak üzere tüm Gemini 3.x modelleri için aşağıdakiler geçerlidir.

  • temperature, top_p, top_k: Varsayılan değerlerin değiştirilmemesini önemle tavsiye ederiz. Gemini 3'ün akıl yürütme özellikleri, varsayılan ayarlar için optimize edilmiştir.
  • thinking_budget yerine thinking_level kullanın.
  • İşlev çağrısı yanıtı eşleştirme: id, name ve yanıt sayısı önceki çağrılarla eşleşmelidir.
  • Çok formatlı işlev yanıtları: Çok formatlı içerik, işlev yanıtının dışında değil içinde yer almalıdır.
  • İşlev yanıtlarındaki satır içi talimatlar: Ayrı parçalar olarak değil, işlev yanıtı metnine eklenir.
  • Gereksiz araç çağrılarını azaltma: Düşünme seviyelerini düşürün veya sistem talimatlarıyla denemeler yaparak aracılı iş akışlarındaki araç çağrılarını azaltın.

Kodunuzu nasıl güncelleyeceğinizi öğrenmek için aşağıdaki bölümlere bakın.

Örnekleme parametreleri (artık önerilmemektedir)

temperature, top_p ve top_k artık tüm Gemini 3.x modelleri için önerilmiyor. Gemini 3'ün muhakeme özellikleri, varsayılan ayarlar için optimize edilmiştir. Bu parametreleri tüm isteklerden kaldırın.

# ⚠️ Remove these parameters (not recommended)
config = types.GenerateContentConfig(
    temperature=0.7,
    top_p=0.9,
    top_k=40
)

Belirlenimi sağlamak için belirli kullanım alanınızla ilgili açık kurallar içeren bir sistem talimatı tanımlamanızı öneririz.

thinking_budget (artık önerilmiyor)

Ham sayısal thinking_budget parametresinin tüm Gemini 3.x modellerinde kullanılması artık önerilmiyor. Bunun yerine thinking_level dize numarasını kullanın.

# ⚠️ Before (not recommended)
config = types.GenerateContentConfig(
    thinking_config=types.ThinkingConfig(thinking_budget=7500)
)

# ✅ After
config = types.GenerateContentConfig(
    thinking_config=types.ThinkingConfig(thinking_level="medium")
)

Kullanılabilir değerler: minimal, low, medium (varsayılan) ve high.

İşlev çağırma: katı yanıt eşleştirme

Etkileşimler API'si, eşleşmeyen işlev yanıtları için zaten hata veriyor. GenerateContent API henüz hata vermiyor ancak eşleşmeyen yanıtlar, modelin çoğu durumda finish_reason: STOP ile boş yanıtlar döndürmesine neden oluyor. Her zaman aşağıdaki kurallara uyun:

Gereksinim Ayrıntılar
id içerir Her FunctionResponse, ilgili FunctionCall öğesindeki id öğesini içermelidir.
name. maç Yanıtın name değeri, görüşmedeki name değeriyle eşleşmelidir.
Eşleşme sayıları Alınan her FunctionCall için tam olarak bir FunctionResponse döndürün.

Python

# ✅ Include matching id and name in the function response
final_response = client.models.generate_content(
    model="gemini-3.5-flash",
    config=config,
    contents=[
        *previous_contents,
        response.candidates[0].content,
        types.Content(role="user", parts=[
            types.Part.from_function_response(
                name=tool_call.name,
                response={"result": result},
                id=tool_call.id,
            )
        ]),
    ],
)

JavaScript

// ✅ Include matching id and name in the function response
const functionResponsePart = {
  functionResponse: {
    name: toolCall.name,
    response: { result: result },
    id: toolCall.id,
  },
};

const finalResponse = await ai.models.generateContent({
  model: "gemini-3.5-flash",
  contents: [
    ...previousContents,
    { role: "model", parts: [{ functionCall: toolCall }] },
    { role: "user", parts: [functionResponsePart] },
  ],
  config: config,
});

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.5-flash:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -X POST \
  -d '{
    "contents": [
      {"role": "user", "parts": [{"text": "..."}]},
      {"role": "model", "parts": [{"functionCall": {"name": "my_function", "args": {...}}}]},
      {"role": "user", "parts": [{"functionResponse": {"name": "my_function", "id": "call_id", "response": {"result": "..."}}}]}
    ]
  }'

Çok formatlı işlev yanıtları

Müşterilerin genellikle işlev yanıtı dışında resimler sağladığını görüyoruz. Bu durum, beklenmedik model davranışlarına (ör. düşünce sızıntısı) ve daha düşük kaliteli çıktılara yol açabilir. Bunun yerine Multimodal Function Responses API dokümanlarındaki öneriyi uygulayın ve modele gönderdiğiniz işlev yanıtı bölümlerine çok formatlı içerik ekleyin. Model, daha bilinçli bir yanıt üretmek için bu çok formatlı içeriği bir sonraki adımda işleyebilir.

Python

# ✅ Include multimodal content in the function response
final_response = client.models.generate_content(
    model="gemini-3.5-flash",
    config=config,
    contents=[
        *previous_contents,
        response.candidates[0].content,
        types.Content(role="user", parts=[
            types.Part.from_function_response(
                name=tool_call.name,
                response={
                    "result": "instrument.jpg",
                    "image": base64_image_data,
                },
                id=tool_call.id,
            )
        ]),
    ],
)

JavaScript

// ✅ Include multimodal content in the function response
const finalResponse = await ai.models.generateContent({
  model: "gemini-3.5-flash",
  contents: [
    ...previousContents,
    { role: "model", parts: [{ functionCall: toolCall }] },
    {
      role: "user",
      parts: [{
        functionResponse: {
          name: toolCall.name,
          id: toolCall.id,
          response: {
            result: "instrument.jpg",
            image: base64ImageData,
          },
        },
      }],
    },
  ],
  config: config,
});

İşlev yanıtlarında satır içi talimatlar

Müşterilerin, işlev yanıtlarıyla birlikte ek talimatlar sağladığını sıklıkla görüyoruz sonraki Parts. Bu durum, modelin beklenmedik şekilde davranmasına (ör. düşünce sızıntısı) ve daha düşük kaliteli çıkışlar üretmesine neden olabilir. Bunun yerine, ek talimatları iki yeni satırla ayrılmış şekilde işlev yanıtı metninin sonuna ekleyin.

Python

# ✅ Append inline instructions to the end of the function response separated by two newlines
result_text = f"{json.dumps(result)}\n\n<your inline instructions>"

final_response = client.models.generate_content(
    model="gemini-3.5-flash",
    config=config,
    contents=[
        *previous_contents,
        response.candidates[0].content,
        types.Content(role="user", parts=[
            types.Part.from_function_response(
                name=tool_call.name,
                response={"result": result_text},
                id=tool_call.id,
            )
        ]),
    ],
)

JavaScript

// ✅ Append inline instructions to the end of the function response separated by two newlines
const resultText = `${JSON.stringify(result)}\n\n<your inline instructions>`;

const finalResponse = await ai.models.generateContent({
  model: "gemini-3.5-flash",
  contents: [
    ...previousContents,
    { role: "model", parts: [{ functionCall: toolCall }] },
    {
      role: "user",
      parts: [{
        functionResponse: {
          name: toolCall.name,
          id: toolCall.id,
          response: { result: resultText },
        },
      }],
    },
  ],
  config: config,
});

Gereksiz araç çağrılarını azaltma

Araç çağrılarını aşırı kullanma sorunu yaşıyorsanız bu sorunu en aza indirmenize yardımcı olacak iki teknik vardır:

  1. Düşünme düzeyini azaltarak başlayın (medium, low veya minimal): Daha yüksek düşünme düzeyleri, modelin keşfetmek ve doğrulamak için daha fazla araç kullanmasını teşvik eder. Bu nedenle, düzeyi düşürmek araç çağrılarını azaltabilir.

  2. Sistem talimatı ekleyin: Düşünme düzeyi ayarlandıktan sonra aşırı kullanım devam ederse araç kullanımını kısıtlayan bir istem kullanmayı deneyin. Örneğin:

    You have a limited action budget of <n> tool calls. Use them efficiently.
    

Taşıma kontrol listesi

Gemini 3 Flash önizlemesinden taşıma

  • Model adını güncelleme: gemini-3-flash-previewgemini-3.5-flash
  • Fiyatlandırmayı inceleyin. Gemini 3.5 Flash, Gemini 3 Flash Önizleme sürümünden daha pahalıdır. Ayrıntılar için fiyatlandırma sayfasına göz atın.
  • temperature, top_p, top_k öğelerini yapılandırmanızdan kaldırın (artık önerilmemektedir).
  • thinking_budget yerine thinking_level koyun.
  • Tüm FunctionResponse bölümlerine id ve eşleşen name değerlerini ekleyin.
  • İstemlerinizi test edin. Varsayılan çaba highmedium olarak değiştirildi. Kaliteyi, hızı ve maliyeti doğrulayın.
  • Düşünce koruma özelliği artık varsayılan olarak etkindir. Muhakeme bağlamı, dönüşümler arasında aktarılır. Bu durum performansı artırır ancak jeton kullanımını yükseltebilir.
  • Gereksiz araç çağrılarını azaltın: Düşünme düzeyini azaltarak başlayın (medium, low veya minimal). Aşırı kullanım devam ederse araç kullanımını kısıtlamak için bir sistem talimatı ekleyin.
  • Bilgisayar Kullanımı şu anda Gemini 3.5 Flash'te desteklenmemektedir. Bilgisayar Kullanımı iş yükleri için Gemini 3 Flash Preview'u kullanmaya devam edin.

Gemini 2.5'ten taşıma

Yukarıdakilerin tümüne ek olarak:

  • İstemleri basitleştirin. Muhakeme yapmayı zorlamak için zincirleme düşünce istem mühendisliği kullandıysanız bunun yerine daha basit istemlerle thinking_level: "medium" veya "high"'yi deneyin.
  • PDF ve medya iş yüklerini test edin. Yoğun doküman ayrıştırma için belirli bir davranışa güveniyorsanız doğruluğun devamlılığını sağlamak üzere media_resolution_high ayarını test edin. Varsayılan olarak Gemini 3'e geçiş yapmak, PDF'lerde jeton kullanımını artırabilir ancak videolarda azaltabilir. İstekler bağlam penceresini aşarsa media_resolution değerini açıkça azaltın. Ayrıntılar için medya çözünürlüğü belgelerini inceleyin.
  • Araçları birlikte kullanmaktan yararlanın. Google Arama, URL bağlamı, kod yürütme ve özel işlevler aynı istekte kullanılabilir.
  • Çok formatlı işlev yanıtları kullanıyorsanız çok formatlı içeriği işlev yanıtı bölümlerinin içine taşıyın, yanına değil.
  • İşlev yanıtlarıyla satır içi talimatlar kullanılıyorsa bunları ayrı parçalar olarak değil, iki yeni satırla ayrılmış şekilde işlev yanıtı metnine ekleyin.
  • Görüntü segmentasyonu, Gemini 3.x'te desteklenmez. Segmentasyon iş yükleri için düşünme özelliği devre dışı bırakılmış Gemini 2.5 Flash'ı veya Gemini Robotics-ER 1.6'yı kullanmaya devam edin.

Gemini 3 ailesinin özellikleri

Gemini 3.5 Flash, Bilgisayar Kullanımı hariç tüm Gemini 3 ailesi özelliklerini devralır. Gemini 3'te kullanıma sunulan ve devam eden özellikler:

Sonraki adımlar