始める前に

この互換性レイヤーは、最小限の開発労力でモデル機能をテストおよび比較することを目的としており、ほとんどのユースケースにおいて長期的または本番環境での使用には適していません。最高の体験とAnthropic APIの完全な機能セット(PDF処理引用拡張思考プロンプトキャッシング)にアクセスするには、ネイティブのAnthropic APIの使用をお勧めします。

OpenAI SDKを使い始める

OpenAI SDK互換機能を使用するには、以下が必要です:

  1. 公式OpenAI SDKを使用する
  2. 以下を変更する
    • ベースURLをAnthropicのAPIを指すように更新する
    • APIキーをAnthropic APIキーに置き換える
    • モデル名をClaudeモデルを使用するように更新する
  3. サポートされている機能について以下のドキュメントを確認する

クイックスタート例

OpenAI互換性の重要な制限事項

API動作

OpenAIを使用する場合との主な違いは以下の通りです:

  • 関数呼び出しのstrictパラメータは無視され、ツール使用のJSONは提供されたスキーマに従うことが保証されません
  • 音声入力はサポートされていません。入力から単純に無視され、削除されます
  • プロンプトキャッシングはサポートされていませんが、Anthropic SDKではサポートされています
  • システム/開発者メッセージは会話の先頭に移動され連結されます。Anthropicは単一の初期システムメッセージのみをサポートしているためです

サポートされていないフィールドのほとんどは、エラーを生成せずに静かに無視されます。これらはすべて以下に記載されています。

出力品質に関する考慮事項

プロンプトを多く調整している場合、それはOpenAI専用に最適化されている可能性が高いです。Anthropic Consoleのプロンプト改善ツールを良い出発点として検討してください。

システム/開発者メッセージの移動

OpenAI SDKへの入力のほとんどはAnthropicのAPIパラメータに直接マッピングされますが、システム/開発者プロンプトの扱いは大きく異なります。これら2つのプロンプトはOpenAIではチャット会話全体に配置できます。Anthropicは初期システムメッセージのみをサポートするため、すべてのシステム/開発者メッセージを改行(\n)で区切って連結し、その完全な文字列を単一のシステムメッセージとしてメッセージの先頭に配置します。

拡張思考のサポート

thinkingパラメータを追加することで拡張思考機能を有効にできます。これにより複雑なタスクに対するClaudeの推論は改善されますが、OpenAI SDKはClaudeの詳細な思考プロセスを返しません。ステップバイステップの推論出力を含む完全な拡張思考機能を利用するには、ネイティブのAnthropic APIを使用してください。

レート制限

レート制限はAnthropicの/v1/messagesエンドポイントの標準制限に従います。

詳細なOpenAI互換API対応状況

リクエストフィールド

シンプルなフィールド

フィールドサポート状況
modelClaudeモデル名を使用
max_tokens完全にサポート
max_completion_tokens完全にサポート
stream完全にサポート
stream_options完全にサポート
top_p完全にサポート
parallel_tool_calls完全にサポート
stop空白以外の停止シーケンスがすべて機能
temperature0から1(含む)の間。1より大きい値は1に制限されます
n正確に1である必要があります
logprobs無視
metadata無視
response_format無視
prediction無視
presence_penalty無視
frequency_penalty無視
seed無視
service_tier無視
audio無視
logit_bias無視
store無視
user無視
modalities無視
top_logprobs無視
Reasoning_effort無視

tools / functions フィールド

messages配列フィールド

レスポンスフィールド

フィールドサポート状況
id完全にサポート
choices[]常に長さ1
choices[].finish_reason完全にサポート
choices[].index完全にサポート
choices[].message.role完全にサポート
choices[].message.content完全にサポート
choices[].message.tool_calls完全にサポート
object完全にサポート
created完全にサポート
model完全にサポート
finish_reason完全にサポート
content完全にサポート
usage.completion_tokens完全にサポート
usage.prompt_tokens完全にサポート
usage.total_tokens完全にサポート
usage.completion_tokens_details常に空
usage.prompt_tokens_details常に空
choices[].message.refusal常に空
choices[].message.audio常に空
logprobs常に空
service_tier常に空
system_fingerprint常に空

エラーメッセージの互換性

互換性レイヤーはOpenAI APIと一貫したエラーフォーマットを維持します。ただし、詳細なエラーメッセージは同等ではありません。エラーメッセージはログ記録とデバッグにのみ使用することをお勧めします。

ヘッダーの互換性

OpenAI SDKは自動的にヘッダーを管理しますが、直接ヘッダーを扱う必要がある開発者向けに、Anthropic APIがサポートするヘッダーの完全なリストを以下に示します。

ヘッダーサポート状況
x-ratelimit-limit-requests完全にサポート
x-ratelimit-limit-tokens完全にサポート
x-ratelimit-remaining-requests完全にサポート
x-ratelimit-remaining-tokens完全にサポート
x-ratelimit-reset-requests完全にサポート
x-ratelimit-reset-tokens完全にサポート
retry-after完全にサポート
x-request-id完全にサポート
openai-version常に2020-10-01
authorization完全にサポート
openai-processing-ms常に空