Близнецы думают

Модели серии Gemini 2.5 используют внутренний «процесс мышления» во время генерации ответа. Этот процесс способствует улучшению их способностей к рассуждению и помогает им использовать многоэтапное планирование для решения сложных задач. Это делает эти модели особенно хорошими для кодирования, сложной математики, анализа данных и других задач, требующих планирования или обдумывания.

В этом руководстве показано, как работать с мыслительными способностями Gemini с помощью API Gemini.

Используйте модели мышления

Модели с интеллектуальными способностями доступны в Google AI Studio и через API Gemini. Мышление включено по умолчанию как в API, так и в AI Studio, поскольку модели серии 2.5 имеют возможность автоматически решать, когда и сколько думать, на основе подсказки. В большинстве случаев полезно оставить размышления. Но если вы хотите отключить мышление, вы можете сделать это, установив для параметра thinkingBudget значение 0.

Отправить базовый запрос

Питон

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)

JavaScript

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."
         }
       ]
     }
   ]
 }'
 ```

Установите бюджет на модели мышления

Параметр thinkingBudget дает модели рекомендации по количеству токенов мышления, которые она может использовать при генерации ответа. Большее количество токенов обычно связано с более детальным мышлением, которое необходимо для решения более сложных задач. thinkingBudget должен быть целым числом в диапазоне от 0 до 24576. Установка бюджета мышления на 0 отключает мышление.

В зависимости от запроса модель может переполнить или уменьшить бюджет токена.

Питон

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)

JavaScript

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
    }
  }
}'

Используйте инструменты с моделями мышления

Вы можете комбинировать использование моделей мышления с любыми инструментами и возможностями Gemini для выполнения действий, выходящих за рамки генерации текста. Это позволяет им взаимодействовать с внешними системами, выполнять код или получать доступ к информации в реальном времени, включая результаты в свои рассуждения и окончательный ответ.

  • Инструмент поиска позволяет модели запрашивать внешние поисковые системы, чтобы найти актуальную информацию или информацию, выходящую за рамки ее обучающих данных. Это полезно для вопросов о недавних событиях или очень конкретных темах.

  • Инструмент выполнения кода позволяет модели генерировать и запускать код Python для выполнения вычислений, манипулирования данными или решения проблем, которые лучше всего решаются алгоритмически. Модель получает выходные данные кода и может использовать их в своем ответе.

  • С помощью структурированного вывода вы можете заставить Gemini отвечать в формате JSON — формате структурированного вывода, подходящем для автоматической обработки. Это особенно полезно для интеграции результатов модели в приложения.

  • Вызов функций подключает модель мышления к внешним инструментам и API, поэтому она может решать, когда вызывать нужную функцию и какие параметры предоставлять.

Лучшие практики

В этом разделе приведены некоторые рекомендации по эффективному использованию моделей мышления. Как всегда, следование нашим подсказкам и передовым практикам принесет вам наилучшие результаты.

Отладка и управление

  • Просмотрите рассуждения . Если вы не получаете ожидаемого ответа от моделей мышления, полезно тщательно проанализировать процесс рассуждения Близнецов. Вы можете увидеть, как задача была разбита на части и пришла к ее завершению, и использовать эту информацию для корректировки результатов.

  • Обеспечьте руководство в рассуждениях . Если вы надеетесь на особенно длинный результат, вы можете предоставить рекомендации в своем подсказке, чтобы ограничить объем размышлений, используемых моделью. Это позволяет вам зарезервировать больше вывода токена для вашего ответа.

Сложность задачи

  • Простые задачи (мышление может быть отключено): для простых запросов не требуется сложное рассуждение, такое как простой поиск фактов или классификация, мышление не требуется. Примеры включают в себя:
    • «Где была основана DeepMind?»
    • «Это письмо с просьбой о встрече или просто с информацией?»
  • Средние задачи (по умолчанию/некоторое обдумывание). Многие распространенные запросы выигрывают от поэтапной обработки или более глубокого понимания. Близнецы могут гибко использовать мыслительные способности для решения таких задач, как:
    • Проведите аналогию фотосинтеза и взросления.
    • Сравните и сопоставьте электромобили и гибридные автомобили.
  • Сложные задачи (максимальные мыслительные способности). Для решения действительно сложных задач ИИ должен задействовать все свои возможности рассуждения и планирования, часто включая множество внутренних шагов, прежде чем дать ответ. Примеры включают в себя:
    • Решите задачу 1 в AIME 2025: найдите сумму всех целочисленных оснований b > 9, для которых 17 b является делителем 97 b .
    • Напишите код Python для веб-приложения, которое визуализирует данные фондового рынка в реальном времени, включая аутентификацию пользователей. Сделайте это максимально эффективно.

Что дальше?