Workflow
VoiceWorkflowBase
基础: ABC
一个语音工作流的基础类。您必须实现 run 方法。 “工作流”是指您希望执行的任何代码,它接收转录文本并产生将被文本转语音模型转换为语音的文本。在大多数情况下,您将创建 Agent 并使用 Runner.run_streamed() 运行它们,返回流中的一些或所有文本事件。您可以使用 VoiceWorkflowHelper 类来帮助从流中提取文本事件。如果您有一个简单的工作流,它只有一个起始代理且没有自定义逻辑,则可以直接使用 SingleAgentVoiceWorkflow。
源代码位于 src/agents/voice/workflow.py
run abstractmethod
运行语音工作流。您将收到一个输入转录文本,并且必须产生将被告知用户的文本。您可以在这里运行任何逻辑。在大多数情况下,最终逻辑将涉及调用 Runner.run_streamed() 并产生流中的任何文本事件。
源代码位于 src/agents/voice/workflow.py
on_start async
可选方法,在接收到任何用户输入之前运行。可用于通过TTS传递问候语或指令。默认情况下不执行任何操作。
VoiceWorkflowHelper
源代码位于 src/agents/voice/workflow.py
stream_text_from async classmethod
stream_text_from(
result: RunResultStreaming,
) -> AsyncIterator[str]
封装一个 RunResultStreaming 对象并产生流中的文本事件。
源代码位于 src/agents/voice/workflow.py
SingleAgentWorkflowCallbacks
源代码位于 src/agents/voice/workflow.py
on_run
on_run(
workflow: SingleAgentVoiceWorkflow, transcription: str
) -> None
SingleAgentVoiceWorkflow
一个简单的语音工作流,它运行单个代理。每个转录和结果都会添加到输入历史记录中。对于更复杂的工作流(例如,多次调用 Runner、自定义消息历史记录、自定义逻辑、自定义配置),请子类化 VoiceWorkflowBase 并实现您自己的逻辑。
源代码位于 src/agents/voice/workflow.py
__init__
__init__(
agent: Agent[Any],
callbacks: SingleAgentWorkflowCallbacks | None = None,
)
创建一个新的单代理语音工作流。
参数
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
agent
|
Agent[Any]
|
要运行的代理。 |
required |
callbacks
|
SingleAgentWorkflowCallbacks | None
|
在工作流期间调用的可选回调函数。 |
None
|
源代码位于 src/agents/voice/workflow.py
on_start async
可选方法,在接收到任何用户输入之前运行。可用于通过TTS传递问候语或指令。默认情况下不执行任何操作。