Pensamento do Gemini

Os modelos da série Gemini 2.5 usam um "processo de pensamento" interno durante a geração de respostas. Esse processo contribui para melhorar os recursos de raciocínio e ajuda a usar o planejamento em várias etapas para resolver tarefas complexas. Isso torna esses modelos especialmente bons em programação, matemática avançada, análise de dados e outras tarefas que exigem planejamento ou pensamento.

Este guia mostra como trabalhar com os recursos de pensamento do Gemini usando a API Gemini.

Usar modelos de pensamento

Os modelos com recursos de pensamento estão disponíveis no Google AI Studio e na API Gemini. O pensamento está ativado por padrão na API e no AI Studio porque os modelos da série 2.5 podem decidir automaticamente quando e quanto pensar com base no comando. Na maioria dos casos de uso, é vantajoso deixar o pensamento em andamento. No entanto, se você quiser desativar o pensamento, defina o parâmetro thinkingBudget como 0.

Enviar uma solicitação básica

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

Definir o orçamento em modelos de pensamento

O parâmetro thinkingBudget dá ao modelo orientações sobre o número de tokens de pensamento que ele pode usar ao gerar uma resposta. Um número maior de tokens geralmente está associado a um pensamento mais detalhado, necessário para resolver tarefas mais complexas. thinkingBudget precisa ser um número inteiro no intervalo de 0 a 24576. Definir o orçamento de pensamento como 0 desativa o pensamento.

Dependendo da instrução, o modelo pode ter um orçamento de token insuficiente ou em excesso.

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

Usar ferramentas com modelos mentais

Você pode combinar o uso dos modelos de pensamento com qualquer uma das ferramentas e recursos do Gemini para realizar ações além de gerar texto. Isso permite que eles interajam com sistemas externos, executem códigos ou acessem informações em tempo real, incorporando os resultados ao raciocínio e à resposta final.

  • A ferramenta de pesquisa permite que o modelo consulte motores de pesquisa externos para encontrar informações atualizadas ou além dos dados de treinamento. Isso é útil para perguntas sobre eventos recentes ou tópicos muito específicos.

  • A ferramenta de execução de código permite que o modelo gere e execute o código Python para realizar cálculos, manipular dados ou resolver problemas que são melhor processados por algoritmos. O modelo recebe a saída do código e pode usá-la na resposta.

  • Com a saída estruturada, é possível restringir o Gemini para responder com JSON, um formato de saída estruturado adequado para processamento automatizado. Isso é útil principalmente para integrar a saída do modelo aos aplicativos.

  • A chamada de função conecta o modelo de pensamento a ferramentas e APIs externas para que ele possa raciocinar sobre quando chamar a função certa e quais parâmetros fornecer.

Práticas recomendadas

Esta seção inclui algumas orientações para usar modelos de pensamento de maneira eficiente. Como sempre, siga nossas orientações e práticas recomendadas para ter os melhores resultados.

Depuração e direção

  • Analisar o raciocínio: quando você não recebe a resposta esperada dos modelos de pensamento, isso pode ajudar a analisar cuidadosamente o processo de raciocínio do Gemini. Você pode ver como ele dividiu a tarefa e chegou à conclusão e usar essas informações para corrigir os resultados corretos.

  • Fornecer orientação no raciocínio: se você espera uma saída particularmente longa, forneça orientação na instrução para limitar a quantidade de pensamento que o modelo usa. Isso permite que você reserve mais da saída do token para sua resposta.

Complexidade da tarefa

  • Tarefas fáceis (o pensamento pode estar DESLIGADO): para solicitações simples, não é necessário raciocínio complexo, como recuperação de fatos ou classificação simples. O pensamento não é necessário. Por exemplo:
    • "Onde a DeepMind foi fundada?"
    • "Este e-mail está pedindo uma reunião ou apenas fornecendo informações?"
  • Tarefas médias (padrão/algum pensamento): muitas solicitações comuns se beneficiam de um processamento detalhado ou de uma compreensão mais profunda. O Gemini pode usar flexivelmente a capacidade de pensar para tarefas como:
    • Faça uma analogia entre a fotossíntese e o crescimento.
    • Compare e contraste carros elétricos e híbridos.
  • Tarefas difíceis (capacidade de pensamento máxima): para desafios realmente complexos, a IA precisa envolver todos os recursos de raciocínio e planejamento, muitas vezes envolvendo muitas etapas internas antes de fornecer uma resposta. Por exemplo:
    • Resolva o problema 1 da AIME 2025: encontre a soma de todas as bases de números inteiros b > 9 para as quais 17b é um divisor de 97b.
    • Escrever um código Python para um aplicativo da Web que visualize dados de mercado de ações em tempo real, incluindo a autenticação do usuário. Torne o processo o mais eficiente possível.

A seguir