GPT-5 提示指南,翻譯版

大家好,我是Ai學習的老章

OpenAI 官方提示詞指南[1],我看後收穫頗豐,我拿Gemini和Kimi-K2做了翻譯,分享給大家。

GPT-5 是我們最新的旗艦模型,在智能體任務表現、編程、原始智能和可控性方面實現了重大飛躍。

儘管我們相信它在衆多領域開箱即用即可表現出色,本指南仍將分享提示技巧,以最大化模型輸出質量,這些技巧源自我們在實際任務中訓練和應用該模型的經驗。我們將探討提升智能體任務表現、確保指令遵循、利用全新 API 功能,以及優化前端與軟件工程任務的編碼等概念——並結合 AI 代碼編輯器 Cursor 與 GPT-5 的提示調優工作提供關鍵洞見。

我們已看到,在儘可能應用這些最佳實踐並採用我們的規範工具時,都獲得了顯著收益。希望本指南,連同我們構建的 提示優化器工具[2] ,能成爲您使用 GPT-5 的起點。但請始終牢記,提示並非“一招鮮”——我們鼓勵您在此提供的基礎之上進行實驗與迭代,以找到最適合您問題的解決方案。

智能體工作流的可預測性

我們在訓練 GPT-5 時以開發者爲核心:專注於提升工具調用、指令遵循和長上下文理解,使其成爲智能體應用的最佳基礎模型。若將 GPT-5 用於智能體與工具調用場景,建議升級至 Responses API[3],在該接口中,推理會在工具調用之間持久化,從而帶來更高效、更智能的輸出。

控制智能體的急切程度

代理框架可以在控制粒度上覆蓋廣泛的光譜——有些系統把絕大多數決策權下放給底層模型,而另一些系統則用大量的程序化邏輯分支把模型牢牢束縛。GPT-5 經過訓練,能夠在這段光譜的任何位置運作:既可以在模糊情境下做出高層決策,也能處理聚焦且定義明確的任務。本節將介紹如何最佳地校準 GPT-5 的“代理主動性”——換言之,它在主動行動與等待明確指令之間的平衡。

降低主動性的提示

在代理環境中,GPT-5 默認會盡可能全面、深入地收集上下文,以確保給出正確答案。若想縮小 GPT-5 的代理行爲範圍——包括限制旁枝末節的工具調用、減少到達最終答案的延遲——可嘗試以下做法:

將reasoning_effort調低。這會降低探索深度,但提升效率並縮短延遲。許多工作流在中等甚至較低的reasoning_effort下就能穩定達成目標。

在提示中明確定義你希望模型如何探索問題空間的標準。這樣可以減少模型需要探索和思考過多想法的需求:

翻譯如下

如果你願意最大化地規定行爲,你甚至可以設定固定的工具調用預算,如下所示。預算可以根據你想要的搜索深度自然變化。

翻譯如下

在限制核心上下文收集行爲時,明確爲模型提供一個“逃生艙”會很有幫助,這樣更容易滿足較短的上下文收集步驟。通常這表現爲一條允許模型在不確定情況下繼續執行的條款,比如上面示例中的“even if it might not be fully correct”。

提示模型更具積極性

另一方面,如果你想鼓勵模型自主、提高調用工具的持續性,並減少澄清問題或把任務交回給用戶的頻次,我們建議提高reasoning_effort,並使用類似下面的提示來鼓勵堅持並徹底完成任務:

翻譯如下

通常,明確說明代理任務的終止條件、區分安全與非安全操作,以及定義在什麼情況下(如果有)模型可以將任務交回給用戶,這些都會有所幫助。例如,在一組購物工具中,結賬和支付工具在要求用戶澄清時應明確設置更低的不確定性閾值,而搜索工具則應設置極高的閾值;同樣,在代碼環境中,刪除文件工具的閾值應遠低於 grep 搜索工具。

工具序言

我們認識到,在用戶監控的智能體執行過程中,間歇性地告知模型正在執行哪些工具調用及其原因,能夠顯著提升交互體驗——執行流程越長,這類更新帶來的差異越明顯。基於此,GPT-5 經過訓練,能夠通過“工具前序”消息給出清晰的初始計劃並持續彙報進度。

你可以在提示詞中控制工具前序的頻率、風格和內容——從對每個工具調用的詳盡說明,到簡潔的初始計劃,以及介於兩者之間的任何粒度。以下是一條高質量前序提示的示例:

翻譯如下

以下是在該提示下可能產生的工具前序示例——隨着智能體任務複雜度增加,這類前序能極大提升用戶對其工作的可跟蹤性:

