首页 / 苏姆卡皮 · 接入文档
苏姆卡皮 · 接入文档
苏姆卡皮 · OpenAI 兼容 AI API 网关 · Base URL https://sub.sumcapi.top/v1
苏姆卡皮 · 接入文档
Base URL:https://sub.sumcapi.top/v1控制台:https://sub.sumcapi.top密钥在「API 密钥」页创建;模型可用范围由密钥绑定的分组决定,实际模型清单见「模型广场」。
1. 兼容端点一览
| 用途 | 方法 | 路径 |
|---|---|---|
| Chat Completions(OpenAI 兼容) | POST | /v1/chat/completions |
| Responses(OpenAI 新协议) | POST | /v1/responses |
| 模型列表 | GET | /v1/models |
| Messages(Anthropic 原生) | POST | /v1/messages |
| 图像生成 | POST | /v1/images/generations |
| 图像编辑 | POST | /v1/images/edits |
| 嵌入 | POST | /v1/embeddings |
| 健康检查 | GET | /health |
鉴权统一使用请求头:Authorization: Bearer <API_KEY>(Anthropic 路径同时接受 x-api-key)。
2. 快速上手
Python(OpenAI SDK)
from openai import OpenAI
client = OpenAI(
base_url="https://sub.sumcapi.top/v1",
api_key="sk-xxxxxxxx",
)
r = client.chat.completions.create(
model="gpt-5-mini",
messages=[{"role": "user", "content": "用一句话介绍苏姆卡皮"}],
)
print(r.choices[0].message.content)
Node.js
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://sub.sumcapi.top/v1",
apiKey: process.env.SUMCAPI_KEY,
});
const r = await client.chat.completions.create({
model: "gpt-5-mini",
messages: [{ role: "user", content: "hello" }],
});
console.log(r.choices[0].message.content);
cURL(流式)
curl -N https://sub.sumcapi.top/v1/chat/completions \
-H "Authorization: Bearer $SUMCAPI_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-5-mini","stream":true,
"messages":[{"role":"user","content":"hi"}]}'
Anthropic / Claude 原生
curl https://sub.sumcapi.top/v1/messages \
-H "x-api-key: $SUMCAPI_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"claude-sonnet-4-5","max_tokens":512,
"messages":[{"role":"user","content":"你好"}]}'
3. 编程工具接入
Claude Code
export ANTHROPIC_BASE_URL="https://sub.sumcapi.top"
export ANTHROPIC_API_KEY="sk-xxxxxxxx"
claude
Codex CLI(编辑 ~/.codex/config.toml)
model = "gpt-5-codex"
[model_providers.sumcapi]
name = "苏姆卡皮"
base_url = "https://sub.sumcapi.top/v1"
env_key = "SUMCAPI_KEY"
wire_api = "responses"
export SUMCAPI_KEY="sk-xxxxxxxx"
codex --model-provider sumcapi
4. 路由、限流与错误
- 自动故障切换:同一模型可挂多个上游;命中限流/5xx/过载时自动切换候选,必要时进入冷却窗口。
- 配额与限速:密钥受分组配额、日/周/月限额与 RPM 限制;超限返回
429,请实现指数退避重试。 - 兜底模型:核心链路建议配置降级模型,避免单一上游波动影响业务。
- 常见状态码
| 码 | 含义 | 建议处理 | |---|---|---| | 401 | 密钥无效或已停用 | 检查密钥与状态 | | 403 | 模型不在该密钥分组内 | 换模型或调整分组 | | 404 | 路径或模型名不存在 | 用 /v1/models 校对 | | 429 | 触发限速或配额 | 退避重试(1s→2s→5s) | | 502/503/504 | 上游暂时不可用 | 重试或切换兜底模型 |
5. 计费口径
按 token 计费:费用 = 上游单价 × 模型倍率 × 分组折扣;缓存读写、图像(按张/任务)、视频(按秒/任务)各有独立口径,失败请求不计费。详见「模型定价」页与「用量统计」明细。
6. 最佳实践
- 先跑通一个最小请求,再迁移业务链路;把
model做成配置项方便切换。 - 按项目/环境拆分密钥,便于配额与成本归因。
- 生产环境务必设置超时与重试预算,流式请求保留
stream心跳处理。 - 长上下文重复前缀的场景优先使用缓存命中,成本下降明显。
- 定期在「用量统计」核对失败请求,定位模型名或分组配置问题。
苏姆卡皮