跳到正文

從其他平台遷移

只改三項設定,從 OpenAI、OpenRouter 或 Anthropic API 遷到 HopBase。

遷移只改三項:Base URL、密鑰,必要時再改模型 ID。請求內容、串流處理和錯誤處理程式碼保持不變。

要改什麼

OpenAIOpenRouterAnthropicHopBase
Base URLhttps://api.openai.com/v1https://openrouter.ai/api/v1https://api.anthropic.comOpenAI 協定:https://api.hop-base.com/v1
Anthropic 協定:https://api.hop-base.com(不帶 /v1)
密鑰OpenAI 密鑰一把 OpenRouter 密鑰呼叫所有模型Anthropic 密鑰在「API 密鑰」建立的 sk-…,可包含 1~10 個分組
模型 IDgpt-5.5openai/gpt-5.5、anthropic/claude-sonnet-5claude-sonnet-5不帶廠商前綴,按 GET /v1/models 回傳的原樣填寫:gpt-5.5、claude-sonnet-5

各模型系列走哪種協定,見 Base URL 與協定。

密鑰能呼叫你加進去的分組的模型:

把需要的分組加進密鑰。OpenRouter 一把密鑰呼叫所有模型;HopBase 的密鑰呼叫它所含分組的模型——1 到 10 個分組,可以跨平台。GET /v1/models 回傳這些分組模型的聯集,呼叫不在任何分組裡的模型回傳 404 model_not_found。同時使用 Claude 和 GPT 的應用可以用一把密鑰,同時包含 Claude 分組與 Codex Plus 或 Codex Pro 分組;每個請求按服務該模型的分組計費。模型有重疊的分組(例如 Codex Plus 與 Codex Pro)不能放進同一把密鑰(「GPT 官方直連(Azure)」與 Codex 分組、「GPT Image 全系」混用除外,見分組怎麼選),訂閱類分組只能單獨成一把密鑰。

OpenAI SDK

設定 Base URL、換掉密鑰即可。gpt-5.5 這類 OpenAI 模型 ID 只要出現在這把密鑰的 GET /v1/models 裡,就不用改。

 import os
 from openai import OpenAI

 client = OpenAI(
-    api_key=os.environ["OPENAI_API_KEY"],
+    base_url="https://api.hop-base.com/v1",
+    api_key=os.environ["HOPBASE_OPENAI_API_KEY"],
 )

 resp = client.chat.completions.create(
     model="gpt-5.5",
     messages=[{"role": "user", "content": "Hello"}],
 )

不想改程式碼的話,兩個 SDK 都會讀取環境變數 OPENAI_BASE_URL 和 OPENAI_API_KEY:分別設為 https://api.hop-base.com/v1 和你的 HopBase 密鑰。更多範例見 OpenAI SDK。

Anthropic SDK

Claude 繼續走 Anthropic Messages API。Base URL 不帶 /v1,密鑰用「Claude Max 企業版」分組的。「Claude Max(ccmax)」分組的密鑰只能在 Claude Code 用戶端裡用,SDK 呼叫會失敗。

 import os
 from anthropic import Anthropic

 client = Anthropic(
-    api_key=os.environ["ANTHROPIC_API_KEY"],
+    base_url="https://api.hop-base.com",
+    api_key=os.environ["HOPBASE_CLAUDE_API_KEY"],
 )

 msg = client.messages.create(
     model="claude-sonnet-5",
     max_tokens=1024,
     messages=[{"role": "user", "content": "Hello"}],
 )

同樣可以只改環境變數:ANTHROPIC_BASE_URL=https://api.hop-base.com。詳見 Anthropic SDK。

OpenRouter

改 Base URL 和密鑰,去掉模型名稱裡的廠商前綴,並刪掉 OpenRouter 的來源標識請求標頭——HopBase 用不到它們。

 import os
 from openai import OpenAI

 client = OpenAI(
-    base_url="https://openrouter.ai/api/v1",
-    api_key=os.environ["OPENROUTER_API_KEY"],
-    default_headers={"HTTP-Referer": "https://your-app.example", "X-Title": "Your App"},
+    base_url="https://api.hop-base.com/v1",
+    api_key=os.environ["HOPBASE_OPENAI_API_KEY"],
 )

 resp = client.chat.completions.create(
-    model="openai/gpt-5.5",
+    model="gpt-5.5",
     messages=[{"role": "user", "content": "Hello"}],
 )

如果你之前是透過 OpenRouter 的 OpenAI 相容端點呼叫 Claude,HopBase 上 Claude 沒有這條路徑:請按上一節改用 Anthropic SDK 和 Claude 分組密鑰。其他系列(Gemini、GLM、通義千問、DeepSeek、Kimi、Grok)繼續用 OpenAI SDK,密鑰包含各系列的分組即可。

不支援的功能

你可能在用的在 HopBase 上
透過 /v1/chat/completions 或 /v1/responses 呼叫 Claude回傳 404。請改用 Anthropic Messages——Anthropic SDK
透過 Gemini 原生 SDK 路徑(:generateContent)呼叫 Gemini「Gemini 官方直連(企業級)」支援:把 SDK 的 Base URL 改成 https://api.hop-base.com 即可;「Gemini 特價版(AI Studio / Vertex)」不支援——Gemini 對話
透過 /v1/responses 或 /v1/messages 呼叫 Kimi K3只支援 Chat Completions——Kimi K3
Embeddings、語音轉寫、Files、Batch、Assistants、微調、內容審核介面不提供,這些路徑回傳 404
一把密鑰呼叫所有模型一把密鑰最多可包含 10 個分組、可跨平台,只要各分組的模型不重疊(「GPT 官方直連(Azure)」與 Codex 分組、「GPT Image 全系」混用除外,見上文)
OpenRouter 的模型候補清單(models)、provider 路由、:online / :free 這類模型後綴不支援,刪掉後只傳一個模型 ID

完整端點清單見 Base URL 與協定。

遷移後檢查

列出密鑰可用的模型

用新密鑰呼叫 GET https://api.hop-base.com/v1/models,只使用回應裡出現的 ID。

發一個小請求

讓模型「只回覆 ok」,確認回傳 200。404 通常是模型不在這把密鑰的任何分組裡,或 Base URL 用錯了協定——見錯誤碼與重試。

查這把密鑰還能花多少

GET https://api.hop-base.com/v1/usage 回傳這把密鑰可用的餘額,欄位說明見帳戶與目錄 API。

下一步