Skip to main content
Example showing audio understanding with the Interactions API. Supports audio from URLs, local files, and raw bytes.
audio_understanding.py
"""
Gemini Interactions - Audio Understanding
==========================================

Example showing audio understanding with the Interactions API.
Supports audio from URLs, local files, and raw bytes.
"""

from agno.agent import Agent
from agno.media import Audio
from agno.models.google import GeminiInteractions

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

agent = Agent(
    model=GeminiInteractions(id="gemini-3.5-flash"),
    markdown=True,
)

# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
    # --- Audio from URL ---
    agent.print_response(
        "Describe what you hear in this audio clip.",
        audio=[
            Audio(
                url="https://download.samplelib.com/mp3/sample-3s.mp3",
                mime_type="audio/mp3",
            )
        ],
    )

Run the Example

1

Set up your virtual environment

uv venv --python 3.12
source .venv/bin/activate
uv venv --python 3.12
.venv\Scripts\activate
2

Install dependencies

uv pip install -U agno google-genai
3

Export your Google API key

export GOOGLE_API_KEY="your_google_api_key_here"
$Env:GOOGLE_API_KEY="your_google_api_key_here"
4

Run the example

Save the code above as audio_understanding.py, then run:
python audio_understanding.py
Full source: cookbook/90_models/google/gemini_interactions/audio_understanding.py