dynamic_model_router.py
Run the Example
1
Set up your virtual environment
2
Install dependencies
3
Export your OpenRouter API key
4
Run the example
Save the code above as
dynamic_model_router.py, then run:Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Configure an OpenRouter agent with an ordered fallback model list so a request failing on rate limits, timeouts, or overload retries on the next model.
"""
This example demonstrates how to use dynamic model router with OpenRouter.
Dynamic models provide automatic failover when the primary model encounters:
- Rate limits
- Timeouts
- Unavailability
- Model overload
OpenRouter will automatically try the models defined in order until one succeeds.
"""
from agno.agent import Agent
from agno.models.openrouter import OpenRouter
# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------
# Create an agent with dynamic models
# If the primary model fails, OpenRouter will automatically try the models defined in order
agent = Agent(
model=OpenRouter(
id="anthropic/claude-sonnet-4", # Primary model
models=[
"deepseek/deepseek-r1", # First fallback model
"openai/gpt-4o", # Second fallback model
],
),
markdown=True,
)
# Run the agent - it will use the primary model if available,
# or automatically fall back to alternative models if needed
agent.print_response("Write a short poem about resilience and backup plans")
# You can also check which model was actually used in the response
# by examining the response metadata (if available from OpenRouter)
# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
pass
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activate
uv venv --python 3.12
.venv\Scripts\activate
Install dependencies
uv pip install -U agno openai
Export your OpenRouter API key
export OPENROUTER_API_KEY="your_openrouter_api_key_here"
$Env:OPENROUTER_API_KEY="your_openrouter_api_key_here"
Run the example
dynamic_model_router.py, then run:python dynamic_model_router.py
Was this page helpful?