Blog· 觀點

全部文章

OpenAI API 與 OpenAI 相容閘道:什麼時候該換、程式要改哪裡(2026)

2026-08-19 · 閱讀 4 分鐘hung-chien · AI 成長與品牌經理

本頁目錄 · 8
  1. 01簡短回答
  2. 02OpenAI 平台已經提供的控管
  3. 03直接串接的極限
  4. 04程式要改哪裡
  5. 05同一個工作負載在六個模型上的花費
  6. 06遷移清單
  7. 07延伸閱讀
  8. 08常見問題

OpenAI 相容 API 是接受與 OpenAI API 相同請求與回應格式的端點,官方 OpenAI SDK 換掉 base URL 與金鑰後就能呼叫它。本文整理 OpenAI 平台本身已經管得到什麼、閘道從哪一刻開始划算、實際要改的程式碼,以及同一個工作負載在六個模型上的花費。

簡短回答

只有一個團隊、只用 OpenAI 模型,而且 OpenAI 的專案上限已經符合你的預算規則,就直接用 OpenAI API。

出現下列任一情況,就該加一層 OpenAI 相容閘道:

  • 第二家供應商進來了,例如寫程式用 Claude、大量分類用 Gemini Flash,而財務希望只有一張帳單、一套上限。
  • 好幾個團隊共用一筆 AI 預算,每個團隊都需要跨供應商的上限與模型清單。
  • 想用自己的提示詞比較模型,又不想接三套 SDK。

OpenAI 平台已經提供的控管

單一供應商時,過去需要閘道才能做到的控管,OpenAI 大多已經自己做了:

  • 專案可以把測試與正式環境分開,各自有金鑰、速率上限與花費上限(正式環境最佳實務)。
  • 兩種花費控管:花費提醒只發通知,流量照跑;硬性花費上限會讓受影響的請求回傳 429(速率上限說明)。
  • 專案層級的「Model usage」設定,限制專案可以呼叫哪些模型(管理專案)。
  • 使用量等級(usage tier)會在付款累積到一定金額前限制每月花費,從 Tier 1 每月 100 美元到 Tier 5 每月 200,000 美元。

如果流量全部是 OpenAI,先用好這些功能。

直接串接的極限

上面這些上限只管得到 OpenAI 的模型。團隊一加入 Claude,Anthropic 主控台就有另一套工作區、花費上限與金鑰(Anthropic 工作區)。再加上 Gemini,就是第三個主控台。實際上會變成:

  • 有人離職時,要在三個地方發放與撤銷金鑰。
  • 三套互相看不到的預算,「客服機器人每月跨所有供應商最多花 3,000 美元」這條規則沒有地方能執行。
  • 月底收到三張格式不同的帳單。
  • 程式碼分散在 OpenAI、Anthropic、Google 三套 SDK。

閘道在它們前面放一套金鑰、上限與紀錄。

程式要改哪裡

用 ATP Token 時 OpenAI SDK 照用,只改三個值(OpenAI SDK 說明、從 OpenAI 遷移):

from openai import OpenAI

# 原本:client = OpenAI(api_key="sk-...")
client = OpenAI(base_url="https://api.atptoken.ai/v1", api_key="atp-...")

for model in ["gpt-5.4", "claude-sonnet-4-6", "gemini-3-5-flash"]:
    r = client.chat.completions.create(
        model=model,
        messages=[{"role": "user", "content": "請分類這張工單:「退款十天還沒收到」"}],
        max_tokens=200,
    )
    print(model, r.choices[0].message.content, r.usage.total_tokens)

不變的部分:Chat Completions 的請求內容、回應內容、stream=True 的串流(OpenAI SSE),以及工具定義。

