OpenAI Agents SDK 入门速成班
本系列教程全面介绍如何从基础到高级概念学习 OpenAI 的 Agents SDK。本速成班旨在助你从零开始,逐步掌握使用 OpenAI Agents SDK 构建 AI 代理的技能。
什么是 OpenAI Agents SDK?
OpenAI Agents SDK 是一个强大的框架,用于 开发和部署 AI 代理。它提供了以下功能:
核心特性:
- 代理编排:创建并管理智能 AI 代理
- 工具集成:通过自定义工具和内置工具扩展代理功能
- 结构化输出:使用 Pydantic 模型实现类型安全的响应
- 多代理工作流:协调多个代理并实现任务交接
- 实时执行:支持同步、异步和流式执行方式
- 语音集成:支持静态、流式和实时语音功能
- 会话管理:自动保存对话记忆与历史记录
- 生产就绪:内置追踪、防护措施和监控功能
学习路径
本速成班通过实践教程带你掌握 OpenAI Agents SDK 的核心概念:
教程
** 基础层**
-
1_starter_agent - 你的第一个 OpenAI 代理
- 基本代理的创建与配置
- 理解不同的执行方式
- 简单文本处理与响应生成
-
2_structured_output_agent - 类型安全的响应
- 支持票务代理:将投诉转换为结构化的工单
- 产品评论代理:从评论中提取结构化数据
- Pydantic 模型与验证
** 核心能力层**
-
3_tool_using_agent - 代理工具与函数
- 自定义函数工具与
@function_tool
- 内置工具(WebSearch、CodeInterpreter、FileSearch)
- 工具集成与执行模式
-
4_running_agents - 执行与运行精通
- 代理循环:LLM 调用、工具执行、任务交接
- 同步、异步和流式执行方法
- 高级流式事件与异常处理
- 运行配置与对话管理
-
5_context_management - 状态与上下文管理
- 上下文在多次运行间的传递
- 状态持久化与管理
- 对话流程控制
** 高级功能层**
-
6_guardrails_validation - 安全性与验证
- 输入防护措施用于用户验证
- 输出防护措施用于响应过滤
- 自定义业务规则验证
-
7_sessions - 会话与内存管理
- 使用 SQLiteSession 自动保存对话历史
- 内存操作与对话修正
- 多会话管理与组织
** 多代理层**
-
8_handoffs_delegation - 代理交接与委托
- 代理间任务委托
- 分诊系统与智能路由
- 高级交接配置与回调
-
9_multi_agent_orchestration - 复杂工作流
- 并行代理执行与
asyncio.gather()
- 代理作为工具的编排模式
- 多阶段工作流协调
** 生产层**
- 10_tracing_observability - 监控与调试
- 内置追踪与执行可视化
- 自定义追踪与跨度用于复杂工作流
- 性能监控与优化
️ 语音与高级功能
- 11_voice - 语音代理与实时对话
- 静态语音处理(回合制交互)
- 流式语音处理(实时对话)
- 实时语音代理(超低延迟 WebSocket)
- 语音转文字、文字转语音以及语音管道
️ 先决条件
开始本速成班之前,请确保你已具备以下条件:
- 安装了 Python 3.8+(语音功能需 Python 3.9+)
- 从 OpenAI 平台获取 OpenAI API 密钥
- 具备基本的 Python 和 API 知识
- 熟悉 async/await 概念(有帮助但非必需)
- 语音教程:麦克风与扬声器/耳机
如何使用本课程
每个教程都遵循一致的结构:
- README.md:概念讲解与学习目标
- Python 文件:包含代理实现与示例
- 交互界面:Streamlit Web 应用,方便动手测试
- 子模块:针对不同概念的组织示例
- requirements.txt:教程依赖项
- env.example:环境变量模板
学习方法:
- 阅读 README,理解概念
- 查看代码,了解实现细节
- 运行示例,观察代理的实际效果
- 动手实验,修改代码以探索更多可能性
- 使用交互界面,进行实际操作测试
- 尝试语音功能(教程 11),用你的麦克风体验
- 准备好后进入下一教程
教程特色
每个教程包括:
- ✅ 清晰的概念讲解
- ✅ 最小化且可用的代码示例
- ✅ 真实世界的应用场景
- ✅ 分步指导
- ✅ 交互式 Web 界面
- ✅ 最佳实践与技巧
快速入门
- 克隆仓库,并进入本目录
- 选择一个教程,从上面的列表中挑选
- 按照 README 的说明进行操作
- 安装依赖项:
pip install -r requirements.txt
- 设置环境:复制
env.example 到 .env,并添加你的 API 密钥
- 运行示例,开始学习吧!
环境设置
每个教程都需要 OpenAI API 密钥。在每个教程目录中创建一个 .env 文件:
OPENAI_API_KEY=sk-your_openai_key_here
请从以下地址获取你的 API 密钥:https://platform.openai.com/api-keys
学习提示
- 按顺序学习:按教程顺序进行,获得最佳学习体验
- 自由实验:修改代码,看看会发生什么
- 使用 Web 界面:交互式应用让学习更有趣
- 阅读错误信息:它们通常包含有用的提示
- 加入社区:与其他学习者交流,分享经验
常见问题
API 密钥问题
- 确保你的
.env 文件位于教程目录中
- 检查 API 密钥是否有效且余额充足
- 确认环境变量名没有拼写错误
导入错误
- 确保已安装依赖项:
pip install -r requirements.txt
- 检查你使用的 Python 版本是 3.8 或更高
- 如果有冲突,尝试创建虚拟环境
速率限制
- OpenAI 根据你的套餐设定了速率限制
- 如果达到限制,稍等片刻再试
- 考虑升级 OpenAI 套餐以提高限额
更多资源
贡献
欢迎贡献改进、修复 bug 或新增教程。每个教程应满足:
- 自包含且可运行
- 包含清晰的文档
- 遵循既定结构
- 使用最小化且易懂的代码
进度跟踪
跟踪你的学习进度:
- 教程 1:基本代理创建 ✨
- 教程 2:使用 Pydantic 的结构化输出
- 教程 3:工具集成与自定义函数
- 教程 4:执行方法精通
- 教程 5:上下文与状态管理
- 教程 6:防护措施与验证
- 教程 7:会话与内存管理
- 教程 8:代理交接与委托
- 教程 9:多代理编排
- 教程 10:追踪与可观测性
- 教程 11:语音代理与实时对话
祝你学习愉快!
免责声明:
本文档采用基于机器的 AI 翻译服务进行翻译。尽管我们力求准确,但请注意,自动翻译可能存在错误或不准确之处。应以原文(母语)文档作为权威依据。如需获取关键信息,建议使用专业的人工翻译。对于因使用本翻译而产生的任何误解或误读,我们概不负责。