"output": [ { "id": "rs_6888f6d0606c819aa8205ecee386963f0e683233d39188e7", "type": "reasoning", "summary": [ { "type": "summary_text", "text": "確定天氣響應\n\n我需要回答用戶關於舊金山天氣的問題。 ...." }, }, { "id": "msg_6888f6d83acc819a978b51e772f0a5f40e683233d39188e7", "type": "message", "status": "completed", "content": [ { "type": "output_text", "text": "我將查詢一個實時天氣服務,以獲取舊金山當前的天氣狀況,並同時提供華氏度和攝氏度的溫度,以滿足您的偏好。" } ], "role": "assistant" }, { "id": "fc_6888f6d86e28819aaaa1ba69cca766b70e683233d39188e7", "type": "function_call", "status": "completed", "arguments": "{"location":"San Francisco, CA","unit":"f"}", "call_id": "call_XOnF4B9DvB8EJVB3JvWnGg83", "name": "get_weather" }, ],

推理力度

我們提供了reasoning_effort參數來控制模型的思考強度以及調用工具的意願;默認值爲medium,但你應根據任務難度進行上調或下調。對於複雜的多步驟任務,我們建議提高推理強度,以獲得最佳輸出。此外,我們發現,將可獨立區分的任務拆分爲多個 agent 輪次,每輪處理一個任務,能達到最佳性能。

通過 Responses API 複用推理上下文

我們強烈建議在使用 GPT-5 時採用 Responses API,以解鎖更高效的智能體流程、更低的成本以及更節省令牌的應用使用。

我們觀察到,與 Chat Completions 相比,使用 Responses API 時評估結果具有統計學上的顯著提升——例如,僅通過切換到 Responses API 並在請求中加入previous_response_id將先前推理項回傳,Tau-Bench Retail 的得分便從 73.9% 提高到 78.2%。這使模型能夠引用其先前的推理軌跡,節省 CoT token,並避免在每次工具調用後從零開始重建計劃,從而同時降低延遲並提升性能——該功能對所有 Responses API 用戶(包括 ZDR 組織)均可用。

最大化編碼性能:從規劃到執行

GPT-5 在所有前沿模型中處於編碼能力領先地位:它能夠在大型代碼庫中修復錯誤、處理大型差異,並實現多文件重構或大型新功能。它還擅長從零開始完整實現新應用,涵蓋前端與後端的實現。在本節中,我們將討論一些提示優化方法,這些方法已被證明能夠提升我們編碼代理客戶在生產用例中的編程性能。

前端應用開發

GPT-5 經過訓練,在嚴格的實現能力之外,還具備出色的基礎審美品味。我們確信它能夠使用各類 Web 開發框架和包;不過,爲了在新應用中充分發揮模型的前端能力,我們建議使用以下框架和包:

框架:Next.js(TypeScript)、React、HTML

樣式 / UI:Tailwind CSS、shadcn/ui、Radix Themes

圖標:Material Symbols、Heroicons、Lucide

動畫:動作

字體:San Serif、Inter、Geist、Mona Sans、IBM Plex Sans、Manrope

GPT-5 在一擊構建應用方面表現卓越。在與該模型的早期實驗中,用戶發現類似下面這種提示——要求模型根據自建的卓越標準反覆執行——能夠利用 GPT-5 的深度規劃與自我反思能力,顯著提升輸出質量。

翻譯如下

在對現有應用進行增量改動與重構時,由模型撰寫的代碼應遵循既有的風格與設計標準,並儘可能“無縫”融入代碼庫。若不進行額外提示,GPT-5 也會主動在代碼庫中尋找參考上下文——例如讀取 package.json 查看已安裝的依賴包——但通過提示指令進一步總結代碼庫的關鍵特徵(包括工程原則、目錄結構、顯性與隱性的最佳實踐),可將此行爲優化到極致。下面的提示片段展示了爲 GPT-5 整理代碼編輯規則的一種方式:可根據你的編程設計品味自由調整規則的實際內容!

我們很榮幸擁有 AI 代碼編輯器 Cursor 作爲 GPT-5 的受信任早期測試者:下文展示了 Cursor 如何微調提示詞,以最大限度發揮模型能力的幕後一瞥。更多信息請參見他們的博客文章,詳細介紹了 GPT-5 在 Cursor 的首日集成:https://cursor.com/blog/gpt-5[4]

系統提示與參數調優

Cursor 的系統提示專注於可靠的工具調用,在冗長程度與自主行爲之間取得平衡,同時保留用戶自定義指令的靈活性。Cursor 對該系統提示的目標是:讓 Agent 在長期任務中能夠相對自主地運行,同時仍能忠實地遵循用戶提供的指令。

團隊最初發現模型輸出過於冗長,經常包含狀態更新和任務後總結,雖然技術上相關,但打斷了用戶的自然流程;同時,工具調用中的代碼輸出質量很高,但由於過於簡潔而難以閱讀,單字母變量名佔主導。爲了尋求更好的平衡,他們將 verbosity API 參數設爲 low,以保持文本輸出簡潔,然後修改提示詞,強烈鼓勵僅在編碼工具中使用冗長輸出。

翻譯如下

這種對參數和提示的雙重使用,形成了一種平衡的格式:既能以高效、簡潔的狀態更新和最終工作摘要呈現,又能讓代碼差異更易讀。

Cursor 還發現,模型偶爾會在採取行動前向用戶尋求澄清或下一步指示,這在較長任務的流程中造成了不必要的摩擦。爲解決這一問題,他們發現,除了提供可用工具和上下文外,還補充更多關於產品行爲的細節,能夠鼓勵模型以更少的打斷和更高的自主性執行較長任務。突出 Cursor 功能的具體細節(如撤銷/拒絕代碼和用戶偏好)有助於減少歧義,讓 GPT-5 明確瞭解其在該環境中的行爲方式。對於長週期任務,他們發現以下提示提升了性能:

翻譯如下

Cursor 發現,在早期模型中有效的提示段落,需要進一步調優才能充分發揮 GPT-5 的潛力。下面是一個示例:

翻譯如下

雖然這段提示在舊模型中表現良好——舊模型需要額外鼓勵才能深入分析上下文——但對 GPT-5 來說卻適得其反,因爲它本身就具備內省和主動收集上下文的能力。在處理較小任務時,該提示經常導致模型過度使用工具,重複發起搜索,而實際上僅憑內部知識就已足夠。

爲解決這一問題,他們通過移除 maximize_ 前綴並弱化“徹底性”措辭來優化提示。調整後,Cursor 團隊觀察到 GPT-5 在何時依賴內部知識、何時調用外部工具方面做出了更明智的決策。它在保持高度自主性的同時避免了不必要的工具調用,從而帶來更高效且相關的行爲。在 Cursor 的測試中,使用結構化 XML 規範(如 <[instruction]_spec>)可提升 GPT-5 對其提示的遵循度,並允許團隊在同一提示的其他位置清晰地引用先前類別和段落。

翻譯如下

儘管系統提示提供了強大的默認基礎,用戶提示仍是實現可操控性的高效槓桿。GPT-5 對直接而明確的指令反應良好,Cursor 團隊始終觀察到,結構化、限定範圍的提示能帶來最可靠的結果——這包括控制輸出長度、主觀代碼風格偏好,以及對邊緣情況的敏感度。Cursor 發現,讓用戶配置自己的 自定義 Cursor 規則[5] 在 GPT-5 的可操控性提升下影響尤爲顯著,爲用戶帶來了更加個性化的體驗。

優化智能與遵循指令 引導

作爲迄今爲止最可控的模型,GPT-5 對關於冗長程度、語氣和工具調用行爲的提示指令表現出極高的接受度。

冗長程度

除了可以像之前的推理模型那樣控制 reasoning_effort 外,我們在 GPT-5 中引入了一個新的 API 參數 verbosity,它影響的是模型最終答案的長度,而不是其思考過程的長度。我們的博客文章更詳細地介紹了這一參數的設計理念——但在本指南中,我們想特別強調:儘管 API 的 verbosity 參數作爲默認設置推出,GPT-5 經過訓練,能夠在提示詞中用自然語言覆蓋 verbosity 設置,以應對某些特定場景,在這些場景裡你可能希望模型偏離全局默認值。上文 Cursor 的例子就很好地說明了這種場景:它把 verbosity 全局設爲 low,然後僅爲編碼工具指定 high verbosity。

指令遵循

與 GPT-4.1 一樣,GPT-5 能夠以手術般的精準度遵循提示指令,這使它能夠靈活地融入各種工作流。然而,它對指令的嚴格遵循也意味着,結構不佳、包含矛盾或含糊指令的提示對 GPT-5 的損害可能比其他模型更大,因爲它會消耗推理 token 試圖調和這些矛盾,而不是隨機選擇一條指令。

下面,我們給出一個對抗性示例,展示這類提示如何常常削弱 GPT-5 的推理軌跡——乍一看似乎內部一致,但仔細審視後,會發現關於預約排期的指令存在衝突:

Never schedule an appointment without explicit patient consent recorded in the chart與後續的auto-assign the earliest same-day slot without contacting the patient as the first action to reduce risk.衝突

提示中先說Always look up the patient profile before taking any other actions to ensure they are an existing patient.,但隨後又給出了與之矛盾的指令When symptoms indicate high urgency, escalate as EMERGENCY and direct the patient to call 911 immediately before any scheduling step.

翻譯如下

通過解決指令層級衝突,GPT-5 能夠引出更高效、性能更優的推理。我們通過以下方式修復了矛盾:

將“在與患者聯繫之後,自動分配最早的當日時段”改爲“在告知患者你的操作後,自動分配最早的當日時段”,使其與“僅在獲得同意後才安排”保持一致。

增加“在緊急情況下不要進行查詢,立即提供 911 指導”,讓模型知道在緊急情況下可以不查詢。

我們深知構建提示是一個迭代過程,許多提示都是不斷由不同利益相關者更新的活文檔——正因如此,更需要徹底審查措辭不當的指令。我們已經看到,不少早期用戶在開展此類審查時,在其核心提示庫中發現了大量模糊與矛盾之處:移除這些問題後,他們的 GPT-5 性能顯著得到簡化與提升。我們建議使用我們的 提示優化工具[6] 來測試您的提示,以便識別這類問題。

最小推理

在 GPT-5 中,我們首次引入 minimal reasoning effort:它是我們最快的選項,仍能享受推理模型範式帶來的好處。我們認爲這是對延遲敏感的用戶,以及當前 GPT-4.1 用戶的最佳升級。

或許並不意外,我們建議使用與 GPT-4.1 獲得最佳結果[7]類似的提示模式。最小推理的性能受提示影響更大,因此需要重點強調的關鍵點包括:

提示模型在最終答案開頭用簡短說明總結其思考過程,例如通過項目符號列表,可以提升對需要更高智能的任務的表現。

在智能體工作流中,請求詳盡且描述性的工具調用開場白,並不斷向用戶更新任務進度,可以提升性能。

儘可能消除工具指令的歧義,並插入前述的“代理持久性提醒”,在推理最少時尤爲關鍵,以最大化長期運行中的代理能力並防止過早終止。

提示式規劃同樣更爲重要,因爲模型擁有的推理 token 更少,難以進行內部規劃。下方給出了我們在代理任務開頭放置的一段示例規劃提示:第二段尤其確保代理在完成所有子任務並徹底完成整體任務後,纔將控制權交還給用戶。

翻譯如下

默認情況下,API 中的 GPT-5 不會用 Markdown 來格式化最終答案,以確保與可能不支持 Markdown 渲染的開發者應用保持最大兼容性。不過,如下提示大多能夠成功誘導模型生成層級化的 Markdown 最終答案。

翻譯如下

偶爾,在長對話過程中,對系統提示裡指定的 Markdown 指令的遵循度會下降。如果你遇到這種情況,我們發現每 3–5 條用戶消息就追加一次 Markdown 指令,可以持續保持遵循度。

元提示

最後,作爲一條元提示,早期測試者發現讓 GPT-5 充當自身的元提示器非常有效。已有用戶僅憑詢問 GPT-5「可以在失敗的提示中添加哪些元素以引出期望行爲,或刪除哪些元素以避免意外行爲」,便把生成的提示修改部署到了生產環境。

以下是我們喜歡的元提示模板示例:

翻譯如下

翻譯如下

代理編碼工具定義

翻譯如下

如 GPT-4.1 提示指南所述, 這裡是[8]我們最新版的apply_patch實現:我們強烈建議使用apply_patch進行文件編輯,以貼合訓練分佈。在絕大多數情況下,最新實現應與 GPT-4.1 中的實現保持一致。

Taubench-Retail 最小推理指令

翻譯如下

翻譯如下

參考資料

OpenAI 官方提示詞指南: https://cookbook.openai.com/examples/gpt-5/gpt-5_prompting_guide

提示優化器工具: https://platform.openai.com/chat/edit?optimize=true

Responses API: https://platform.openai.com/docs/api-reference/responses

https://cursor.com/blog/gpt-5: https://cursor.com/blog/gpt-5

[5]

自定義 Cursor 規則: https://docs.cursor.com/en/context/rules

[6]

提示優化工具: https://platform.openai.com/chat/edit?optimize=true

[7]

GPT-4.1 獲得最佳結果: https://cookbook.openai.com/examples/gpt4-1_prompting_guide

[8]

這裡是: https://github.com/openai/openai-cookbook/tree/main/examples/gpt-5/apply_patch.py