Tool Use
Answer current-events questions with web search tools on an AIML API model, sync and async.
These retained examples come from the source revision linked below. Use the installation and model configuration in the AI/ML API guide, or use the compatible OpenAILike adaptation below with an older package.
"""Run `pip install ddgs` to install dependencies."""
import asyncio
from agno.agent import Agent
from agno.models.aimlapi import AIMLAPI
from agno.tools.websearch import WebSearchTools
# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------
agent = Agent(
model=AIMLAPI(id="gpt-5.6-luna"),
tools=[WebSearchTools()],
markdown=True,
)
# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
# --- Sync ---
agent.print_response("Whats happening in France?")
# --- Async + Streaming ---
asyncio.run(agent.aprint_response("Whats happening in France?", stream=True))Run the Example
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activateInstall dependencies
uv pip install -U agno ddgs openaiExport your AI/ML API key
export AIMLAPI_API_KEY="your_aimlapi_api_key_here"Use the working gateway adapter
In the saved Python file, replace the AIMLAPI import with:
from os import environ
from agno.models.openai.like import OpenAILikeReplace the entire AIMLAPI(...) model expression with:
OpenAILike(
id="openai/gpt-5-2",
api_key=environ["AIMLAPI_API_KEY"],
base_url="https://api.aimlapi.com/v1",
)Keep the surrounding Agent(...) settings and run calls. This route supports image input as well as text; use the provider's exact IDs when choosing another model.
Run the example
Save the code above as tool_use.py, then run:
python tool_use.pyFull source: cookbook/90_models/aimlapi/tool_use.py