从 OpenAI 迁移#
保留您的 OpenAI 客户端,将 base_url 更改为 https://weightsapi.com/v1,将 api_key 更改为您的 WeightsAPI 密钥,并将 model 更改为已连接的开放模型 ID。如果您之前的模型名称是 OpenAI 特有的,则还需要更改模型。
兼容范围包括 Chat Completions、Completions、Embeddings 和 Models。Responses、Assistants 和提供方特有的工具不能直接替换兼容。
从 Anthropic 迁移#
安装 OpenAI 客户端。将 anthropic.Anthropic 替换为 OpenAI,将 messages.create 替换为 chat.completions.create,将 response.content[0].text 替换为 response.choices[0].message.content。将顶层 system 提示词移动到第一条 role: system 的 messages 条目中。保留 max_tokens,并将工具模式从 input_schema 转换为 function.parameters。
Anthropic 迁移是 SDK 和消息格式的更改,而不仅仅是更换 URL。
在切换流量之前进行验证#
运行一个小型代表性数据集;检查工具调用、JSON 验证、上下文限制和输出质量。使用实际的 token 数量比较成本。保留回滚路径。
OpenAI:确切的 Python 更改#
-client = OpenAI(api_key=os.environ["OPENAI_API_KEY"])
+client = OpenAI(base_url="https://weightsapi.com/v1", api_key=os.environ["WEIGHTSAPI_API_KEY"])
-response = client.chat.completions.create(model="gpt-5.4", messages=messages)
+response = client.chat.completions.create(model="Qwen/Qwen3-32B", messages=messages)
-from anthropic import Anthropic
-client = Anthropic(api_key=os.environ["ANTHROPIC_API_KEY"])
-response = client.messages.create(model="claude-sonnet-5", system="Be concise.", max_tokens=256, messages=messages)
-print(response.content[0].text)
+from openai import OpenAI
+client = OpenAI(base_url="https://weightsapi.com/v1", api_key=os.environ["WEIGHTSAPI_API_KEY"])
+response = client.chat.completions.create(model="Qwen/Qwen3-32B", max_tokens=256, messages=[{"role":"system","content":"Be concise."}, *messages])
+print(response.choices[0].message.content)
请求示例
curl https://weightsapi.com/v1/chat/completions \
-H "Authorization: Bearer $WEIGHTSAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen/Qwen3-32B",
"messages": [
{
"role": "user",
"content": "Hello!"
}
],
"stream": true
}'