> ## Documentation Index
> Fetch the complete documentation index at: https://agno-v2-codex-docs-audit-20260719-0149.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent with Thinking Budget

> Cap Gemini 2.5 Pro's reasoning with thinking_budget and surface thought summaries with include_thoughts.

An example of how to use the thinking budget parameter with the Gemini model. This requires `google-genai > 1.10.0`

<Warning>
  Google has scheduled `gemini-2.5-pro` for shutdown on October 16, 2026 and recommends `gemini-3.1-pro-preview`. Gemini 3 models use `thinking_level` instead of a token `thinking_budget`. See [Gemini deprecations](https://ai.google.dev/gemini-api/docs/deprecations) and [Gemini thinking](https://ai.google.dev/gemini-api/docs/thinking).
</Warning>

```python agent_with_thinking_budget.py theme={null}
"""
An example of how to use the thinking budget parameter with the Gemini model.
This requires `google-genai > 1.10.0`

- Turn off thinking use thinking_budget=0
- Turn on dynamic thinking use thinking_budget=-1
- To use a specific thinking token budget (e.g. 1280) use thinking_budget=1280
- Use include_thoughts=True to get the thought summaries in the response.
"""

from agno.agent import Agent
from agno.models.google import Gemini

# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------

task = (
    "Three missionaries and three cannibals need to cross a river. "
    "They have a boat that can carry up to two people at a time. "
    "If, at any time, the cannibals outnumber the missionaries on either side of the river, the cannibals will eat the missionaries. "
    "How can all six people get across the river safely? Provide a step-by-step solution and show the solutions as an ascii diagram"
)

agent = Agent(
    model=Gemini(id="gemini-2.5-pro", thinking_budget=1280, include_thoughts=True),
    markdown=True,
)
agent.print_response(task, stream=True)

# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------

if __name__ == "__main__":
    pass
```

## Run the Example

<Steps>
  <Snippet file="create-venv-step.mdx" />

  <Step title="Install dependencies">
    ```bash theme={null}
    uv pip install -U agno google-genai
    ```
  </Step>

  <Step title="Export your Google API key">
    <CodeGroup>
      ```bash Mac/Linux theme={null}
      export GOOGLE_API_KEY="your_google_api_key_here"
      ```

      ```bash Windows theme={null}
      $Env:GOOGLE_API_KEY="your_google_api_key_here"
      ```
    </CodeGroup>
  </Step>

  <Step title="Migrate the Gemini thinking configuration">
    Replace `Gemini(id="gemini-2.5-pro", thinking_budget=1280, include_thoughts=True)` with `Gemini(id="gemini-3.1-pro-preview", thinking_level="low", include_thoughts=True)` in the saved file.
  </Step>

  <Step title="Run the example">
    Save the code above as `agent_with_thinking_budget.py`, then run:

    ```bash theme={null}
    python agent_with_thinking_budget.py
    ```
  </Step>
</Steps>

Full source: [cookbook/90\_models/google/gemini/agent\_with\_thinking\_budget.py](https://github.com/agno-agi/agno/blob/v2.7.4/cookbook/90_models/google/gemini/agent_with_thinking_budget.py)
