深色模式
跨协议调用
NexusKey 的核心能力之一是协议无关性:你可以用任意支持的协议调用任意供给分组内的模型。例如用 OpenAI SDK 调用 Claude,或用 Anthropic SDK 调用 OpenAI 系模型。
路由规则
请求进入网关后按以下顺序判定:
- 端点协议:
/v1/chat/completions、/v1/responses为 OpenAI 协议;/v1/messages为 Anthropic 协议; - 目标平台:按模型名前缀匹配 Key 绑定分组内的供给账号平台(
claude-*→ Anthropic,gpt-*等 → OpenAI); - 转换桥接:端点协议与目标平台不一致时自动转换:
- OpenAI 端点 → Claude 模型:chat/responses 请求转为 Anthropic 原生上游调用;
- Anthropic 端点 → OpenAI 系模型:
/v1/messages经 chat fallback 转换;
- 无匹配:分组内无对应平台账号或模型不存在时返回 404
model_not_found。
示例:OpenAI SDK 调 Claude
python
from openai import OpenAI
client = OpenAI(base_url="https://api.nexuskey.cn/v1", api_key="<你的 NEXUSKEY_API_KEY>")
completion = client.chat.completions.create(
model="claude-sonnet-4-5",
messages=[{"role": "user", "content": "用一句话解释协议无关性"}],
)
print(completion.choices[0].message.content)示例:Anthropic SDK 调 OpenAI 系模型
python
from anthropic import Anthropic
client = Anthropic(base_url="https://api.nexuskey.cn", api_key="<你的 NEXUSKEY_API_KEY>")
message = client.messages.create(
model="gpt-5",
max_tokens=1024,
messages=[{"role": "user", "content": "用一句话解释协议无关性"}],
)
print(message.content[0].text)转换边界与注意事项
| 事项 | 说明 |
|---|---|
| 工具调用 | 双向转换支持 function tools;个别上游私有参数(如 OpenAI reasoning_effort)在跨协议桥接时可能被忽略 |
| 流式 | 两协议均支持 SSE 透传,事件格式跟随端点协议(见 流式(SSE)) |
| usage 口径 | 结算按上游原生 usage 归一后计费,与端点协议无关;响应中 usage 字段跟随端点协议格式 |
| 视觉/多模态 | 图片输入在两协议间双向转换;PDF 输入仅 Anthropic 原生端点保证支持 |
| 计数端点 | /v1/messages/count_tokens 对 OpenAI 系模型走桥接估算,结果可能与原生 Anthropic 计数略有差异 |
生产建议
若无历史包袱,优先使用模型的原生协议端点(Claude → Anthropic Messages,GPT → OpenAI Responses),可获得最完整的参数面与最低转换损耗。