Codex 走 Relay 與官方比較:功能、價格與資料

Wokey Team · 2026-09-24

簡短回答: 透過 Relay 使用 Codex,就是以自訂 provider 模式執行 Codex。所有在你電腦上發生的事都和以前完全一樣:寫程式、執行指令、編輯檔案。差異可以歸結為三點:

  • 需要 ChatGPT 帳號的雲端功能無法使用。
  • 依賴 OpenAI 伺服器的功能會打折扣,包括上下文壓縮、/status 中的用量上限和 Fast 模式。
  • 計費從訂閱額度改為按 token 計費。

以下逐一說明每項差異。Codex 的行為依據其原始碼和官方文件,Wokey 的行為依據閘道程式碼。

連接 Codex 的三種方式

模式 設定 計費
用 ChatGPT 登入 codex login,再選 Sign in with ChatGPT 方案額度,依每 5 小時和每週的時段限制
OpenAI API 金鑰 內建的 openai provider 加 API 金鑰 OpenAI API 費率
自訂 provider(Relay) config.toml 中的 [model_providers.xxx] 表格 Relay 的費率

Relay 就是第三種模式。前兩種直接和 OpenAI 自己的服務溝通;第三種則由你選擇的閘道接收請求。設定方式請見 Codex config.toml 設定指南。

完全不變的部分

Codex 大部分都在你自己的電腦上執行,所以下列功能不受模型供應商影響:

  • 讀寫檔案、執行指令、用 apply_patch 編輯程式碼
  • 沙箱和核准模式
  • AGENTS.md、MCP 伺服器和本機 Skills
  • 工作階段歷史和 codex resume
  • IDE 擴充功能和非互動式的 codex exec

所以就寫程式而言,Relay 和官方服務的差別,主要取決於你用哪個模型、它是否原生跑在 Responses API 上,而不是服務是不是官方的。

需要 ChatGPT 帳號的功能

這些功能在 OpenAI 的雲端執行,需要用 ChatGPT 登入:

  • Codex cloud(雲端任務)。使用 API 金鑰或自訂 provider 時,codex cloud 會顯示:

    Not signed in. Please run 'codex login' to sign in with ChatGPT, then re-run 'codex cloud'.
    
  • GitHub 中的 @codex 和 GitHub 自動程式碼審查

  • Slack 和 Linear 整合

  • 語音輸入、Connectors 和外掛分享

  • 從手機遙控

如果你主要在終端機或 IDE 中用 Codex 寫程式,這些都無關緊要。如果你依賴雲端任務或 GitHub 整合,就需要 ChatGPT 帳號。

使用自訂 provider 時的變化

壓縮在本機進行。 用 ChatGPT 登入時,上下文滿了會由 OpenAI 的伺服器壓縮。使用自訂 provider 時,Codex 會用你目前的模型在本機撰寫摘要。功能仍然可用,摘要品質則取決於模型。

沒有圖片生成。 自訂 provider 不提供圖片生成工具。

/status 沒有用量上限。 /status 中的 5 小時和每週額度,來自 OpenAI 回應中的 x-codex-* 用量標頭。Relay 不會回報 ChatGPT 方案的用量,所以那一區會顯示為無法取得。請改到 Relay 的後台查看用量和餘額。

沒有 Fast 模式。 Fast 模式需要 ChatGPT 帳號。

只有 HTTPS 串流。 使用自訂 provider 時,Codex 不使用 WebSocket,請求是一般的 HTTPS 加 SSE。

網路搜尋取決於閘道和模型。 Codex 仍會把 web_search 工具送給自訂 provider;能不能用取決於閘道和上游。在 Wokey 上,原生支援 Responses 的模型會把工具原封不動地傳給上游,轉換成 Chat Completions 的模型則會丟掉它。

模型中繼資料。 Codex 內建了官方模型的上下文長度、推理等級等資訊。如果模型名稱不在內建清單中,你會看到:

Model metadata for `{slug}` not found. Defaulting to fallback metadata; this can degrade performance and cause issues.

接著 Codex 會使用預設值執行:

  • 272k 上下文,大約在 244,800 tokens 時自動壓縮。
  • 沒有 apply_patch 工具,所以檔案編輯會改用 shell 指令,效率明顯較差。

Codex 是依模型名稱比對這些中繼資料的,所以在 Relay 上請優先使用和 OpenAI 官方名稱完全相同的名稱,例如 gpt-6-sol。Grok、DeepSeek 等第三方模型不在內建清單中,會觸發這個警告。這些模型請在 config.toml 中設定 model_context_window 和 model_reasoning_effort,或用 model_catalog_json 提供完整的模型資訊。

