OpenAI 的 Codex 與 Anthropic 的 Claude Code,近期都被用戶發現同一個問題:你選定並持續顯示的模型,背地裡可能已經換成另一個模型在處理請求。
(前情提要:OpenAI 公開 Astra 精選作品:80 款網站、App、遊戲一鍵複製)
(背景補充:Jack Dorsey 開砲 AI 巨頭:別拿安全當藉口壟斷)
一名 ChatGPT Pro 用戶最近在 GitHub 上開了一則 Issue,回報自己在 Codex 桌面版全程選用 gpt-6-astra,介面上的模型選單也從頭到尾沒變過,但事後翻開 Usage 紀錄,當天大部分請求其實是由 gpt-5.5 處理完成的,中間沒有任何提示或通知。
Codex Issue #44637 目前仍是 OPEN 狀態,OpenAI 尚未正式回應。而在 Anthropic 這邊,Claude Code 用戶過去三個月也多次回報類似情況,官方明明公開承諾會提示用戶,但實際切換卻常常悄悄發生。
選好的模型,可能只是入口
這起事情發生在 9 月中旬。用戶 cypherair 在與 gpt-6-astra 的對話中,收到一則提示:「此請求需要額外的安全檢查,可能需要更多時間」,並附上連結,說明這是針對生物或資安相關請求的加強審查,同時提供「改用較快模型重試」的選項。該名用戶沒有點選,只是關掉提示繼續等待。
前端的模型選單全程顯示 gpt-6-astra,對話中也沒有跳出任何換模型的訊息。但 cypherair 事後查閱 Usage 頁面顯示,當天大部分請求由 gpt-5.5 完成。也就是說,你在螢幕上看到的是一個模型的名字,實際回答你的卻是另一個,而且系統從沒告訴你發生了什麼事。
唯一的線索,藏在你看不到的標頭裡
cypherair 進一步翻了 Codex 原始碼。本機的對話紀錄檔裡,每一輪都寫著 gpt-6-astra,客戶端從頭到尾都沒有主動要求換成 gpt-5.5,換句話說,改道的決定是在 OpenAI 的伺服器端做的,不是本地程式的選擇。
客戶端理論上能看出改道的唯一訊號,是伺服器回應裡一個叫 openai-model 的標頭,而不是一般人以為的 response.model 欄位。
更值得玩味的是,Codex App 其實內建了換模型的提示機制,收到特定通知時會顯示一行「Your request was routed to {toModel}.」,但這次它從未出現,因為相關事件被系統設計成暫時性訊息,不會被寫進對話紀錄。
Anthropic 早有前例
其實把模型換掉本身不是新鮮事。Anthropic 在 2026 年 6 月底發布《Redeploying Claude Fable 5》公告時就講得很清楚:一旦 Fable 5 被安全機制擋下,系統會先讓你知道,再把請求轉給 Opus 4.8 處理。Claude Code 平常確實會這麼做,跳出提示說安全機制判定內容涉及資安或生物議題,「Switched to Opus 4.8.」
但過去三個月,GitHub 上陸續出現多起用戶回報的例外。Issue #82319 記錄了 7 月 3 日到 29 日間,同一個付費帳號上發生 17 次無聲切換,其中兩次助理甚至仍向用戶表示自己是 Fable 5,實際上卻已經在 Opus 上跑了好幾個小時。
9 月中提出、目前仍是 OPEN 的 Issue #94652 統計更完整:16 個對話 session 裡發生 38 次 fallback,其中 16 次用戶完全沒有察覺,整段工作都在替代模型上跑完;受影響的對話輪次超過 2,000 輪,用量約 7.28 億 token,而且全部照一般訂閱用量計費,沒有任何標註。
另外還有 Issue #91923 回報子代理從第二輪起悄悄換成 Opus,以及更早的 Issue #66822、Issue #67246,後者甚至遇到系統誤判一般工程討論為敏感內容,想手動切回都做不到。
不過 Anthropic 的機制設計本身有通知這一步,問題出在多次沒有被實際執行;而 OpenAI 這邊則是連官方是否承認都還沒有下文,目前所有結論都來自用戶自己讀原始碼、翻 log 得出的推論…。
📍相關報導📍
Claude Fable 破解了懸置 373 年歷史的蘇格蘭古密碼

