主题
OpenAI SDK 接入
Shuro 完整兼容 OpenAI 协议。只要把 base_url 指到 https://shuro.vip/v1,官方 openai SDK(Python / Node.js)及一切 OpenAI 兼容框架(LangChain、LlamaIndex 等)都能直接用。
- Base URL:
https://shuro.vip/v1 - 端点:
POST /v1/chat/completions - API Key:控制台 → 「令牌」创建,见 获取 API Key
一个协议,两个系列
OpenAI 协议不止能调 GPT——Claude 全系同样支持 OpenAI 协议,把 model 换成 claude-sonnet-4-6 等即可。GPT 系列(gpt-5.5 / gpt-5.4 / gpt-5.4-mini)则仅支持 OpenAI 协议。
Python
bash
pip install openaipython
from openai import OpenAI
client = OpenAI(
base_url="https://shuro.vip/v1",
api_key="<您的 API Key>",
)
resp = client.chat.completions.create(
model="gpt-5.4",
messages=[{"role": "user", "content": "用一句话解释什么是 API 中转"}],
)
print(resp.choices[0].message.content)同一份代码调 Claude
只改 model,其余不动:
python
resp = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "Reply with one word: pong"}],
)
print(resp.choices[0].message.content)适合已有 OpenAI 生态代码、又想混用 Claude 的场景。若要用 Claude 的原生能力(thinking、cache_control 等),建议改走 Anthropic SDK。
Node.js
bash
npm install openaijavascript
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://shuro.vip/v1",
apiKey: "<您的 API Key>",
});
const resp = await client.chat.completions.create({
model: "gpt-5.4",
messages: [{ role: "user", content: "用一句话解释什么是 API 中转" }],
});
console.log(resp.choices[0].message.content);流式输出
python
stream = client.chat.completions.create(
model="gpt-5.4",
messages=[{"role": "user", "content": "写一首关于代码的短诗"}],
stream=True,
)
for chunk in stream:
delta = chunk.choices[0].delta.content
if delta:
print(delta, end="", flush=True)javascript
const stream = await client.chat.completions.create({
model: "gpt-5.4",
messages: [{ role: "user", content: "写一首关于代码的短诗" }],
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}环境变量方式
官方 SDK 会自动读取 OPENAI_BASE_URL / OPENAI_API_KEY,代码里可以不写任何配置:
bash
export OPENAI_BASE_URL="https://shuro.vip/v1"
export OPENAI_API_KEY="<您的 API Key>"python
from openai import OpenAI
client = OpenAI() # 自动读环境变量多数 OpenAI 兼容框架也认这两个变量,接入方式相同。
curl 快速验证
bash
curl -sS https://shuro.vip/v1/chat/completions \
-H "Authorization: Bearer <您的 API Key>" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4-mini",
"messages": [{"role": "user", "content": "Reply with one word: pong"}]
}'返回 JSON 里看到 pong 即通。
选哪个模型
| 场景 | 可选 | 依据(文档倍率 / 上下文) |
|---|---|---|
| 低成本 / 短任务、后台任务 | gpt-5.4-mini / claude-haiku-4-5-20251001 | 目录内最低模型倍率(0.375 / 0.5) |
| 中等倍率 / 日常使用 | gpt-5.4 / claude-sonnet-4-6 | 模型倍率 1.25 / 1.5,上下文 400K / 1M |
| 高能力档 / 长上下文 | gpt-5.5 / claude-opus-4-8 | 模型倍率 2.5,上下文 1.1M / 1M |
完整模型目录(上下文、倍率、能力标注)见 支持的模型;计费与分组/补全倍率见 定价与计费。
常见错误速查
| 现象 | 跳转 |
|---|---|
401 Invalid token | 401 排查 |
503 No available accounts | 503 排查 |
| 其他错误码 | 错误代码对照表 |
下一步
- 工具调用:Function Calling
- 结构化输出:Structured Output
- 端点总览:API 端点
- Claude 原生协议接入:Anthropic SDK
