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検証、コンテキスト制限、出力品質を確認してください。実際のトークン数を使用してコストを比較してください。ロールバックパスを維持してください。
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
}'