OpenAI Agents SDK 是官方开源的多代理框架,支持 Python。内置 handoffs 交接、Guardrails 安全过滤、Tracing 运行追踪、Human-in-the-loop 人工介入,几行代码构建复杂 AI 工作流,23k Stars。

🎤 引言

想让 AI 帮你处理复杂任务,但市面上的框架要么太简单、要么太重?

OpenAI Agents SDK 就是来填补这个空白的。

这是 OpenAI 官方的开源多代理框架,专为 Python 开发者设计。它的核心能力是什么?让多个 AI Agent 协同工作,handoffs 交接机制让代理之间能平滑传递任务,Guardrails 过滤不安全内容,Tracing 追踪整个工作流运行状态。

23k Stars,MIT 协议,官方维护——背靠 OpenAI 这棵大树,文档和生态都不需要担心。


⭐ 核心功能

Handoffs(代理交接)

这是 Agents SDK 的核心创新。一个 Agent 处理不了的任务,可以交接给另一个 Agent。比如:

  • 客服 Agent 判断是技术问题 → 交接给技术支持 Agent
  • 销售 Agent 发现用户需要定制方案 → 交接给方案 Agent

交接时,上下文会完整传递,下一个 Agent 知道前面发生了什么。复杂的业务逻辑可以用这种方式编排。

Guardrails(安全过滤)

配置输入输出的安全检查。比如:

  • 检测用户输入是否包含敏感信息(邮件地址、电话号码)
  • 检测输出是否包含禁止内容
  • 自定义验证函数,任何场景都能接

Guardrails 在模型调用前后都会执行,确保内容安全合规。

Tracing(运行追踪)

内置的可观测性工具。每一个 Agent 的每一次调用、每一个 handoff、每一条消息——全部记录。你可以在 UI 上看到完整的工作流执行链路,哪里出错了、哪个步骤耗时最长,一目了然。

调试 AI 应用从来没这么省心过。

Human-in-the-loop(人工介入)

某些关键步骤需要人工确认?内置支持。Agent 可以暂停执行,等待人类批准后再继续。适合审批流程、风控确认等需要人工参与的场景。

Sessions(会话管理)

自动管理多轮对话历史。不需要自己维护 context window,Sessions API 帮你搞定。跨 Agent 的上下文也能保持一致。

Realtime Agents(实时语音代理)

最新功能:结合 gpt-realtime-1.5 可以构建语音交互 Agent。通话、实时翻译、语音助手——支持 WebSocket 流式输出,延迟低至毫秒级。

多 Provider 支持

不局限于 OpenAI 模型。实际上它基于 LiteLLM,可以对接 100+ LLM Provider:Anthropic、Google Gemini、Groq、DeepSeek、Ollama(本地模型)——想用什么模型就用什么。


📥 安装使用

pip 安装

pip install openai-agents

需要 Python 3.10+。

环境变量

export OPENAI_API_KEY="your-api-key"
# 如果用其他 provider
export OPENAI_BASE_URL="https://api.deepseek.com"
export DEEPSEEK_API_KEY="your-deepseek-key"

Hello World 示例

from agents import Agent, Runner

agent = Agent(
    name="Haiku Writer",
    instructions="You write haikus. Respond only with a haiku.",
)

result = Runner.run_sync(agent, "Write a haiku about coding.")
print(result.final_output)

# Output:
# Code within the code,
# Functions calling themselves,
# Infinite loop's dance.

Handoffs 示例

from agents import Agent, Runner, handoff

# 定义两个 Agent
sales_agent = Agent(
    name="Sales Agent",
    instructions="你负责解答产品咨询",
)

tech_agent = Agent(
    name="Tech Agent",
    instructions="你负责解答技术问题",
)

# 带 handoff 的主 Agent
triage_agent = Agent(
    name="Triage Agent",
    instructions="判断用户问题是销售还是技术相关,并交接",
    handoffs=[sales_agent, tech_agent]
)

result = Runner.run_sync(triage_agent, "你们的定价是多少?")

Guardrails 示例

from agents import Agent, Runner
from agents.guards import Guardrail, GuardrailError

# 自定义 Guardrail
def no_compensation_check(ctx, value):
    if "compensation" in value.lower():
        raise GuardrailError("Cannot discuss compensation")

guardrail = Guardrail(
    name="No Compensation",
    inject.instructions="如果用户询问薪酬相关问题,拒绝回答",
    validators=[no_compensation_check],
)

agent = Agent(
    name="HR Assistant",
    instructions="你是一个 HR 助手",
    guards=[guardrail],
)

🎯 适用场景

客服机器人

多代理协作:先由 triage Agent 分类,再交接给对应部门 Agent。接入企业知识库,回答更精准。

AI 销售系统

线索评分 → 资格验证 → 产品推荐 → 人工跟进,每一步都可以是不同的 Agent,互相交接,逻辑清晰。

代码审查工作流

一个 Agent 审代码、一个 Agent 提建议、一个 Agent 生成 patch。Handoffs 让流程自动化。

风控/合规流程

Human-in-the-loop 机制,重要决策需要人工确认。AI 预处理,人工做最终决定。

语音助手

Realtime Agents + 低延迟流式输出,适合做电话机器人、实时翻译、会议助手。


⚠️ 注意事项

依赖 OpenAI

虽然支持多 Provider,但默认绑定 OpenAI 模型。某些功能(如 Realtime)在其他 Provider 上不一定能用。企业内部使用建议看看 LiteLLM 兼容性列表。

学习曲线

Handoffs 和 Guardrails 概念不复杂,但真正用好需要理解 SDK 的执行模型。建议先跑通官方 examples,再根据自己的业务改造。

调试成本

多 Agent 协作时,一个 Agent 出错可能影响整个流程。Tracing 虽然能追踪,但排查多个 Agent 交接时的逻辑 bug 需要耐心。

生产环境

SDK 本身是 MIT 开源的,生产可用。但大规模部署时建议关注官方 CHANGELOG,版本迭代较快。


✅ 总结

优点:

  • ✅ OpenAI 官方维护,文档和生态有保障
  • ✅ Handoffs 机制让多 Agent 协作变得优雅
  • ✅ Guardrails 内置,开箱即用的安全过滤
  • ✅ Tracing 可观测,调试 AI 应用不再盲人摸象
  • ✅ Human-in-the-loop 支持,关键流程可人工介入
  • ✅ 基于 LiteLLM,100+ 模型可选
  • ✅ 23k Stars,社区活跃

缺点:

  • ❌ 默认依赖 OpenAI API
  • ❌ 多 Agent 协作时调试复杂度上升
  • ❌ Realtime 功能较新,部分 Provider 不兼容
  • ❌ 版本迭代快,需要关注 breaking changes

推荐指数:⭐⭐⭐⭐

如果你用 Python 开发 AI 应用,需要多代理协作能力,OpenAI Agents SDK 是目前最省心的选择。官方开源、文档完善、Examples 丰富,上手门槛不高。Realtime Agents 方向的探索也值得关注。当然,它不是银弹——复杂的工作流设计需要投入,但投入产出比是值得的。

GitHub | PyPI | 文档