SuperRoute / Docs
v1.0SuperRoute 的 OpenAI + Anthropic 兼容协议
Chat Completions & Messages
双协议原生兼容,一行 BaseURL 平替。
SuperRoute 同时提供标准的 OpenAI Chat Completions 协议与 Anthropic Messages 协议支持。无论你习惯哪种工具链,均可无缝切换。
1. OpenAI Chat Completions 协议
示例中的
model-from-catalog为占位符。请从官网模型目录或控制台复制当前上架的模型 ID。
接口终端与请求头
POST https://api.superoute.uk/v1/chat/completions
Authorization: Bearer sk-sr-xxxxxxxxxxxxxxxx
Content-Type: application/json
核心参数速查
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | 模型名称:请从当前模型目录或控制台复制准确的模型 ID。 |
messages | array | 是 | 消息历史,支持 system、user、assistant、tool。 |
stream | boolean | 否 | 开启 Server-Sent Events 流式分块传输(默认 false)。 |
temperature | number | 否 | 采样温度(0 ~ 2),默认 1.0。 |
max_tokens | integer | 否 | 最大生成 token 数量。 |
tools | array | 否 | Function Calling 工具定义。 |
调用示例
curl https://api.superoute.uk/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-sr-xxxxxxxxxxxxxxxx" \
-d '{
"model": "model-from-catalog",
"messages": [
{"role": "system", "content": "你是一位资深工程师。"},
{"role": "user", "content": "请写一段快速排序算法。"}
]
}'
from openai import OpenAI
client = OpenAI(
base_url="https://api.superoute.uk/v1",
api_key="sk-sr-xxxxxxxxxxxxxxxx"
)
response = client.chat.completions.create(
model="model-from-catalog",
messages=[{"role": "user", "content": "你好,请自我介绍"}]
)
print(response.choices[0].message.content)
2. Anthropic Messages 协议
针对模型目录中当前上架的 Claude 系列模型,平台完整支持官方原生 Messages 格式,包括原生系统提示词、Prompt 缓存与 Extended Thinking。
接口终端与请求头
POST https://api.superoute.uk/v1/messages
x-api-key: sk-sr-xxxxxxxxxxxxxxxx
anthropic-version: 2023-06-01
Content-Type: application/json
调用示例
curl https://api.superoute.uk/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: sk-sr-xxxxxxxxxxxxxxxx" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "model-from-catalog",
"max_tokens": 1024,
"system": "你是一位系统分析师。",
"messages": [
{"role": "user", "content": "请介绍 API 请求的排障步骤。"}
]
}'
import anthropic
client = anthropic.Anthropic(
base_url="https://api.superoute.uk",
api_key="sk-sr-xxxxxxxxxxxxxxxx"
)
message = client.messages.create(
model="model-from-catalog",
max_tokens=1024,
messages=[{"role": "user", "content": "你好!"}]
)
print(message.content[0].text)