Azure OpenAI Basic
Create a minimal AzureOpenAI agent and print sync, async, and streamed responses.
"""
Azure Basic
===========
Cookbook example for `azure/openai/basic.py`.
"""
from agno.agent import Agent, RunOutput # noqa
from agno.models.azure import AzureOpenAI
import asyncio
# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------
agent = Agent(model=AzureOpenAI(id="gpt-5.2"), markdown=True)
# Get the response in a variable
# run: RunOutput = agent.run("Share a 2 sentence horror story")
# print(run.content)
# Print the response on the terminal
# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
# --- Sync ---
agent.print_response("Share a 2 sentence horror story")
# --- Sync + Streaming ---
agent.print_response("Share a 2 sentence horror story", stream=True)
# --- Async ---
asyncio.run(agent.aprint_response("Share a breakfast recipe.", markdown=True))
# --- Async + Streaming ---
asyncio.run(
agent.aprint_response("Share a breakfast recipe.", markdown=True, 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 openaiExport environment variables
export AZURE_OPENAI_API_KEY="your_azure_openai_api_key_here"
export AZURE_OPENAI_ENDPOINT="your_azure_openai_endpoint_here"Select the Azure OpenAI deployment
Deploy the model used by the source in the resource identified by AZURE_OPENAI_ENDPOINT. Set its deployment name before running Python:
export AZURE_OPENAI_DEPLOYMENT="your_deployment_name"Keep the underlying model ID in AzureOpenAI(id=...). This variable selects the Azure deployment used in the request URL. Without it, the SDK uses the model ID as the deployment name, which works only when the names match. See Azure deployment setup.
Run the example
Save the code above as basic.py, then run:
python basic.pyFull source: cookbook/90_models/azure/openai/basic.py