留着 OpenAI SDK,调用所有模型
如果代码已经在用官方 OpenAI SDK,整个迁移就是构造函数的两个参数:base URL 和 key。其余一切——chat completions、流式、工具调用——照常工作,同一个 client 对象现在通过 model 字符串就能调 GPT、Claude、Gemini、DeepSeek 系列,每次请求都有成本 trace。
配置
Python 和 JS/TS 都在 client 构造函数里传 base URL:
openai-sdk-example.py
from openai import OpenAI
client = OpenAI(
base_url="https://api.router.one/v1",
api_key="sk-your-router-one-key",
)
resp = client.chat.completions.create(
model="<model-id-from-/models>",
messages=[{"role": "user", "content": "Hello!"}],
)
# JS/TS: new OpenAI({ baseURL, apiKey }) — same two arguments选择模型
从 /models 页复制精确的模型 ID——ID 区分大小写,页面同时列出每个模型的上下文窗口、能力和当前单价。建议为每个工具单独建一个 API Key,并设置 maxSpend 消费上限,这样单个工具跑飞不会影响其他工作负载。
验证与观测
发出第一个请求后,到 Dashboard → Logs 查看它的完整 trace:模型、tokens、花费、延迟和状态码。OpenAI SDK 的每一次调用从此都有账本和轨迹,不再是黑盒。
常见问题
- 请求代码需要改吗?
- 不需要——请求、流式、工具调用都走标准 Chat Completions 接口。只有 client 构造函数变了:base URL 和 API key。换模型只改 model 字符串。
- OpenAI SDK 能通过网关用哪些模型?
- 目录里任何具备对话能力的模型——GPT、Claude、Gemini、DeepSeek、Mistral 等系列。/models 页是模型 ID 与单价的事实来源。
- 中国大陆能直连吗?
- 能。网关在大陆可直连、无需 VPN,配置与全球环境完全一致。
- 报 401/403/429 怎么排查?
- 先到 Dashboard → Logs 看请求有没有到达网关以及状态码,再对照错误码速查页逐项检查环境变量、Key 状态和限额。