會變的部分:

  • 模型 id 以 GET /v1/models 回傳的為準(模型查詢)。OpenAI 模型沿用 gpt-5.4 這類熟悉的名稱;其他模型用 claude-sonnet-4-6、deepseek-v4-flash 這類 id。
  • 不在專案允許清單上的模型,會在送到任何供應商之前回傳 403。
  • 專案點數用完時,請求回傳 402(錯誤)。
  • ATP 的 OpenAI 格式端點是 /v1/chat/completions、/v1/models 與 /v1/files。程式若呼叫其他 OpenAI 端點,搬移前先查 API 參考。

使用 Anthropic 或 Google GenAI SDK 的團隊不必改成 OpenAI 格式:同一把專案金鑰也能在 https://api.atptoken.ai 搭配這兩套 SDK 使用(Anthropic SDK、Google GenAI SDK)。

同一個工作負載在六個模型上的花費

假設一個分類服務每月處理 100 萬筆請求,每筆輸入 1,000 個 token、輸出 300 個 token,也就是每月 10 億個輸入 token、3 億個輸出 token。依各模型頁的定價:

模型 輸入/輸出(每 100 萬 token) 每月輸入 每月輸出 每月合計
gpt-5.5 $5 / $30 $5,000 $9,000 $14,000
claude-sonnet-4-6 $3 / $15 $3,000 $4,500 $7,500
gpt-5.4 $2.5 / $15 $2,500 $4,500 $7,000
gemini-3-5-flash $1.5 / $9 $1,500 $2,700 $4,200
claude-haiku-4-5 $1 / $5 $1,000 $1,500 $2,500
deepseek-v4-flash $0.2 / $0.4 $200 $120 $320

價格只是一半的決定。換模型之前,先拿幾百張真實工單,跑過達到品質標準的兩三個最便宜模型。可以從 DeepSeek 與 Claude、Gemini 與 GPT 的並排比較頁開始。

遷移清單

  1. 列出程式裡每個建立 OpenAI client 的地方,以及各自呼叫的端點。
  2. 每個服務在 ATP 建一個專案,只啟用該服務需要的模型(工作區與專案)。
  3. 撥點數給每個專案,撥款額度就是上限(預算上限)。
  4. 每個專案發一把金鑰,存進密鑰管理工具(管理金鑰)。
  5. 先在測試環境改 base URL、金鑰與模型 id,在請求紀錄裡比對輸出與 token 數(用量與紀錄)。
  6. 正式環境一次搬一個服務,最後撤銷不再使用的 OpenAI 金鑰。

從快速開始上手

延伸閱讀

OpenAI 相容 APIOpenAI APIATP

常見問題

什麼是 OpenAI 相容 API?

指接受與 OpenAI 相同請求與回應格式的 API,通常是 Chat Completions 端點。官方 OpenAI SDK 換掉 base URL 與 API 金鑰後就能直接呼叫。

可以用 OpenAI SDK 呼叫 Claude 或 Gemini 嗎?

可以,透過 OpenAI 相容閘道。在 ATP Token 上把 base_url 設為 https://api.atptoken.ai/v1,使用專案金鑰,model 填 claude-sonnet-4-6 或 gemini-3-5-flash 這類 id。

OpenAI 可以替每個專案設花費上限嗎?

可以。OpenAI 專案可以設花費提醒(只通知,流量照跑)與硬性花費上限(受影響的請求回傳 429),也能限制專案可以使用哪些模型。

OpenAI API 有哪些替代方案?

以模型能力來說,常見替代是 Anthropic 的 Claude、Google 的 Gemini,以及 DeepSeek、Qwen 等開放權重模型。想同時使用多家又不改程式,就透過 OpenAI 相容閘道呼叫。

改用 OpenAI 相容閘道需要重寫程式嗎?

如果用的是 Chat Completions,通常不用。改 base URL、金鑰與模型 id 即可。程式若還用到其他 OpenAI 端點,先對照閘道的 API 參考。
開始使用

一把金鑰,讓每一次模型呼叫都有紀錄

專案層級 API 金鑰、模型允許清單、逐請求紀錄與用量點數——USD 5 起儲值。