> ## Documentation Index
> Fetch the complete documentation index at: https://ikun.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 运行您的团队

> 了解如何运行团队并获得响应。

`Team.run()` 函数会运行团队并生成响应，响应形式可以是一个 `TeamRunResponse` 对象，也可以是一系列的 `TeamRunResponseEvent` 对象。

我们的许多示例都使用了 `team.print_response()`，这是一个在终端打印响应的辅助工具。它底层调用的是 `team.run()`。

以下是运行团队的方法。响应会被捕获在 `response` 和 `response_stream` 变量中。

```python theme={null}
from agno.team import Team
from agno.models.openai import OpenAIChat

agent_1 = Agent(name="News Agent", role="Get the latest news")

agent_2 = Agent(name="Weather Agent", role="Get the weather for the next 7 days")

team = Team(name="News and Weather Team", mode="coordinate", members=[agent_1, agent_2])

response = team.run("What is the weather in Tokyo?")

# Synchronous execution
result = team.run("What is the weather in Tokyo?")

# Asynchronous execution
result = await team.arun("What is the weather in Tokyo?")

# Streaming responses
for chunk in team.run("What is the weather in Tokyo?", stream=True):
    print(chunk.content, end="", flush=True)

# Asynchronous streaming
async for chunk in await team.arun("What is the weather in Tokyo?", stream=True):
    print(chunk.content, end="", flush=True)
```

## 流式传输中间步骤

在团队执行过程中，会发生多个事件，我们实时提供这些事件以增强团队的透明度。

您可以通过设置 `stream_intermediate_steps=True` 来启用中间步骤的流式传输。

```python theme={null}
# Stream with intermediate steps
response_stream = team.run(
    "What is the weather in Tokyo?",
    stream=True,
    stream_intermediate_steps=True
)
```

### 处理事件

您可以通过迭代响应流来处理到达的事件：

```python theme={null}
response_stream = team.run("Your prompt", stream=True, stream_intermediate_steps=True)

for event in response_stream:
    if event.event == "TeamRunResponseContent":
        print(f"Content: {event.content}")
    elif event.event == "TeamToolCallStarted":
        print(f"Tool call started: {event.tool}")
    elif event.event == "ToolCallStarted":
        print(f"Member tool call started: {event.tool}")
    elif event.event == "ToolCallCompleted":
        print(f"Member tool call completed: {event.tool}")
    elif event.event == "TeamReasoningStep":
        print(f"Reasoning step: {event.content}")
    ...
```

<Note>
  当团队成员正在执行时，团队成员事件会在团队执行期间产生。您可以通过设置 `stream_member_events=False` 来禁用此功能。
</Note>

### 存储事件

您可以将运行期间发生的所有事件存储在 `RunResponse` 对象上。

```python theme={null}
from agno.team import Team
from agno.models.openai import OpenAIChat
from agno.utils.pprint import pprint_run_response

team = Team(model=OpenAIChat(id="gpt-4o-mini"), members=[], store_events=True)

response = team.run("Tell me a 5 second short story about a lion", stream=True, stream_intermediate_steps=True)
pprint_run_response(response)

for event in agent.run_response.events:
    print(event.event)
```

默认情况下，`TeamRunResponseContentEvent` 和 `RunResponseContentEvent` 事件不会被存储。您可以通过设置 `events_to_skip` 参数来修改要跳过的事件。

例如：

```python theme={null}
team = Team(model=OpenAIChat(id="gpt-4o-mini"), members=[], store_events=True, events_to_skip=[TeamRunEvent.run_started.value])
```

### 事件类型

根据团队的配置，`Team.run()` 和 `Team.arun()` 函数会发送以下事件：

#### 核心事件

| Event Type               | Description     |
| ------------------------ | --------------- |
| `TeamRunStarted`         | 指示运行开始          |
| `TeamRunResponseContent` | 以单个块形式包含模型的响应文本 |
| `TeamRunCompleted`       | 表示运行成功完成        |
| `TeamRunError`           | 指示在运行期间发生错误     |
| `TeamRunCancelled`       | 表示运行已被取消        |

#### 工具事件

| Event Type              | Description       |
| ----------------------- | ----------------- |
| `TeamToolCallStarted`   | 指示工具调用开始          |
| `TeamToolCallCompleted` | 表示工具调用完成，包括工具调用结果 |

#### 推理事件

| Event Type               | Description  |
| ------------------------ | ------------ |
| `TeamReasoningStarted`   | 指示代理的推理过程开始  |
| `TeamReasoningStep`      | 包含推理过程中的单个步骤 |
| `TeamReasoningCompleted` | 表示推理过程完成     |

#### 内存事件

| Event Type                  | Description |
| --------------------------- | ----------- |
| `TeamMemoryUpdateStarted`   | 指示代理正在更新其内存 |
| `TeamMemoryUpdateCompleted` | 表示内存更新完成    |

有关详细文档，请参阅 [TeamRunResponse](/reference/teams/team-response) 文档。
