חשיבה של Gemini

מודלי Gemini משתמשים ב'תהליך חשיבה' פנימי שמשפר באופן משמעותי את יכולות החשיבה הרציונלית והתכנון הרב-שלבי שלהם, מה שהופך אותם ליעילים מאוד במשימות מורכבות כמו תכנות, מתמטיקה מתקדמת וניתוח נתונים.

במדריך הזה מוסבר איך להשתמש ביכולות החשיבה של Gemini באמצעות Gemini API.

יצירת תוכן עם חשיבה

כדי לשלוח בקשה למודל חושב, פועלים כמו בכל בקשה אחרת ליצירת תוכן. ההבדל העיקרי הוא שצריך לציין בשדה model אחד מהמודלים שתומכים בחשיבה, כמו בדוגמה הבאה ליצירת טקסט:

Python

from google import genai

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

print(response.text)

JavaScript

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

const ai = new GoogleGenAI({});

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-3.8-flash",
    contents: prompt,
  });

  console.log(response.text);
}

main();

Go

package main

import (
  "context"
  "fmt"
  "log"
  "os"
  "google.golang.org/genai"
)

func main() {
  ctx := context.Background()
  client, err := genai.NewClient(ctx, nil)
  if err != nil {
      log.Fatal(err)
  }

  prompt := "Explain the concept of Occam's Razor and provide a simple, everyday example."
  model := "gemini-3.8-flash"

  resp, _ := client.Models.GenerateContent(ctx, model, genai.Text(prompt), nil)

  fmt.Println(resp.Text())
}

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent" \
 -H "x-goog-api-key: $GEMINI_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."
         }
       ]
     }
   ]
 }'
 ```

סיכומי מחשבות

סיכומי תהליך החשיבה הם גרסאות מסוכמות של תהליכי החשיבה הגולמיים של המודל, והם מספקים תובנות לגבי תהליך החשיבה הפנימי של המודל. חשוב לשים לב שרמות החשיבה והתקציבים חלים על המחשבות הגולמיות של המודל ולא על סיכומי המחשבות.

כדי להפעיל סיכומי מחשבות, מגדירים את includeThoughts ל-true בהגדרות הבקשה. כדי לגשת לסיכום, עוברים על parts של הפרמטר response ובודקים את הערך הבוליאני thought.

הנה דוגמה שמראה איך להפעיל ולאחזר סיכומי מחשבות בלי סטרימינג, שמחזירה סיכום מחשבות סופי אחד עם התשובה:

Python

from google import genai
from google.genai import types

client = genai.Client()
prompt = "What is the sum of the first 50 prime numbers?"
response = client.models.generate_content(
  model="gemini-3.8-flash",
  contents=prompt,
  config=types.GenerateContentConfig(
    thinking_config=types.ThinkingConfig(
      include_thoughts=True
    )
  )
)

for part in response.candidates[0].content.parts:
  if not part.text:
    continue
  if part.thought:
    print("Thought summary:")
    print(part.text)
    print()
  else:
    print("Answer:")
    print(part.text)
    print()

JavaScript

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

const ai = new GoogleGenAI({});

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-3.8-flash",
    contents: "What is the sum of the first 50 prime numbers?",
    config: {
      thinkingConfig: {
        includeThoughts: true,
      },
    },
  });

  for (const part of response.candidates[0].content.parts) {
    if (!part.text) {
      continue;
    }
    else if (part.thought) {
      console.log("Thoughts summary:");
      console.log(part.text);
    }
    else {
      console.log("Answer:");
      console.log(part.text);
    }
  }
}

main();

Go

package main

import (
  "context"
  "fmt"
  "google.golang.org/genai"
  "os"
)

func main() {
  ctx := context.Background()
  client, err := genai.NewClient(ctx, nil)
  if err != nil {
      log.Fatal(err)
  }

  contents := genai.Text("What is the sum of the first 50 prime numbers?")
  model := "gemini-3.8-flash"
  resp, _ := client.Models.GenerateContent(ctx, model, contents, &genai.GenerateContentConfig{
    ThinkingConfig: &genai.ThinkingConfig{
      IncludeThoughts: true,
    },
  })

  for _, part := range resp.Candidates[0].Content.Parts {
    if part.Text != "" {
      if part.Thought {
        fmt.Println("Thoughts Summary:")
        fmt.Println(part.Text)
      } else {
        fmt.Println("Answer:")
        fmt.Println(part.Text)
      }
    }
  }
}

הנה דוגמה לשימוש בתהליך חשיבה עם סטרימינג, שמחזיר סיכומים מצטברים במהלך היצירה:

Python

from google import genai
from google.genai import types

client = genai.Client()

prompt = """
Alice, Bob, and Carol each live in a different house on the same street: red, green, and blue.
The person who lives in the red house owns a cat.
Bob does not live in the green house.
Carol owns a dog.
The green house is to the left of the red house.
Alice does not own a cat.
Who lives in each house, and what pet do they own?
"""

thoughts = ""
answer = ""

for chunk in client.models.generate_content_stream(
    model="gemini-3.8-flash",
    contents=prompt,
    config=types.GenerateContentConfig(
      thinking_config=types.ThinkingConfig(
        include_thoughts=True
      )
    )
):
  for part in chunk.candidates[0].content.parts:
    if not part.text:
      continue
    elif part.thought:
      if not thoughts:
        print("Thoughts summary:")
      print(part.text)
      thoughts += part.text
    else:
      if not answer:
        print("Answer:")
      print(part.text)
      answer += part.text

JavaScript

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

const ai = new GoogleGenAI({});

const prompt = `Alice, Bob, and Carol each live in a different house on the same
street: red, green, and blue. The person who lives in the red house owns a cat.
Bob does not live in the green house. Carol owns a dog. The green house is to
the left of the red house. Alice does not own a cat. Who lives in each house,
and what pet do they own?`;

let thoughts = "";
let answer = "";

async function main() {
  const response = await ai.models.generateContentStream({
    model: "gemini-3.8-flash",
    contents: prompt,
    config: {
      thinkingConfig: {
        includeThoughts: true,
      },
    },
  });

  for await (const chunk of response) {
    for (const part of chunk.candidates[0].content.parts) {
      if (!part.text) {
        continue;
      } else if (part.thought) {
        if (!thoughts) {
          console.log("Thoughts summary:");
        }
        console.log(part.text);
        thoughts = thoughts + part.text;
      } else {
        if (!answer) {
          console.log("Answer:");
        }
        console.log(part.text);
        answer = answer + part.text;
      }
    }
  }
}

await main();

Go

package main

import (
  "context"
  "fmt"
  "log"
  "os"
  "google.golang.org/genai"
)

const prompt = `
Alice, Bob, and Carol each live in a different house on the same street: red, green, and blue.
The person who lives in the red house owns a cat.
Bob does not live in the green house.
Carol owns a dog.
The green house is to the left of the red house.
Alice does not own a cat.
Who lives in each house, and what pet do they own?
`

func main() {
  ctx := context.Background()
  client, err := genai.NewClient(ctx, nil)
  if err != nil {
      log.Fatal(err)
  }

  contents := genai.Text(prompt)
  model := "gemini-3.8-flash"

  resp := client.Models.GenerateContentStream(ctx, model, contents, &genai.GenerateContentConfig{
    ThinkingConfig: &genai.ThinkingConfig{
      IncludeThoughts: true,
    },
  })

  for chunk := range resp {
    for _, part := range chunk.Candidates[0].Content.Parts {
      if len(part.Text) == 0 {
        continue
      }

      if part.Thought {
        fmt.Printf("Thought: %s\n", part.Text)
      } else {
        fmt.Printf("Answer: %s\n", part.Text)
      }
    }
  }
}

שליטה בתהליך החשיבה

כברירת מחדל, מודלים של Gemini משתמשים בחשיבה דינמית ומתאימים באופן אוטומטי את כמות מאמץ החשיבה בהתאם למורכבות של בקשת המשתמש. עם זאת, אם יש לכם אילוצי זמן אחזור ספציפיים או שאתם רוצים שהמודל יבצע חשיבה מעמיקה יותר מהרגיל, אתם יכולים להשתמש בפרמטרים כדי לשלוט בהתנהגות החשיבה.

רמות ההעמקה (Gemini 4 ו-Gemini 3)

הפרמטר thinkingLevel, שנדרש במודלים של Gemini 4 ומומלץ במודלים של Gemini 3, מאפשר לכם לשלוט בהתנהגות של החשיבה. ‫Gemini 4‏ (gemini-4-argon) תומך ב-low, ב-medium (ברירת המחדל) וב-high.

בטבלה הבאה מפורטות ההגדרות של thinkingLevel לכל סוג מודל:

רמת ההעמקה Gemini 3.8 Flash Gemini 3.6 Flash Gemini 4 Argon ‫Gemini 3.5 ו-3.1 Flash-Lite Gemini 3.1 Flash-Lite Image Gemini 3 Flash Gemini Robotics ER 2 תיאור
minimal לא נתמך (שגיאה) נתמך לא נתמך (שגיאה) נתמך (ברירת מחדל) נתמך (ברירת מחדל) נתמך נתמך תואם להגדרה "ללא חשיבה" ברוב השאילתות. חשוב לזכור ש-minimal לא מבטיח שהמודל לא יבצע תהליך חשיבה. יכול להיות שהמודל יבצע תהליך חשיבה מינימלי מאוד במשימות מורכבות.
low נתמך נתמך נתמך נתמך לא נתמך נתמך נתמך מצמצם את זמן האחזור ואת העלות.
medium ‫יש תמיכה (ברירת מחדל) ‫יש תמיכה (ברירת מחדל) נתמך (ברירת מחדל) נתמך לא נתמך נתמך נתמך חשיבה מאוזנת לרוב המשימות.
high נתמך (דינמי) נתמך (דינמי) נתמך (דינמי) נתמך (דינמי) נתמך (דינמי) ‫יש תמיכה (ברירת מחדל, דינמי) ‫יש תמיכה (ברירת מחדל, דינמי) העומק המקסימלי של החשיבה הרציונלית. יכול להיות שיעבור הרבה יותר זמן עד שהמודל יפיק את הטוקן הראשון של הפלט (לא של החשיבה), אבל הפלט יהיה מנומק בצורה מעמיקה יותר.

בדוגמה הבאה מוסבר איך להגדיר את רמת החשיבה.

Python

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
    model="gemini-3.8-flash",
    contents="Provide a list of 3 famous physicists and their key contributions",
    config=types.GenerateContentConfig(
        thinking_config=types.ThinkingConfig(thinking_level="low")
    ),
)

print(response.text)

JavaScript

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

const ai = new GoogleGenAI({});

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-3.8-flash",
    contents: "Provide a list of 3 famous physicists and their key contributions",
    config: {
      thinkingConfig: {
        thinkingLevel: ThinkingLevel.LOW,
      },
    },
  });

  console.log(response.text);
}

main();

Go

package main

import (
  "context"
  "fmt"
  "google.golang.org/genai"
  "os"
)

func main() {
  ctx := context.Background()
  client, err := genai.NewClient(ctx, nil)
  if err != nil {
      log.Fatal(err)
  }

  thinkingLevelVal := "low"

  contents := genai.Text("Provide a list of 3 famous physicists and their key contributions")
  model := "gemini-3.8-flash"
  resp, _ := client.Models.GenerateContent(ctx, model, contents, &genai.GenerateContentConfig{
    ThinkingConfig: &genai.ThinkingConfig{
      ThinkingLevel: &thinkingLevelVal,
    },
  })

fmt.Println(resp.Text())
}

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.8-flash:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
  "contents": [
    {
      "parts": [
        {
          "text": "Provide a list of 3 famous physicists and their key contributions"
        }
      ]
    }
  ],
  "generationConfig": {
    "thinkingConfig": {
          "thinkingLevel": "low"
    }
  }
}'

אי אפשר להשבית את מצב החשיבה ב-Gemini 4 Argon. בנוסף, אי אפשר להשבית את המודל המעמיק ב-Gemini 3 Flash וב-Flash-Lite. אם לא מציינים רמת העמקה, Gemini ישתמש ברמת העמקה שמוגדרת כברירת מחדל במודל (למשל, "medium" ב-Gemini 4 Argon, ב-Gemini 3.8 Flash וב-Gemini 3.6 Flash).

מודלים מסדרת Gemini 2.5 לא תומכים ב-thinkingLevel. במקום זאת, צריך להשתמש ב-thinkingBudget .

מגבלות על טוקנים ו-max_output_tokens

הפרמטר max_output_tokens מגדיר את המספר המקסימלי של טוקנים שהמודל יכול ליצור בתשובה, כולל טוקנים של חשיבה.

כשהפרמטר הזה מוגדר, הוא פועל כסף קשיח שנאכף על ידי התשתית בלי לשנות את האופן שבו המודל מקצה את תקציב החשיבה (thinking_level).

אם המודל מגיע למגבלה הזו במהלך הנימוק, הוא מפסיק ליצור תשובה עם finish_reason: MAX_TOKENS ומחזיר פלט קטוע או ריק (אבל עדיין מחייב על כל הטוקנים שנוצרו במהלך הנימוק). כדי להקטין את העלות או את זמן האחזור בלי לקצר את התשובות, כדאי להקטין את thinking_level (low או medium) במקום להגדיר ערך קטן ל-max_output_tokens.

‫במודלים של Gemini 4‏ (gemini-4-argon), חשוב לזכור את המגבלות הבאות על ההקשר והפלט:

  • חלון הקשר משותף של מיליון טוקנים: טוקנים של קלט, חשיבה ופלט חולקים חלון הקשר אחד של מיליון טוקנים (1,048,576 טוקנים). אם מספר הטוקנים של הקלט בתוספת max_output_tokens חורג מ-1,048,576 טוקנים, ה-API מגביל אוטומטית את הפלט למקום שנותר בחלון ההקשר (1,048,576 פחות הטוקנים של הקלט).
  • מגבלות פלט לכל בקשה (64K בסטרימינג / 32K לא בסטרימינג) ופענוח ארוך (עד מיליון טוקנים): בקשת סטרימינג אחת (streamGenerateContent) מחזירה עד 65,536 טוקנים, ובקשה אחת שהיא לא בסטרימינג (generateContent) מחזירה עד 32,768 טוקנים. כדי ליצור מעבר למגבלה לכל בקשה (עד 1,048,576 טוקנים פחות הקלט), צריך להגדיר את max_output_tokens מעל המגבלה. ערכות ה-SDK העדכניות של Google GenAI ממשיכות באופן אוטומטי בין הדילוגים כברירת מחדל (automatic_continuation=True), או שאפשר להריץ לולאת לקוח באמצעות continuation_token שמוחזר כשדילוג נעצר עם finish_reason: "CONTINUATION". דוגמאות קוד מופיעות במאמר בנושא פענוח ארוך.

תקציבי חשיבה

הפרמטר thinkingBudget, שהושק בסדרת Gemini 2.5, מגדיר למודל את מספר הטוקנים הספציפי של חשיבה שבהם הוא צריך להשתמש כדי להסיק מסקנות.

בהמשך מפורטים פרטי ההגדרה של thinkingBudget לכל סוג מודל. כדי להשבית את תהליך החשיבה, מגדירים את thinkingBudget ל-0. הגדרת הערך thinkingBudget כ-‎-1 מפעילה חשיבה דינמית, כלומר המודל ישנה את התקציב בהתאם למורכבות הבקשה.

מודל הגדרת ברירת המחדל
(לא הוגדר תקציב חשיבה)
טווח השבתת תהליך החשיבה הפעלת חשיבה דינמית
‫2.5 Pro חשיבה דינמית 128 עד 32768 לא רלוונטי: אי אפשר להשבית את החשיבה ‫thinkingBudget = -1 (ברירת מחדל)
‫2.5 Flash חשיבה דינמית 0 עד 24576 thinkingBudget = 0 ‫thinkingBudget = -1 (ברירת מחדל)
‫‎2.5 Flash Preview חשיבה דינמית 0 עד 24576 thinkingBudget = 0 ‫thinkingBudget = -1 (ברירת מחדל)
‫2.5 Flash Lite המודל לא חושב 512 עד 24576 thinkingBudget = 0 thinkingBudget = -1
2.5 Flash Lite Preview המודל לא חושב 512 עד 24576 thinkingBudget = 0 thinkingBudget = -1
גרסת טרום-השקה של Robotics-ER 1.6 חשיבה דינמית 0 עד 24576 thinkingBudget = 0 ‫thinkingBudget = -1 (ברירת מחדל)
‫2.5 Flash Live Native Audio Preview (09-2025) חשיבה דינמית 0 עד 24576 thinkingBudget = 0 ‫thinkingBudget = -1 (ברירת מחדל)

Python

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="Provide a list of 3 famous physicists and their key contributions",
    config=types.GenerateContentConfig(
        thinking_config=types.ThinkingConfig(thinking_budget=1024)
        # Turn off thinking:
        # thinking_config=types.ThinkingConfig(thinking_budget=0)
        # Turn on dynamic thinking:
        # thinking_config=types.ThinkingConfig(thinking_budget=-1)
    ),
)

print(response.text)

JavaScript

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

const ai = new GoogleGenAI({});

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-2.5-flash",
    contents: "Provide a list of 3 famous physicists and their key contributions",
    config: {
      thinkingConfig: {
        thinkingBudget: 1024,
        // Turn off thinking:
        // thinkingBudget: 0
        // Turn on dynamic thinking:
        // thinkingBudget: -1
      },
    },
  });

  console.log(response.text);
}

main();

Go

package main

import (
  "context"
  "fmt"
  "google.golang.org/genai"
  "os"
)

func main() {
  ctx := context.Background()
  client, err := genai.NewClient(ctx, nil)
  if err != nil {
      log.Fatal(err)
  }

  thinkingBudgetVal := int32(1024)

  contents := genai.Text("Provide a list of 3 famous physicists and their key contributions")
  model := "gemini-2.5-flash"
  resp, _ := client.Models.GenerateContent(ctx, model, contents, &genai.GenerateContentConfig{
    ThinkingConfig: &genai.ThinkingConfig{
      ThinkingBudget: &thinkingBudgetVal,
      // Turn off thinking:
      // ThinkingBudget: int32(0),
      // Turn on dynamic thinking:
      // ThinkingBudget: int32(-1),
    },
  })

fmt.Println(resp.Text())
}

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
  "contents": [
    {
      "parts": [
        {
          "text": "Provide a list of 3 famous physicists and their key contributions"
        }
      ]
    }
  ],
  "generationConfig": {
    "thinkingConfig": {
          "thinkingBudget": 1024
    }
  }
}'

בהתאם להנחיה, יכול להיות שהמודל יחרוג מהתקציב של הטוקנים או ישתמש בפחות טוקנים מהתקציב.

חתימות של מחשבות

ממשק Gemini API הוא חסר מצב (stateless), ולכן המודל מתייחס לכל בקשת API באופן עצמאי ואין לו גישה להקשר של מחשבות משיחות קודמות באינטראקציות מרובות.

כדי לאפשר שמירה על הקשר החשיבה באינטראקציות רב-שלביות, Gemini מחזיר חתימות חשיבה, שהן ייצוגים מוצפנים של תהליך החשיבה הפנימי של המודל.

  • המודלים של Gemini 2.5 מחזירים חתימות חשיבה כשתהליך החשיבה מופעל והבקשה כוללת קריאה להפעלת פונקציות, ובמיוחד הצהרות על פונקציות.
  • מודלים של Gemini 4 ו-Gemini 3 עשויים להחזיר חתימות חשיבה לכל סוגי החלקים. מומלץ תמיד להחזיר את כל החתימות כמו שהן, אבל זה חובה לחתימות של קריאות לפונקציות. מידע נוסף זמין בדף חתימות מחשבה.

הגבלות שימוש נוספות שכדאי לקחת בחשבון כשמשתמשים בקריאה להפעלת פונקציות:

  • החתימות מוחזרות מהמודל בתוך חלקים אחרים בתשובה, לדוגמה, קריאה להפעלת פונקציות או חלקי טקסט. החזרת התשובה המלאה עם כל החלקים למודל בתורות הבאות.
  • אל תשרשרו חלקים עם חתימות.
  • אל תמזגו חלק עם חתימה עם חלק אחר בלי חתימה.

תמחור

כשתהליך החשיבה מופעל, המחיר של התשובה הוא הסכום של טוקנים של פלט וטוקנים של חשיבה. אפשר לקבל את המספר הכולל של טוקנים של חשיבה שנוצרו מהשדה thoughtsTokenCount.

Python

# ...
print("Thoughts tokens:", response.usage_metadata.thoughts_token_count)
print("Output tokens:", response.usage_metadata.candidates_token_count)

JavaScript

// ...
console.log(`Thoughts tokens: ${response.usageMetadata.thoughtsTokenCount}`);
console.log(`Output tokens: ${response.usageMetadata.candidatesTokenCount}`);

Go

// ...
fmt.Println("Thoughts tokens:", response.UsageMetadata.ThoughtsTokenCount)
fmt.Println("Output tokens:", response.UsageMetadata.CandidatesTokenCount)

מודלים חושבים יוצרים מחשבות מלאות כדי לשפר את איכות התשובה הסופית, ואז מפיקים סיכומים שנותנים תובנות לגבי תהליך החשיבה. לכן, התמחור מבוסס על כל הטוקנים של החשיבה שהמודל צריך ליצור כדי להפיק סיכום, למרות שרק הסיכום הוא הפלט מה-API.

מידע נוסף על טוקנים זמין במדריך ספירת טוקנים.

שיטות מומלצות

בקטע הזה מופיעות הנחיות לשימוש יעיל במודלים של חשיבה. כמו תמיד, כדי לקבל את התוצאות הכי טובות, כדאי לפעול לפי ההנחיות והשיטות המומלצות שלנו.

ניפוי באגים והכוונה

  • בדיקת ההיגיון: אם לא מקבלים את התשובה הרצויה מהמודלים של החשיבה, כדאי לנתח בקפידה את סיכומי המחשבות של Gemini. אתם יכולים לראות איך הוא פירק את המשימה והגיע למסקנה, ולהשתמש במידע הזה כדי לתקן את התוצאות.

  • הנחיות לגבי תהליך החשיבה: אם אתם רוצים לקבל פלט ארוך במיוחד, כדאי לתת בהנחיה הוראות שיגבילו את כמות החשיבה של המודל. כך אפשר לשמור יותר טוקנים לתשובה.

מורכבות המשימה

  • משימות פשוטות (מצב חשיבה מושבת): לבקשות פשוטות שלא דורשות חשיבה מורכבת, כמו שליפת עובדות או סיווג, לא צריך להפעיל את מצב החשיבה. דוגמאות:
    • ‫"Where was DeepMind founded?‎"
    • "האם באימייל הזה מבקשים לקיים פגישה או רק מספקים מידע?"
  • משימות בינוניות (ברירת מחדל/חשיבה מסוימת): הרבה בקשות נפוצות נהנות מרמה מסוימת של עיבוד הדרגתי או הבנה מעמיקה יותר. ‫Gemini יכול להשתמש ביכולת החשיבה באופן גמיש כדי לבצע משימות כמו:
    • השוו בין פוטוסינתזה לבין תהליך הגדילה.
    • השוו והבדילו בין מכוניות חשמליות לרכבים היברידיים.
  • משימות קשות (יכולת חשיבה מקסימלית): לאתגרים מורכבים באמת, כמו פתרון בעיות מתמטיות מורכבות או משימות תכנות, מומלץ להגדיר מכסת חשיבה גבוהה. כדי לבצע משימות כאלה, המודל צריך להפעיל את כל יכולות החשיבה והתכנון שלו, ולעיתים קרובות הוא מבצע הרבה שלבים פנימיים לפני שהוא מספק תשובה. דוגמאות:
    • פתור את בעיה 1 ב-AIME 2025: מצא את הסכום של כל בסיסי המספרים השלמים b > 9 שעבורם 17b הוא מחלק של 97b.
    • כתוב קוד Python לאפליקציית אינטרנט שמציגה נתונים בזמן אמת מהבורסה לניירות ערך, כולל אימות משתמשים. להקפיד על יעילות מקסימלית.

מודלים, כלים ויכולות נתמכים

תכונות החשיבה נתמכות בכל המודלים מסדרות 4, 3 ו-2.5. כל היכולות של המודל מפורטות בדף סקירה כללית של המודל.

המודלים החושבים פועלים עם כל הכלים והיכולות של Gemini. כך המודלים יכולים ליצור אינטראקציה עם מערכות חיצוניות, להריץ קוד או לגשת למידע בזמן אמת, ולשלב את התוצאות בהסקה ובתשובה הסופית שלהם.

אתם יכולים לנסות דוגמאות לשימוש בכלים עם מודלים חושבים ב-[Thinking cookbook][Colab].

מה השלב הבא?

thought [Colab]: https://colab.sandbox.google.com/github/google-gemini/cookbook/blob/main/quickstarts/Get_started_thinking.ipynb