Agent.run() 函数运行 agent 并生成响应,响应可以是一个 RunResponse 对象,也可以是 RunResponse 对象流。
我们的许多示例都使用了 agent.print_response(),这是一个用于在终端中打印响应的辅助工具。它底层调用的是 agent.run()。
运行你的 Agent
以下是运行 agent 的方法。响应会捕获在response 变量中。
RunResponse
在不使用流式传输时,Agent.run() 函数会返回一个 RunResponse 对象。它具有以下属性:
理解指标有关指标如何收集和使用的详细说明,请参阅 指标文档。
流式响应
要启用流式传输,请在调用run() 时设置 stream=True。这将返回一个 RunResponseEvent 对象迭代器,而不是单个响应。
从
agno 版本 1.6.0 开始,Agent.run() 函数返回的是 RunResponseEvent 的迭代器,而不是 RunResponse 对象。流式传输中间步骤
为了获得更详细的流式输出,可以通过设置stream_intermediate_steps=True 来启用中间步骤。这将提供关于 agent 内部过程的实时更新。
处理事件
您可以通过迭代响应流来处理即将到来的事件:存储事件
您可以将运行过程中发生的所有事件存储在RunResponse 对象上。
RunResponseContentEvent 事件。您可以通过设置 events_to_skip 参数来修改要跳过的事件。
例如:
事件类型
根据 agent 的配置,以下事件会由Agent.run() 和 Agent.arun() 函数生成:
核心事件
控制流事件
工具事件
推理事件
记忆事件
请参阅 RunResponseEvent 文档中的详细说明。