Gemini düşüncesi

Gemini 2.5 serisi modeller, yanıt oluşturma sırasında dahili bir "düşünme süreci" kullanır. Bu süreç, çocukların akıl yürütme becerilerinin gelişmesine katkıda bulunur ve karmaşık görevleri çözmek için çok adımlı planlama yapmalarına yardımcı olur. Bu da bu modelleri özellikle kodlama, ileri düzey matematik, veri analizi ve planlama ya da düşünme gerektiren diğer görevlerde iyi bir hale getirir.

Bu kılavuzda, Gemini API'yi kullanarak Gemini'nin düşünme özellikleriyle nasıl çalışabileceğiniz açıklanmaktadır.

Düşünme modellerini kullanma

Düşünme becerilerine sahip modeller, Google AI Studio'da ve Gemini API aracılığıyla kullanılabilir. 2.5 serisi modeller, istemlere göre ne zaman ve ne kadar düşünmeye karar vereceğini otomatik olarak belirleyebildiğinden, düşünme özelliği hem API'de hem de AI Studio'da varsayılan olarak açıktır. Çoğu kullanım alanında düşünüp durmak fayda sağlar. Ancak düşünmeyi devre dışı bırakmak istiyorsanız thinkingBudget parametresini 0 olarak ayarlayabilirsiniz.

Temel istek gönderme

from google import genai

client = genai.Client(api_key="GOOGLE_API_KEY")
prompt = "Explain the concept of Occam's Razor and provide a simple, everyday example."
response = client.models.generate_content(
    model="gemini-2.5-flash-preview-04-17",
    contents=prompt
)

print(response.text)
import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({ apiKey: "GOOGLE_API_KEY" });

async function main() {
  const prompt = "Explain the concept of Occam's Razor and provide a simple, everyday example.";

  const response = await ai.models.generateContent({
    model: "gemini-2.5-flash-preview-04-17",
    contents: prompt,
  });

  console.log(response.text);
}

main();
// import packages here