重試與錯誤

Relay 和官方服務使用相同的重試邏輯:

  • 失敗的請求最多重試 4 次(request_max_retries)。
  • 中斷的串流最多重新連線 5 次(stream_max_retries)。
  • 串流閒置逾時是 5 分鐘(stream_idle_timeout_ms)。

例外是 429。Codex 預設不會重試 429,遇到限流時會以下列訊息結束:

exceeded retry limit, last status: 429 Too Many Requests

好的 Relay 在上游限流或過載時,會先改走另一條路線重試,再決定是否回傳錯誤。Wokey 就是這麼做的,所以在忙碌時段,用戶端看到的 429 和 529 通常會比較少。

其他錯誤會顯示為 unexpected status …,後面接著閘道的 JSON。排錯方式請見 529 錯誤指南和逾時指南。

價格比較

官方訂閱是用固定月費換取額度。Plus 每月 $20,Pro 每月 $100 起,另外還有 Go、Business 等方案。額度按 5 小時和每週的時段計算;用完就得等時段重置。最新價格和限制請以 OpenAI 官網為準。

Relay 按 token 計費,沒有時段限制:用多少付多少。大致來說:

  • 每天穩定大量使用,且能接受限制: 官方訂閱通常比較划算。
  • 用量不平均、常撞到 5 小時上限,或在同一個 Codex 中切換 GPT、Grok、DeepSeek 等模型: 按量計費的 Relay 比較合適。

Wokey 的價格列在各模型頁面上,例如 GPT-6 Sol。

資料與信任

使用官方服務時,OpenAI 依你的帳號設定處理資料。使用 API 金鑰時,則套用你 API 組織的資料保留設定。

使用 Relay 時,請求會先經過 Relay 才到上游。所以對任何 Relay 都要問兩個問題:它有沒有偷換模型?有沒有改動內容?

大多數 Relay 只能請你相信它。Wokey 的每個回應都附有密碼學證明,你可以在自己的電腦上離線驗證:

  • 程式碼指紋和公開稽核過的原始碼一致。
  • 回應簽章來自 AWS Nitro 硬體隔離區(enclave),內容沒有被改動。

詳見可驗證 AI API。Wokey 如何取得上游容量,請見這篇文章。

兩者並用

官方帳號和 Relay 可以在同一台電腦上並存,不必來回修改設定:

  1. ~/.codex/config.toml 保持官方設定,並用 ChatGPT 登入。

  2. 把 Wokey provider 放在獨立的 ~/.codex/wokey.config.toml 中:

    model = "gpt-6-sol"
    model_provider = "wokey"
    
    [model_providers.wokey]
    name = "Wokey"
    base_url = "https://api.wokey.ai"
    env_key = "WOKEY_API_KEY"
    wire_api = "responses"
    
  3. 執行 codex 使用官方額度。額度用完,或想換其他模型時,執行 codex --profile wokey。

不要在 Wokey provider 中設定 requires_openai_auth = true。這個選項會讓 Codex 使用你的 ChatGPT 登入並忽略 env_key,請求就會在沒有 Wokey 金鑰的情況下送出。

常見問題

Codex 走 Relay 寫程式的效果和官方一樣嗎?

本機這一端完全相同:檔案編輯、指令、apply_patch、沙箱、MCP 和 AGENTS.md 都在你的電腦上執行。差異主要來自你選的模型,以及它是否原生支援 Responses API。

走 Relay 時哪些 Codex 功能無法使用?

需要 ChatGPT 帳號的雲端功能:Codex cloud、GitHub 中的 @codex 與程式碼審查、Slack 和 Linear 整合、語音、Connectors、外掛分享以及手機遙控。也沒有圖片生成和 Fast 模式,/status 不會顯示方案額度。

Codex 為什麼顯示「Model metadata not found」?

模型名稱不在 Codex 的內建清單裡時,會改用預設的中繼資料:272k 上下文,而且沒有 apply_patch 工具。優先使用和 OpenAI 完全相同的模型名稱;其他模型請在 config.toml 中設定 model_context_window 等欄位,或提供 model_catalog_json。

官方帳號和 Relay 可以同時使用嗎?

可以。config.toml 保持官方設定,把 Relay provider 寫在 ~/.codex/wokey.config.toml,需要時用 codex --profile wokey 啟動。Relay provider 裡不要設定 requires_openai_auth = true。

怎麼確認 Relay 沒有偷換模型?

大多數 Relay 無法證明這一點。Wokey 的每個回應都附有可以離線驗證的密碼學證明:程式碼指紋、回應簽章和 AWS Nitro 認證鏈。詳見「可驗證 AI API」頁面。