Skip to main content
Use OpenAI models through the Responses or Chat API. Supports all GPT models with tools, vision, and structured output.
from agno.agent import Agent
from agno.models.openai import OpenAIResponses

agent = Agent(
    model=OpenAIResponses(id="gpt-5.2"),
    markdown=True,
)

agent.print_response("Explain quantum entanglement", stream=True)

Tool Use

from agno.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.tools.yfinance import YFinanceTools

agent = Agent(
    model=OpenAIResponses(id="gpt-5.2"),
    tools=[YFinanceTools(stock_price=True)],
    markdown=True,
)

agent.print_response("What's NVDA's stock price?", stream=True)

Vision

from agno.agent import Agent
from agno.media import Image
from agno.models.openai import OpenAIResponses

agent = Agent(
    model=OpenAIResponses(id="gpt-5.2"),
    markdown=True,
)

agent.print_response(
    "Tell me about this image",
    images=[Image(url="https://upload.wikimedia.org/wikipedia/commons/0/0c/GoldenGateBridge-001.jpg")],
    stream=True,
)

Structured Output

from pydantic import BaseModel, Field
from agno.agent import Agent
from agno.models.openai import OpenAIResponses

class MovieScript(BaseModel):
    name: str = Field(..., description="Movie name")
    setting: str = Field(..., description="Movie setting")
    genre: str = Field(..., description="Movie genre")
    characters: list[str] = Field(..., description="Character names")
    storyline: str = Field(..., description="3 sentence storyline")

agent = Agent(
    model=OpenAIResponses(id="gpt-5.2"),
    description="You write movie scripts.",
    output_schema=MovieScript,
)

agent.print_response("New York")

Reasoning

from agno.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.tools.yfinance import YFinanceTools

agent = Agent(
    model=OpenAIResponses(id="o3-pro"),
    tools=[YFinanceTools()],
    markdown=True,
)

agent.print_response("Write a report on NVDA, is it a good buy?", stream=True)

Run Examples

export OPENAI_API_KEY=xxx

# Clone and run
git clone https://github.com/agno-agi/agno.git
cd agno/cookbook/92_models/openai

python responses/basic.py
python responses/tool_use.py
python responses/image_agent.py