跳到正文
上新Nano Banana 2.1 已上线:Google 新一代生图模型,单张低至 $0.0336,原生 4K,约上一代半价查看模型
HopBase
← 返回博客

一个 API Key 调用 Claude、GPT、Gemini、DeepSeek | HopBase

能用一个 API Key 同时调用 Claude、GPT、Gemini、DeepSeek 的服务主要有两类:托管的多模型网关(如 OpenRouter、HopBase),以及自己部署的开源网关(如 LiteLLM、One API,但模型账号仍要你逐家去开)。以 HopBase 为例,一把 Key 可包含 1–10 个分组,覆盖 Claude、GPT、Gemini、DeepSeek、千问、GLM、Kimi、豆包、混元和 Grok;GPT、Gemini 和国产模型走 OpenAI 兼容地址 https://api.hop-base.com/v1,Claude 走 Anthropic Messages 地址 https://api.hop-base.com(不带 /v1)。同一协议下换模型只改 model 字段。下面给出可直接运行的 curl 与 Python 示例,以及几种做法的中立对比表。

一把 Key 怎么覆盖多家模型:两种协议

多模型网关并不会把所有模型都塞进同一种请求格式。实际做法是:绝大多数模型用 OpenAI 兼容格式,Claude 保留 Anthropic 原生 Messages 格式。两种协议用同一把 Key,只是 Base URL 和接口路径不同。

协议Base URL接口适用模型鉴权
OpenAI 兼容https://api.hop-base.com/v1POST /v1/chat/completions(部分模型另有 /v1/responses)GPT、Gemini、DeepSeek、千问、GLM、Kimi、豆包、混元、GrokAuthorization: Bearer
Anthropic Messageshttps://api.hop-base.com(不带 /v1)POST /v1/messagesClaude(只走这条);Gemini、DeepSeek、豆包也可用x-api-key

两个容易踩的点:Claude 只能走 /v1/messages,发到 /v1/chat/completions 会返回 404;kimi-k3 只走 Chat Completions,在 /v1/responses 和 /v1/messages 上返回 404。

Key 能调哪些模型,由分组决定

  1. 在控制台「API 密钥」里创建 Key,勾选 1–10 个分组。一个分组对应一个模型家族,例如 Claude、DeepSeek、千问、GLM、Kimi K3。
  2. 用 GET /v1/models 查看这把 Key 能调的模型,返回的是所选分组模型的并集。
  3. 只用返回列表里的完整模型 ID。请求不在分组内的模型会返回 404 model_not_found,不会被悄悄换成别的模型。
  4. 每个请求由覆盖该模型的那个分组服务和计费,用量记录里能看到是哪个分组。

注意:模型重叠的分组不能放在同一把 Key 里,订阅类分组必须单独一把 Key。

代码示例:只改 model 字段切换模型

第一步,看这把 Key 能调什么:

curl https://api.hop-base.com/v1/models \
  -H "Authorization: Bearer sk-your-key"

第二步,用 OpenAI 兼容格式调 DeepSeek。换成千问或 GLM 只需改 model:

curl https://api.hop-base.com/v1/chat/completions \
  -H "Authorization: Bearer sk-your-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-v4.1-flash",
    "messages": [{"role": "user", "content": "Reply with only: ok"}]
  }'

第三步,在 Python 里用同一个 OpenAI 客户端轮流调用六个模型家族。这里假设 Key 已包含 GPT(Codex Plus 或 Codex Pro)、Gemini、DeepSeek、千问、GLM 和 Kimi K3 分组:

# pip install openai
from openai import OpenAI

client = OpenAI(base_url="https://api.hop-base.com/v1", api_key="sk-your-key")

for model in ["gpt-5.6-sol", "gemini-3.8-flash", "deepseek-v4.1-flash",
              "qwen3.8-max", "glm-5.3", "kimi-k3"]:
    resp = client.chat.completions.create(
        model=model,
        messages=[{"role": "user", "content": "用一句话介绍你自己"}],
    )
    print(model, "->", resp.choices[0].message.content)

