Skip to Content
APIリファレンスリクエストの上限

リクエストの上限

推論APIには、組織やプロジェクトで設定する利用制限とは別に、リクエスト自体に対する上限があります。 設定で変更できる上限と、サービス側で定められた上限があります。

リクエストサイズ

ボディの上限はJSONのUTF-8バイト数で10 MiB(10,485,760 bytes)です。 会話履歴とツール定義を含むリクエスト全体に適用され、モデルごとのコンテキスト上限とは別の制限です。

Content-Length が上限を超えている場合は、ボディを読む前に拒否します。 ヘッダーがない場合も、読み取り中に上限を超えた時点で打ち切ります。 どちらも 413 が返ります。

OpenAI互換のパスでは、本文は次の形です。

JSON
{ "error": { "message": "Request body is too large", "type": "invalid_request_error", "code": "payload_too_large" } }

同時受付

ボディの読み取りは、同時に処理できるリクエスト数の枠を取ってから始めます。 枠が空いていない場合は 429retry-after: 1 が返ります。 認証の試行にも同様のレート制限があり、超えると 429 が返ります。

429 には、再実行までの秒数を示す retry-after ヘッダーが付く場合があります。

HTTP
HTTP/1.1 429 Too Many Requests retry-after: <秒数> cache-control: no-store

出力トークン

項目
max_tokens の既定値4096(max_tokensmax_completion_tokens のどちらも未指定のとき)
max_tokensmax_completion_tokensn正の整数のみ。それ以外は 400
n の上限128

利用制限とクレジット

組織、プロジェクト、APIキー、ルールで設定した制限は、リクエストを受け付ける時点で判定します。

状況応答
予算の上限を超えている403 / budget_guardrail_exceeded
RPM・TPMの上限を超えている429 / rate_limit_exceeded
前払いのクレジット残高が足りない402 / insufficient_balance

クレジットと利用制限は、リクエストを受け付けた時点で max_tokens を上限とした見積りで予約し、応答が終わってから実際の利用量で精算します。 そのため、直後に残高や利用状況を見ると、予約中の分だけ多く見えることがあります。 ストリーミングでは、ストリームを読んでいる間も予約が保持されます。

タイムアウトと再実行

timeoutrequest_timeout などのタイムアウトをボディで指定することはできません。 クライアント側のタイムアウトで打ち切ってください。 打ち切ったリクエストも、そこまでの利用は記録されます。

再実行するときは、間隔を空けずに繰り返さないでください。 認証試行と同時受付の制限に触れ、429 が続く原因になります。 retry-after がある場合はその秒数を待ち、ない場合は指数バックオフで間隔を広げてください。