OpenAI Agents SDK:如何选择和组织 Agent 工作流
- 公司:OpenAI
- 来源类型:官方开发者文档
- 原文:https://developers.openai.com/api/docs/guides/agents
- 可靠性:高;当前 OpenAI Developers 文档。
Agent 的定义
OpenAI 将 Agent 描述为能够规划、调用工具、与专职 Agent 协作,并保留完成多步骤工作所需状态的应用。
推荐的阅读和构建路径
- 先用 Quickstart 跑通一个 Agent。
- 用 Agent definitions 和 Models/providers 定义单个专职 Agent 的职责、指令、工具和模型。
- 任务变复杂后,再加入运行循环、编排与 handoff。
- 对高风险操作加入 guardrails 和人工审批。
- 用 results/state 管理最终结果、可恢复状态和下一轮输入。
- 用 tracing 和 evaluation 检查 Agent 的行为,再优化。
Responses API 和 Agents SDK 的分工
- Responses API:应用自己拥有循环;适合需要直接控制模型交互、工具、状态、路由、分支和自定义编排的情况。
- Agents SDK:SDK 负责 Agent loop;适合重复工具调用、分支、多专职 Agent、sessions、tracing、guardrails 和可恢复审批流。
多 Agent 不是默认答案
只有当不同 specialist 确实需要不同指令、工具或策略时,才拆分 Agent。多 Agent 的关键问题不是“能不能调用多个模型”,而是谁负责最终回答、何时 handoff、状态如何传递、失败如何恢复。
关键实践
- 把单个 specialist 的契约定义清楚,再做多 Agent 编排。
- 有副作用的工具要有 guardrail 和审批点。
- 先用 tracing 看清实际运行路径,再做评估和优化。
- 需要文件、命令、依赖、快照和隔离环境时使用 sandbox agent。
- 生产系统要把状态、审批和运行结果作为一等对象,而不是只保存最终文本。
适用场景
客服处理、内部运营、代码和数据任务、需要工具调用与人工审批的业务流程。