工作流概念

代理框架工作流定义用于协调代码、代理、状态、事件和人工输入的显式、可检查的执行路径。 该框架通过同一工作流运行模型提供基于功能和图形的 API。

工作流 API

所有 SDK 都支持基于图形的工作流。 Python还提供实验性功能工作流 API。

.NET SDK 使用基于WorkflowBuilder图形的 API。 它通过边和条件连接类型化执行器,支持扇出和扇入执行,发出工作流和执行器事件,并在超级步骤边界为进度创建检查点。 兼容的工作流可以通过标准代理接口公开。AsAIAgent()

这两个 API 都生成相同的可观察工作流结果。 选择与要表达的执行模型匹配的 API:

功能 (@workflow 图 (WorkflowBuilder
控制流 本地Python(if、循环、asyncio.gather 边缘和条件
最适用于 顺序管道、自定义循环和即席并行 固定图、扇出/扇入和经过类型验证的消息路由
并行度 asyncio.gather 并行边组和超步执行
可观察性 使用@step的逐步骤事件 每个执行器的事件
人类参与闭环 ctx.request_info() RequestInfoExecutor
设置检查点 每个@step的结果缓存 超级步边界检查点
代理包装 .as_agent()FunctionalWorkflow .as_agent()Workflow

Go SDK 使用基于 workflow.NewBuilder 图形的 API。 它通过边、条件以及扇出组或扇入组来连接已绑定的执行器,然后在诸如 inproc.Default 之类的执行环境中运行该图。 面向代理的工作流可以通过带有 agentworkflow.New(...) 的标准代理接口对外提供。

图形和运行时模型

  • 执行程序 接收输入、执行工作并发出输出。
  • 用于在执行器之间路由值。
  • 事件 公开工作流生命周期和执行活动。
  • 状态管理管理持久化和运行级别的工作流状态。

高级执行功能

有关面向功能的指南,例如检查点、人工循环、可视化和业务流程,请参阅 工作流功能

后续步骤