第四步,Claude 用 Anthropic SDK,Base URL 不带 /v1,Key 需包含 Claude 分组。建议显式设置 max_tokens,不填时会按 4096 补齐:

# pip install anthropic
import anthropic

client = anthropic.Anthropic(base_url="https://api.hop-base.com", api_key="sk-your-key")
msg = client.messages.create(
    model="claude-sonnet-5-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "用一句话介绍你自己"}],
)
print(msg.content[0].text)

如果某个模型返回 {"error":{"code":"model_not_found",...}},先重新调一次 /v1/models,再到控制台给 Key 加上对应分组。

几种做法对比

下表只写可核实的事实。OpenRouter 一列依据其公开文档与公开模型接口,核对日期 2026-11-05;公开页没写的项写「公开页未列出」,不代表没有。

维度分别对接各厂商自建开源网关(LiteLLM、One API)OpenRouterHopBase
国产模型覆盖每家单独注册、认证、充值取决于你开通了哪些厂商账号公开模型列表含 DeepSeek、Qwen、GLM(z-ai)、Kimi(moonshotai)、ByteDance SeedDeepSeek、千问、GLM、Kimi、豆包、混元
Claude 原生 MessagesAnthropic 自有 API 即原生取决于项目与版本配置文档说明提供兼容 Anthropic Messages API 的入口,Claude Code 设 ANTHROPIC_BASE_URL=https://openrouter.ai/api支持,https://api.hop-base.com + /v1/messages
团队额度与部门各厂商控制台各管各的项目通常带虚拟 Key 与额度,部门层级需自行配置Organization 共享额度池,admin / member 角色;成员级额度公开页未列出成员、部门,密钥 / 成员 / 部门三级额度
计费币种与付款各家币种与付款方式不同软件免费,模型费用按各厂商付美元 credits;主流信用卡、Alipay、USDC美元按量;支付宝、微信支付、Visa / Mastercard
逐请求对账各家账单分别核对网关日志与各厂商账单需自行对齐Activity 页可按模型、API key 筛选历史用量CSV 每行含官方成本、折扣、汇率、实扣,可复算「官方成本 × 折扣 ÷ 汇率 = 实扣」

怎么选

  • 只用一两家、已有合同:分别对接各厂商最简单。
  • 有数据驻留要求、团队有运维人手:自建 LiteLLM 或 One API,软件可控,但账号、高可用和对账都要自己做。
  • 海外模型为主、个人或小团队:OpenRouter 的模型覆盖面广,值得先看。
  • Claude Code 与国产模型并用、需要按部门管额度和逐行对账:HopBase 一把 Key 同时给两种协议,价格按各厂商官方牌价 × 分组折扣结算,见 价格页。

国产模型各家的参数差异(思考字段、图片输入、工具调用)见 一个 Key 调用 DeepSeek、千问、GLM、Kimi 和豆包;各平台对比见 2026 年 OpenRouter 替代方案;接入步骤见 快速开始文档。准备好了可以直接 注册并创建 Key。

常见问题

一个 API Key 能同时调 Claude 和 GPT 吗?

能,前提是 Key 同时包含 Claude 分组和 GPT 分组。但两者走不同协议:GPT 用 https://api.hop-base.com/v1 的 Chat Completions 或 Responses,Claude 用 https://api.hop-base.com 的 /v1/messages。Key 是同一把,客户端要配两个 Base URL。

DeepSeek、千问、GLM、Kimi 能用 OpenAI SDK 直接调吗?

能。把 OpenAI SDK 的 base_url 设为 https://api.hop-base.com/v1,model 填 deepseek-v4.1-flash、qwen3.8-max、glm-5.3 或 kimi-k3 等 /v1/models 返回的 ID 即可,不需要加厂商前缀。

为什么换了模型名就报 404 model_not_found?

这个模型不在 Key 的分组里,或模型 ID 写错了。模型 ID 精确匹配,不会自动纠正。调 GET /v1/models 确认可用 ID;缺哪家就在控制台编辑 Key,加上对应分组(每把 Key 最多 10 个)。