func main() {
  ctx := context.Background()
  client, err := genai.NewClient(ctx, option.WithAPIKey(os.Getenv("GOOGLE_API_KEY")))
  if err != nil {
    log.Fatal(err)
  }
  defer client.Close()

  model := client.GenerativeModel("gemini-2.5-flash-preview-04-17")
  resp, err := model.GenerateContent(ctx, genai.Text("Explain the concept of Occam's Razor and provide a simple, everyday example."))
  if err != nil {
    log.Fatal(err)
  }
  fmt.Println(resp.Text())
}
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-preview-04-17:generateContent?key=$GOOGLE_API_KEY" \
 -H 'Content-Type: application/json' \
 -X POST \
 -d '{
   "contents": [
     {
       "parts": [
         {
           "text": "Explain the concept of Occam\''s Razor and provide a simple, everyday example."
         }
       ]
     }
   ]
 }'
 ```

Düşünme modelleri için bütçe belirleme

thinkingBudget parametresi, modele yanıt oluştururken kullanabileceği düşünme jetonu sayısı hakkında yol gösterir. Daha fazla jeton sayısı genellikle daha karmaşık görevlerin çözümü için gerekli olan ayrıntılı düşünmeyle ilişkilendirilir. thinkingBudget, 0 ile 24.576 aralığında bir tam sayı olmalıdır. Düşünme bütçesini 0'a ayarlamak düşünmeyi devre dışı bırakır.

İsteme bağlı olarak model, jeton bütçesinin üstünde veya altında olabilir.

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
    model="gemini-2.5-flash-preview-04-17",
    contents="Explain the Occam's Razor concept and provide everyday examples of it",
    config=types.GenerateContentConfig(
        thinking_config=types.ThinkingConfig(thinking_budget=1024)
    ),
)

print(response.text)
import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({ apiKey: "GOOGLE_API_KEY" });

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-2.5-flash-preview-04-17",
    contents: "Explain the Occam's Razor concept and provide everyday examples of it",
    config: {
      thinkingConfig: {
        thinkingBudget: 1024,
      },
    },
  });

  console.log(response.text);
}

main();
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-preview-04-17:generateContent?key=$GOOGLE_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
  "contents": [
    {
      "parts": [
        {
          "text": "Explain the Occam\''s Razor concept and provide everyday examples of it"
        }
      ]
    }
  ],
  "generationConfig": {
    "thinkingConfig": {
          "thinkingBudget": 1024
    }
  }
}'

Düşünme modelleriyle araçları kullanma

Düşünme modellerindeki kullanımınızı Gemini'ın araçları ve becerileriyle birleştirerek metin üretmenin ötesinde işlemler gerçekleştirebilirsiniz. Bu sayede harici sistemlerle etkileşim kurabilir, kod yürütebilir veya gerçek zamanlı bilgilere erişebilir, sonuçları kendi akıl yürütmelerine ve nihai yanıtlarına dahil edebilirler.

  • Arama aracı, modelin, eğitim verilerinin ötesinde, güncel veya güncel bilgileri bulmak için harici arama motorlarını sorgulamasına olanak tanır. Bu, yakın zamandaki olaylar veya son derece spesifik konular hakkındaki sorular için yararlıdır.

  • Kod yürütme aracı modelin hesaplamalar yapmak, verileri değiştirmek veya en iyi algoritmik olarak ele alınan sorunları çözmek için Python kodu oluşturmasını ve çalıştırmasını sağlar. Model, kodun çıkışını alır ve yanıtında kullanabilir.

  • Yapılandırılmış çıkış özelliğiyle Gemini'yi, otomatik işlemeye uygun bir yapılandırılmış çıkış biçimi olan JSON ile yanıt verecek şekilde kısıtlayabilirsiniz. Bu, özellikle modelin çıkışını uygulamalara entegre ederken yararlı olur.

  • İşlev çağrısı, düşünme modelini harici araçlara ve API'lere bağlar. Böylece doğru işlevin ne zaman çağrılacağı ve hangi parametrelerin sağlanacağı konusunda akıl yürütebilir.

En iyi uygulamalar

Bu bölümde, düşünme modellerini verimli bir şekilde kullanmayla ilgili bazı bilgiler verilmektedir. Her zaman olduğu gibi, istem rehberimizi ve en iyi uygulamalarımızı izleyerek en iyi sonuçları elde edebilirsiniz.

Hata ayıklama ve yönlendirme

  • Muhakemeyi inceleyin: Düşünme modellerinden beklediğiniz yanıtı alamadığınızda Gemini'ın akıl yürütme sürecini dikkatlice analiz edebilirsiniz. Görevin görevi nasıl böldüğünü ve sonuca vardığını görebilir, bu bilgileri kullanarak doğru sonuçlara ulaşabilirsiniz.

  • Muhakemede Tavsiye Edin: Özellikle uzun bir sonuç elde etmeyi umuyorsanız isteminizde modelin kullandığı düşünme miktarını sınırlandırmak için rehberlik sağlayabilirsiniz. Bu sayede, yanıtınıza daha fazla jeton çıkışı ayırabilirsiniz.

Görevin karmaşıklığı

  • Kolay Görevler (Düşünme KAPALI olabilir): Basit istekler için basit bilgi alma veya sınıflandırma gibi karmaşık akıl yürütme gerekmez. Düşünme gerekmez. Örnekler:
    • "DeepMind nerede kuruldu?"
    • "Bu e-postada toplantı isteğinde mi bulunuluyor yoksa sadece bilgi mi veriliyor?"
  • Orta Düzey Görevler (Varsayılan/Bazı Düşünmeler): Yaygın isteklerin çoğu, bir dereceye kadar adım adım işleme veya daha derinlemesine bilgi alma olanağından yararlanır. Gemini, aşağıdakiler gibi görevler için düşünme özelliğini esnek bir şekilde kullanabilir:
    • Fotosentezi ve büyümeyi karşılaştırın.
    • Elektrikli arabalar ile hibrit arabaları karşılaştırın.
  • Zor Görevler (Maksimum Düşünme Kapasitesi): Gerçekten karmaşık zorluklar için yapay zekanın tüm akıl yürütme ve planlama özelliklerini kullanması gerekir. Bu da genellikle yanıt vermeden önce birçok dahili adımı içerir. Örnekler:
    • AIME 2025'te 1. problemi çözün: 17b'nin 97b'nin böleni olduğu, b > 9'dan oluşan tüm tam sayı tabanlarının toplamını bulun.
    • Kullanıcı kimlik doğrulaması da dahil olmak üzere borsa verilerini anlık olarak görselleştiren bir web uygulaması için Python kodu yazın. Mümkün olduğunca verimli hale getirin.

Sırada ne var?