跳转至

Agent 可视化

Agent 可视化功能允许你使用 Graphviz 生成 Agents 及其关系的结构化图形表示。这有助于理解 Agents、工具和交接/切换在应用程序中是如何相互作用的。

安装

安装可选的 viz 依赖组:

pip install "openai-agents[viz]"

生成图形

你可以使用 draw_graph 函数生成 Agent 可视化图形。此函数创建一个有向图,其中: - Agents 表示为黄色方框。 - 工具 表示为绿色椭圆。 - 交接/切换 表示为从一个 Agent 到另一个 Agent 的有向边。

示例用法

from agents import Agent, function_tool
from agents.extensions.visualization import draw_graph

@function_tool
def get_weather(city: str) -> str:
    return f"The weather in {city} is sunny."

spanish_agent = Agent(
    name="西班牙语 Agent",
    instructions="你只会说西班牙语。",
)

english_agent = Agent(
    name="英语 Agent",
    instructions="你只会说英语",
)

triage_agent = Agent(
    name="分流 Agent",
    instructions="根据请求的语言交接给相应的 Agent。",
    handoffs=[spanish_agent, english_agent],
    tools=[get_weather],
)

draw_graph(triage_agent)
Agent 图形

这将生成一个图形,直观地表示 分流 Agent 的结构及其与子 Agents 和工具的连接。

理解可视化图形

生成的图形包括: - 一个 起始节点 (__start__),表示入口点。 - Agents 表示为填充黄色的 矩形。 - 工具表示为填充绿色的 椭圆。 - 表示交互的有向边: - 实心箭头 表示 Agent 到 Agent 的交接/切换。 - 虚线箭头 表示工具调用。 - 一个 结束节点 (__end__),表示执行终止的位置。

自定义图形

显示图表

默认情况下,draw_graph 会在文档内联显示图表。若要在单独的窗口中显示图表,请编写以下代码:

draw_graph(triage_agent).view()

保存图表

默认情况下,draw_graph 会在文档内联显示图表。若要将其保存为文件,请指定文件名:

draw_graph(triage_agent, filename="agent_graph")

这将在工作目录中生成 agent_graph.png