This example demonstrates how to create an agent that generates images using DALL-E while streaming intermediate steps and events during the image creation process.
from typing import Iteratorfrom agno.agent import Agent, RunOutputEventfrom agno.models.openai import OpenAIChatfrom agno.tools.dalle import DalleToolsfrom agno.utils.common import dataclass_to_dictfrom rich.pretty import pprintimage_agent = Agent( model=OpenAIChat(id="gpt-5-mini"), tools=[DalleTools()], description="You are an AI agent that can create images using DALL-E.", instructions=[ "When the user asks you to create an image, use the DALL-E tool to create an image.", "The DALL-E tool will return an image URL.", "Return the image URL in your response in the following format: ``", ], markdown=True,)run_stream: Iterator[RunOutputEvent] = image_agent.run( "Create an image of a yellow siamese cat", stream=True, stream_intermediate_steps=True,)for chunk in run_stream: pprint(dataclass_to_dict(chunk, exclude={"messages"})) print("---" * 20)