Day 036|OpenAI Agents SDK 快速开始:今天跑通第一个 Agent

系列:100 天系统学习 AI Agent 开发

当前阶段:OpenAI Agents SDK 主线

今日目标:OpenAI Agents SDK 的核心路径是定义 Agent、运行 Agent,再逐步加入工具和协作。

1. 用项目眼光看

今天把注意力放到 OpenAI Agents SDK 的主线上。OpenAI Agents SDK 的核心路径是定义 Agent、运行 Agent,再逐步加入工具和协作。 我会尽量把它拆成能写代码、能检查、能复用的形状。

2. 设计取舍

  • Agent 定义:名称、instructions、模型、工具和输出类型要清晰。
  • 运行过程:关注 run 的输入、历史、工具调用、中断和 final output。
  • 工程护栏:结构化输出、guardrails、tracing 和 evals 是上线前的基础设施。

3. 小实验

今天的主任务是:按 Quickstart 梳理最小代码:Agent、instructions、run、final_output。

我会按这个节奏做:

  1. 写出最小 Agent 配置:name、instructions、tools、output。
  2. 完成主题任务:按 Quickstart 梳理最小代码:Agent、instructions、run、final_output。
  3. 保存一次运行记录:输入、工具调用、输出、错误或改进点。

4. 验收样例

今天先把 Agent 配置写成可检查对象,后面再替换成真实 SDK 代码:

python 复制代码
agent_spec = {
    "name": "day_036_agent",
    "goal": "OpenAI Agents SDK 的核心路径是定义 Agent、运行 Agent,再逐步加入工具和协作。",
    "instructions": "只完成当天主题相关任务,遇到缺失信息先追问。",
    "tools": ["search_docs", "run_demo", "save_note"],
    "output_type": "markdown_with_checklist"
}

run_log = {
    "input": "按 Quickstart 梳理最小代码:Agent、instructions、run、final_output。",
    "tool_calls": [],
    "final_output": None,
    "needs_review": True
}

5. 复盘记录

我今天给自己设一个发布门槛:这篇文章不能只像学习笔记,还要像一块项目积木。

  • 积木名称:OpenAI Agents SDK 快速开始
  • 应该放进项目的材料:一个 Agent 配置对象、运行日志或工具调用记录
  • 读者收藏它的理由:读者看完能照着跑出一个可检查的最小例子
  • 不达标就返工的原因:先跑通一轮,再加工具。一次性把 handoffs、MCP、guardrails 都加上很难排错。

面试官会追问:Quickstart 跑通后,还缺哪五件事?

缺输入校验、工具权限、停止预算、可观测性和评测。Quickstart 证明 SDK 能工作,不证明业务可以上线。我会把示例升级成一条可回放 run:固定 instructions 版本,注册一个只读工具,限制最大轮数,保存 trace,并用三条数据集样本验证。

还要能解释 Runner 与 Agent 的边界:Agent 描述角色、指令、工具和输出;Runner 负责实际执行循环与生命周期;宿主应用仍要负责鉴权、持久化和业务事务。

面试时最危险的回答是"框架会自动处理"。我会明确列出自动处理的部分和仍由业务负责的部分,并演示工具报错时系统如何终止而不是无限自愈。

今日检查清单

  • 给今天的产物命名,后面文章能继续引用:一个 Agent 配置对象、运行日志或工具调用记录
  • 给今天的坑找一个反例或失败输入
  • 给今天的文章补一个读者能直接照做的步骤
  • 写出今天用到的 Agent 配置或运行参数
  • 保存一次输入、工具调用、输出和错误信息
  • 把能交给 SDK 的能力和必须自己写的业务逻辑分开
  • 把下一篇需要的输入单独列出来
相关推荐
晗夜未央38 分钟前
任务队列反复失败,先分清重试、阻塞和结果待核对
开发语言·javascript
Fuyo_11191 小时前
C++ AVL树保姆级详解:从平衡因子到四大旋转机制
java·c++·算法
锋行天下1 小时前
DeepSeek写Langgraph就是个大傻逼,一本正经胡说八道
前端·人工智能·后端
Sarvartha1 小时前
Date、LocalDate、LocalTime、LocalDateTime、DateTimeFormatter类
java
jktantan1 小时前
每个节点 41 字节:把一棵百万节点树拆进 14 个 typed array
前端·javascript·vue.js·算法·typescript
阿俊-全栈开发2 小时前
LikeShop 多商户 Java 版商城微服务模块拆分与部署架构演进实践
java·微服务·架构·likeshop开源商城·多商户源码
计算机魔术师2 小时前
Anthropic官方插件被「寄生」,背后是同一类攻击又来了
前端
Wang's Blog2 小时前
Java 项目实战:交友项目 - 联系人列表
java·开发语言·交友
我命由我123452 小时前
访客系统形式(有用户概念、无用户概念)
java·开发语言·前端·javascript·python·产品运营·产品经理
key_3_feng2 小时前
评估与对齐:Agent 自我进化的护栏
前端·数据库·agent