OpenAI Agents SDK 怎么改默认模型并调整 GPT-5 推理参数
2026/9/13 20:45:04 网站建设 项目流程

OpenAI Agents SDK 怎么改默认模型并调整 GPT-5 推理参数

【免费下载链接】openai-agents-pythonA lightweight, powerful framework for multi-agent workflows项目地址: https://gitcode.com/GitHub_Trending/op/openai-agents-python

在 openai-agents-python(OpenAI Agents SDK)中,Agent不设置model时,SDK 会使用默认模型gpt-5.6-luna,并且默认带有reasoning.effort="none"verbosity="low"的推理设置,面向成本敏感、高并发的 agent 工作流。如果你的任务是把默认模型换成gpt-5.6-sol之类的 GPT-5 模型,或者单独调整推理强度、回答详略和 GPT-5.6 的推理模式,本文给出文档中的三种改默认模型的路径和ModelSettings的对应写法。前提是已按 Quickstart 安装 SDK 并配置了 OpenAI API key:

pip install openai-agents export OPENAI_API_KEY=sk-...

方式一:用OPENAI_DEFAULT_MODEL环境变量全局改默认模型

在运行 agent 前设置OPENAI_DEFAULT_MODEL环境变量,之后所有没有单独设置model的 agent 都会统一使用这个模型(来自 docs/models/index.md 的 “Default model” 一节):

export OPENAI_DEFAULT_MODEL=gpt-5.6-sol python3 my_awesome_agent.py

my_awesome_agent.py替换为你的 agent 入口脚本。这个变量在进程启动时读取,改完后重启进程才生效。

方式二:用RunConfig为单次运行设置默认模型

如果只想让某一次Runner.run(...)使用别的模型,通过run_config传入即可:agent 没有设置 model 时,会使用该 run 的模型:

from agents import Agent, RunConfig, Runner agent = Agent( name="Assistant", instructions="You're a helpful agent.", ) result = await Runner.run( agent, "Hello", run_config=RunConfig(model="gpt-5.6-sol"), )

两种方式的区别在于作用范围:环境变量影响进程内所有未设模型的 agent,RunConfig只影响当前这次运行。需要单个 agent 用不同模型时,也可以在Agent上直接传model="gpt-5.6-sol",写法与下文推理参数示例一致。

ModelSettings调整 GPT-5 的推理参数

只要以字符串名使用 GPT-5 模型(如gpt-5.6-sol),SDK 会应用一套默认的ModelSettings;要覆盖它,在Agent上显式传自己的ModelSettings即可:

from openai.types.shared import Reasoning from agents import Agent, ModelSettings my_agent = Agent( name="My Agent", instructions="You're a helpful agent.", # If OPENAI_DEFAULT_MODEL=gpt-5.6-sol is set, passing only model_settings works. # It's also fine to pass a GPT-5 model name explicitly: model="gpt-5.6-sol", model_settings=ModelSettings(reasoning=Reasoning(effort="high"), verbosity="low") )

两个关键参数(示例代码见 examples/basic/hello_world_gpt_5.py):

  • reasoning.effort:推理强度,示例脚本中列出的取值是"none","low","medium","high","xhigh"Reasoning对象从openai.types.shared导入。
  • verbosity:回答详略,取值为"low","medium","high"

文档建议:追求低延迟时用reasoning.effort="none"。注意如果之前设过OPENAI_DEFAULT_MODEL,只传model_settings不传model也是有效的,模型名仍由环境变量决定;显式传模型名同样没问题。

GPT-5.6 的额外推理控制(仅 Responses 路径)

GPT-5.6 在 Responses API 路径下还支持推理模式、跨轮次携带推理上下文和"max"档位的推理强度:

from openai.types.shared import Reasoning from agents import Agent, ModelSettings agent = Agent( name="Deep research agent", model="gpt-5.6-sol", model_settings=ModelSettings( reasoning=Reasoning( mode="pro", effort="max", context="all_turns", ), ), )

使用这一组参数时注意文档给出的边界:

  • reasoning.modereasoning.context是 Responses 专属设置,Chat Completions 路径只使用reasoning.effort。GPT-5.6 的"max"effort 需要走 Responses API;Chat Completions 适配器遇到 mode/context 会忽略并给出警告,在 OpenAI provider 上设置strict_feature_validation=True可以把警告变成报错。
  • 使用context="all_turns"时,需要通过previous_response_id、服务端 Responses 会话,或在下一轮请求中带上先前的 reasoning items 来保留对话;对store=False的无状态调用,要在响应中请求reasoning.encrypted_content,再把这些 reasoning items 作为下一次请求的输入。

非 GPT-5 模型的回退行为

如果你传的是非 GPT-5 模型名且没有自定义model_settings,SDK 会回退到适用于任意模型的通用ModelSettings,不会出现 GPT-5 专用的推理设置。因此“改默认模型 + 调推理参数”这两个动作要一起核对:模型名换成 GPT-5 系列后,推理设置才会按 GPT-5 规则生效。

验证改动是否生效

运行后先检查脚本本身能拿到模型回复,示例脚本的做法是直接打印最终输出:

result = await Runner.run(agent, "Tell me something about recursion in programming.") print(result.final_output)

要确认实际请求用的是哪个模型和哪套参数,按 Quickstart 的 “View your traces” 一节,到 OpenAI Dashboard 的 Trace viewer 中查看本次 agent 运行的 trace。如果走的是 Chat Completions 路径却设置了 mode/context 并看到相关警告,说明该设置没有生效,应改回 Responses 路径。

更多参数(temperaturetop_ptimeoutretry等)在 docs/models/index.md 的 “Advanced OpenAI Responses settings” 和 ModelSettings 参考 中有说明。

【免费下载链接】openai-agents-pythonA lightweight, powerful framework for multi-agent workflows项目地址: https://gitcode.com/GitHub_Trending/op/openai-agents-python

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询