OpenLux 支持哪些接口:OpenAI、Responses、Claude、Gemini 的 Base URL 与鉴权写法
OpenLux 用同一个域名 api.openlux.ai 提供四种调用格式:OpenAI 兼容(Chat Completions)、OpenAI Responses、Anthropic Messages(Claude 格式)和 Gemini 原生格式。四种格式用同一个控制台创建的 Key,区别在于 Base URL 要不要带 /v1,以及 Key 放在哪个请求头。这篇把四种写法放在一起,方便对照。
一张表看四种接口
| 调用格式 | 客户端里填的 Base URL | 实际请求路径 | Key 放在哪里 |
|---|---|---|---|
| OpenAI 兼容(Chat Completions) | https://api.openlux.ai/v1 |
/v1/chat/completions |
Authorization: Bearer <Key> |
| OpenAI Responses | https://api.openlux.ai/v1 |
/v1/responses |
Authorization: Bearer <Key> |
| Anthropic Messages | https://api.openlux.ai(不带 /v1) |
/v1/messages |
x-api-key: <Key> 或 Authorization: Bearer <Key> |
| Gemini 原生 | https://api.openlux.ai |
/v1beta/models/<模型>:generateContent |
x-goog-api-key: <Key> 或查询参数 ?key=<Key> |
Key 在控制台「令牌」页创建:https://www.openlux.ai/console/token。
为什么有的带 /v1,有的不带
这取决于客户端或 SDK 会不会自己拼 /v1:
- OpenAI 官方 SDK 和大多数「OpenAI 兼容」客户端:把 Base URL 当作前缀,直接在后面加
/chat/completions、/responses。所以 Base URL 要写到/v1。 - Anthropic SDK 和 Claude Code:自己拼
/v1/messages。如果 Base URL 写成https://api.openlux.ai/v1,最终会请求/v1/v1/messages,返回 404。 - Gemini 原生调用:路径里自带
/v1beta,Base URL 只写域名。
不确定时,以客户端官方文档对 Base URL 的说明为准。最可靠的判断方法是看它示例里的完整请求地址。
一个模型支持哪几种接口
不是每个模型都支持全部四种格式。价格页每个模型都标了支持的接口类型,常见情况:
| 模型系列(举例) | 价格页标注的接口 |
|---|---|
Claude(如 claude-sonnet-5-5) |
Anthropic、OpenAI 兼容 |
GPT(如 gpt-5.6-sol) |
OpenAI 兼容、Responses |
Gemini(如 gemini-3.6-flash) |
Gemini 原生、OpenAI 兼容 |
DeepSeek(如 deepseek-v4-flash) |
Anthropic、OpenAI 兼容 |
Qwen(如 qwen3.8-max) |
OpenAI 兼容 |
表中只是举例,模型和接口会调整,请以价格页当前标注为准。用了模型不支持的接口,通常会返回模型不可用或路径不支持之类的错误。这时换成价格页标注的接口就行,不是 Key 的问题。
先用 /v1/models 验证地址和 Key
接入任何客户端之前,先确认地址和 Key 都正确:
curl -sS https://api.openlux.ai/v1/models \
-H "Authorization: Bearer $OPENLUX_API_KEY"
能返回模型列表,说明地址和 Key 都没问题;返回 401、报错 Invalid token 说明 Key 错了或没带上。之后客户端再报错,就可以排除这两项,重点查 Base URL 的写法和模型名。
最小调用示例
OpenAI 兼容格式:
curl -sS https://api.openlux.ai/v1/chat/completions \
-H "Authorization: Bearer $OPENLUX_API_KEY" \
-H "content-type: application/json" \
-d '{"model": "gpt-5.6-sol", "messages": [{"role": "user", "content": "你好"}]}'
Anthropic Messages 格式:
curl -sS https://api.openlux.ai/v1/messages \
-H "x-api-key: $OPENLUX_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model": "claude-sonnet-5-5", "max_tokens": 64, "messages": [{"role": "user", "content": "你好"}]}'
Gemini 原生格式:
curl -sS "https://api.openlux.ai/v1beta/models/gemini-3.6-flash:generateContent" \
-H "x-goog-api-key: $OPENLUX_API_KEY" \
-H "content-type: application/json" \
-d '{"contents": [{"parts": [{"text": "你好"}]}]}'
示例里的模型名请换成价格页在售、并且支持对应接口的模型。
常见错误对照
| 现象 | 最可能的原因 | 怎么改 |
|---|---|---|
401 |
Key 错误、没带上,或放错了请求头 | 按上表放到对应的请求头;先用 /v1/models 验证 |
404,报错 Invalid URL (POST /v1/v1/messages) 这类地址里出现 /v1/v1/ |
客户端自己会拼 /v1,Base URL 又写了 /v1 |
去掉 Base URL 末尾的 /v1 |
404,地址里缺 /v1 |
客户端不拼 /v1,Base URL 只写了域名 |
Base URL 补上 /v1 |
| 模型不存在或不可用 | 模型名拼错、已下架,或这个模型不支持当前接口 | 按价格页核对模型 ID 和支持的接口 |
| Claude Code、Anthropic SDK 连不上 | 用了 OpenAI 兼容地址 | 改成 https://api.openlux.ai,Key 用 x-api-key 或 Bearer |
相关链接
还没有账号可以先注册 OpenLux,创建 Key 后先跑一次 /v1/models。