ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

GPT5 你真的会用吗?OpenAI官方 Prompt 手册解读:从 Responses API 到 Agent 的配置骨架

GPT5 你真的会用吗?OpenAI官方 Prompt 手册解读:从 Responses API 到 Agent 的配置骨架 1. 为什么你的 GPT-5 用起来“笨笨的”先说结论GPT-5 在公开测评里分数高和你本地跑出来效果差这两件事并不矛盾。测评用的是官方调好的参数、干净的上下文、明确的工具定义而你多半是在一个混着历史对话、互相打架的 system prompt、默认reasoning_effort的环境里调用它。模型没变是配置骨架没搭对。我见过太多人把 GPT-5 当“更聪明的 GPT-4”用一段几百字的 system prompt 里既要求“快速回答”又要求“深度思考”既说“不要问直接做”又说“改动前必须确认”然后抱怨它输出又慢又飘。OpenAI 官方的 GPT-5 Prompt 手册其实把话说得很直白——GPT-5 是一个需要精确指令的执行引擎不是一个靠感觉聊天的机器人。它吃的是结构化的上下文、明确的积极性档位、以及正确的 API 形态。这篇不聊玄学只交付能直接复制的东西一份settings.json/config.toml骨架、一套通过统一 Key 接入的示例、以及逐项验证动作。你照着改完至少能定位到“测评强、自己用却笨”的那几个配置差异点。适合正在用 Responses API 或搭 Agent 工作流、但觉得 GPT-5 没发挥出来的开发者。2. 接入前置用统一 Key 打通 Responses API 与 Agent在讲配置骨架之前得先把“怎么调”这件事理顺。GPT-5 的很多能力尤其是跨轮次的推理链路保留依赖 Responses API而 Agent 场景又要求你能在多个模型、多个工具之间切换。如果每个模型都单独配一套 Key 和 base_url配置会迅速失控。我的做法是用一个统一入口来管 Key 和路由把模型名、base_url、鉴权都收敛到一处。这样settings.json里只关心“用哪个模型、什么参数”不关心“Key 从哪来”。TaoToken 就是干这个的一个 Key 覆盖对话、编码、Agent 调用base_url 统一指向https://taotoken.net/api省掉在多个平台之间来回切配置的麻烦。具体操作路径很直接先去控制台建 Key再按文档把 base_url 和模型名填进你的客户端。下面给的是骨架你替换成自己的 Key 即可。注意base_url 用https://taotoken.net/api不要带多余路径后缀否则部分 SDK 会拼接出 404。拿 Key 和查接入方式走这两个入口控制台建 Keyhttps://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewriteAPI Keys 管理https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite接入文档https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite如果你只是想先验证模型行为不写代码可以直接在模型对话页面试提示词结构模型对话https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentchatutm_campaignrewrite3. 可复制配置settings.json 与 config.toml 骨架这一节是全文的核心。GPT-5 表现不佳八成问题出在配置层API 形态选错、reasoning_effort没调、积极性档位缺失、指令互相矛盾。下面这份骨架把这些都显式写出来你按需改值。3.1 settings.jsonResponses API 调用骨架{ provider: { base_url: https://taotoken.net/api, api_key: sk-your-taotoken-key, api_style: responses }, model: { name: gpt-5, reasoning_effort: medium, verbosity: low }, agent: { eagerness: low, max_tool_calls: 3, tool_preambles: true, persist_until_solved: false }, context: { previous_response_id: null, keep_reasoning_chain: true } }几个关键字段解释一下。api_style设成responses是硬要求用 Chat Completions 形态会丢掉跨工具调用的推理链路官方数据里这一项就差出几个百分点。reasoning_effort从minimal到high简单任务用low就够复杂重构再上high别一上来就拉满延迟会很难看。eagerness控制“代理积极性”low表示快速执行、尽早停止high表示自主推进、不轻易交还。3.2 config.tomlAgent 工作流骨架[provider] base_url https://taotoken.net/api api_key sk-your-taotoken-key api_style responses [model] name gpt-5 reasoning_effort medium verbosity low [agent.context_gathering] search_depth medium max_tool_calls 3 early_stop true [agent.persistence] enabled false terminate_only_when_solved true [agent.tool_preambles] enabled true rephrase_goal true outline_plan true narrate_steps truecontext_gathering和persistence是官方手册里反复强调的两块。前者决定它搜多少上下文就动手后者决定它遇到不确定时是停下问你还是自己扛。很多人把这两个都设成“最大”结果简单任务被它做成登月工程这就是“笨”的来源之一。3.3 提示词结构骨架把矛盾指令拆开配置之外system prompt 的结构同样致命。下面这个骨架把“快速模式”和“自主模式”分开避免互相打架context_gathering Goal: Get enough context fast. Stop as soon as you can act. Method: Start broad, then fan out to focused subqueries. Early stop: You can name exact content to change. Max tool calls: 3 /context_gathering tool_preambles Always rephrase the users goal first. Then outline a structured plan. Narrate each step succinctly. /tool_preambles code_editing_rules Clarity and reuse: every component modular. Consistency: adhere to existing design system. Simplicity: favor small, focused components. /code_editing_rules注意这里没有出现“必须确认后再执行”和“自动执行不要问”同时存在的情况。矛盾指令会让 GPT-5 在推理阶段反复权衡表现出来就是又慢又犹豫。你要么在persistence里明确“读操作直接做、写操作先确认”要么干脆只保留一种模式。4. 验证请求逐项确认配置生效配完不算完得逐项验证。下面给一段最小可跑的 Python 示例用 Responses API 形态发一次请求并打印关键返回字段。import os from openai import OpenAI client OpenAI( base_urlhttps://taotoken.net/api, api_keyos.environ[TAOTOKEN_API_KEY], ) resp client.responses.create( modelgpt-5, reasoning{effort: medium}, text{verbosity: low}, input[ {role: system, content: You are a precise coding agent.}, {role: user, content: 列出当前目录下所有 .py 文件只输出文件名。}, ], ) print(response_id:, resp.id) print(output:, resp.output_text)跑通后重点看三件事。第一resp.id有没有返回这是你下一轮传previous_response_id的依据保留推理链路靠它。第二输出长度是否符合verbositylow的预期如果还是很长检查是不是 system prompt 里又写了“详细解释”。第三延迟是否在可接受范围reasoning_effortmedium下简单任务通常几秒内返回如果超过十几秒多半是effort设高了或者上下文塞太多。再验证 Agent 的积极性档位。把同一个任务分别用eagernesslow和high跑一遍观察工具调用次数。low应该在 2 到 3 次内收敛并给出答案high会继续探索、可能调用更多工具。如果你设了low但它还在疯狂调工具说明context_gathering的early_stop没生效回去检查配置有没有被覆盖。5. 本篇常见错排查5.1 报错 404 或 base_url 拼接异常最常见的是 base_url 写成了https://taotoken.net/api/v1或带了多余斜杠。SDK 内部会自己拼/responses你多写一层就 404。统一用https://taotoken.net/api别加后缀。5.2 输出又长又啰嗦verbosity 像没生效先确认你用的是 Responses API 形态Chat Completions 形态下verbosity参数可能被忽略。其次检查 system prompt如果里面写了“请详细说明”“逐步解释”它会覆盖verbositylow。参数和提示词冲突时模型倾向于听提示词。5.3 Agent 反复问确认不肯自己推进这是persistence没开或者被矛盾指令抵消了。如果你希望它自主完成把persist_until_solved设为true同时删掉 system prompt 里“每次改动前必须询问”这类句子。两者只能留一个。5.4 跨轮次推理丢失每轮都像重新开始检查有没有传previous_response_id。Responses API 的优势就是保留推理链路你不传这个 ID等于每轮都从零推理性能自然掉回 Chat Completions 的水平。把上一轮的resp.id存下来下一轮带上。5.5 简单任务被做成大工程reasoning_effort和eagerness都设太高了。简单查询用minimal或loweagerness用low并给max_tool_calls设个上限。官方手册里明确建议给工具调用设预算不然它会一直搜。6. 把配置固定下来长期跑 Agent 工作流排查完上面这些你会发现 GPT-5 的“笨”基本都能归到配置层API 形态、推理档位、积极性、指令一致性。把这四样固定成模板每次新项目直接复制比每次凭感觉调 prompt 靠谱得多。如果你要长期跑编码或 Agent 任务建议把配置沉淀成一份可版本管理的文件配合 Coding Plan 做统一额度管理避免多项目多 Key 混乱Coding Planhttps://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewriteClaude Code 这类 Anthropic 形态的客户端接入方式文档里有单独说明ClaudeCodeAnthropic 接入https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentclaudecodeutm_campaignrewrite最后留一个我自己的习惯每次调完配置先用一个固定的小任务比如“列出目录下 .py 文件”跑一遍对比输出长度、工具调用次数、延迟三个指标。这三个数稳定了再上真实任务。配置骨架对了GPT-5 才从“测评里的强者”变成你手里真正能干活的那个。
返回列表