Grounding with Gemini

Grounding enables Gemini to search the web and provide responses backed by real-time information with citations.

Grounding enables Gemini to search the web and provide responses backed by real-time information with citations. This is a legacy tool - for Gemini 2.0+ models, consider using the 'search' parameter instead.

grounding.py
"""Grounding with Gemini.

Grounding enables Gemini to search the web and provide responses backed by
real-time information with citations. This is a legacy tool - for Gemini 2.0+
models, consider using the 'search' parameter instead.

Run `uv pip install google-generativeai` to install dependencies.
"""

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

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

agent = Agent(
    model=Gemini(
        id="gemini-3.7-flash",
        grounding=True,
        grounding_dynamic_threshold=0.7,  # Optional: set threshold for grounding
    ),
    add_datetime_to_context=True,
)

# Ask questions that benefit from real-time information
agent.print_response(
    "What are the current market trends in renewable energy?",
    stream=True,
    markdown=True,
)

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

if __name__ == "__main__":
    pass

Run the Example

Set up your virtual environment

uv venv --python 3.12
source .venv/bin/activate

Install dependencies

uv pip install -U agno google-genai

Export your Google API key

export GOOGLE_API_KEY="your_google_api_key_here"

Use Google Search on current models

In the saved Gemini(...) configuration, replace grounding=True with search=True and remove grounding_dynamic_threshold=0.7. The current SDK converts the legacy grounding object to Google Search but drops that threshold. Install google-genai as shown here; the source docstring names the legacy package.

Run the example

Save the code above as grounding.py, then run:

python grounding.py

Full source: cookbook/90_models/google/gemini/grounding.py