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 的能力和必须自己写的业务逻辑分开
  • 把下一篇需要的输入单独列出来
相关推荐
吴声子夜歌2 小时前
Guava——散列
java·guava
用户3126874877202 小时前
AQS 到底怎么排队的?CLH 队列、state 与条件变量全链路拆解
java
计算机魔术师2 小时前
英伟达砸130亿美元买下一个平台,黄仁勋到底在怕什么?
前端
Json____2 小时前
springboot开发高校选课管理系统:从零构建前后端分离的全栈实践
java·spring boot·后端·毕业设计·毕设·wwwoop.com
全栈项目管理程序猿2 小时前
ArcGIS JS 基础教程(18):SceneLayer 场景图层
javascript
leoZ2312 小时前
第 2 篇:搭建地基——Vue3 + Vite + Tailwind v4 + shadcn-vue
前端·javascript·vue.js·人工智能·目标检测·数据挖掘·语音识别
xcl09252 小时前
民宿预约系统开发实战:从需求分析到上线部署全流程解析
java·spring boot
步行cgn2 小时前
为何以继承方式引入SpringBoot
java·spring boot·后端
CoderYanger2 小时前
A.每日一题:1140. 石子游戏 II
java·程序人生·算法·leetcode·游戏·职场和发展·深度优先
禾高网络2 小时前
养老系统开发:背景、架构与养老行业展望
java·大数据·人工智能·小程序·架构