openai/gpt-5 の API リファレンスです。Comfy Router が OpenAI から提供しています。
クイックスタート
Comfy ワークスペースでキーを作成し、COMFY_API_KEY としてエクスポートします。Python と TypeScript のスニペットは Comfy SDK(pip install comfy-sdk および npm install @comfyorg/sdk)を使用しています。cURL のスニペットは、同じ呼び出しを生の HTTP で行うものです。
モデル ID: openai/gpt-5
エンドポイント: POST https://api.comfy.org/v2/models/openai/gpt-5
- 結果を待つ
- 送信して後で取得する
同じボディを
POST https://api.comfy.org/v2/models/openai/gpt-5/requests に送信します。Router は実行が受け付けられ次第 201 と request_id を返し、結果は準備が整った時点で、このプロセスからでも別のプロセスからでも取得できます。ステータス、キャンセル、結果の取得の詳細は キュー配信 を参照してください。スキーマ
入力
string[]
モデル応答に含める追加の出力データ。
string | object[]
必須
応答を生成するために使用される、モデルへのテキスト、画像、ファイル入力。このコントラクトで Router が提供できない唯一のフィールドであり、以下の
required に含まれる唯一のエントリです。string
モデルのコンテキストの最初の項目として、システム(または開発者)メッセージを挿入します。
integer
応答のために生成されるトークン数の上限。可視出力トークンと reasoning トークンを含みます。reasoning 系 ID では、この上限は隠された reasoning トークンと共有されるため、小さな値だと可視テキストが出る前に予算全体を消費してしまいます。そのため、reasoning のスモークケースでは 1024 を送信し、チャットのケースでは 16 を送信します。範囲:
1 から …string
OpenAI モデル識別子。Comfy Router ではこのフィールドは任意であり、Router が
{model} パスセグメントから補います。明示的な null も同じように置き換えられます。パスと一致しない値を送信すると拒否されます。boolean
モデルがツール呼び出しを並列で実行することを許可するかどうか。
string
マルチターン会話用の、以前の応答の ID。
object
reasoning ティア専用。reasoning モデル用の設定。例:
{"effort": "medium"}。変更されずに転送されます。受け付けられるキーについては OpenAI の reasoning ガイドを参照してください。チャットティアの ID はこれを無視します。boolean
OpenAI が生成済みの応答を後で取得できるように保存するかどうか。
boolean
これを送信する呼び出し元が拒否されないように宣言されていますが、このサーフェスでは無効です。Router はディスパッチ前にこれを
false に確定します。なぜなら、text/event-stream を中継するのではなくプロバイダーの応答をキャプチャするからです。これをデコードできないため、ストリーミングされた生成は OpenAI によって課金されますが、誰によってもメータリングされません。Comfy のどのサーフェスもストリームを提供していません。v1 の POST /proxy/openai/v1/responses イングレスは stream: true を 400 で拒否し、リクエストを上流に転送することはありません。したがって、どちらのサーフェスでもこのフィールドを省略するか false を送信し、完了した応答を 1 つの JSON ボディとして読み取ってください。number
サンプリング温度。チャットティア専用です。o シリーズの reasoning ID(
o1、o1-pro、o3、o4-mini)は OpenAI でこのパラメーターを拒否します。Router はそれらに対してこれを拒否しません。2 つのティアが 1 つのスキーマを共有する理由については、このコンポーネントの注記を参照してください。そのため、これを送信する reasoning 呼び出しには OpenAI 自身のエラーが返されます。範囲: 0 から 2object
出力形式の設定。たとえば、Structured Outputs 用の
{"format": {"type": "json_schema", ...}}。変更されずに転送されます。string | object
モデルが使用するツールをどのように選択すべきか。文字列モードか、ツールを指定するオブジェクトのいずれかです。
object[]
モデルが呼び出せるツール定義。Router はツールの分類を狭めません。受け入れられる形については OpenAI の Responses API リファレンスを参照してください。
number
核サンプリングのカットオフ。チャットティア専用で、
temperature と同じ条件です。範囲: 0 から 1string
コンテキストがモデルのウィンドウを超えたときの切り捨て戦略。上記の 3 つの語彙とは異なり、ここでは enum が実際に適用されます。この 2 つの値が OpenAI が文書化している完全なセットであり、それ以上に増えていないためです。明示的な
null は、上記のフィールドと同じ条件で、引き続き受け入れられます。指定可能な値: auto, disabledobject
トークン使用量のエンベロープ。v1 オペレーションがリクエストボディでそれを宣言しているため、このコントラクトに存在します。OpenAI は RESPONSE でそれを設定するので、呼び出し元が送信する理由はありません。
GET /v2/models/openai/gpt-5/openapi.json で提供するスキーマから生成されています。これは、リクエストがプロバイダーに到達する前に呼び出しを検証する対象となるドキュメントと同じです。
出力
string
モデルのコンテキストの最初の項目として、system(または developer)メッセージを挿入します。
previous_response_id と併用する場合、前のレスポンスの instructions は次のレスポンスに引き継がれません。これにより、新しいレスポンスで system(または developer)メッセージを簡単に差し替えられます。integer
レスポンスで生成できるトークン数の上限。表示される出力トークンとreasoning tokensが含まれます。
string
レスポンスの生成に使用するモデル
number
デフォルト:"1"
レスポンスのランダム性を制御します範囲:
0 から 2number
デフォルト:"1"
ニュークリアスサンプリングによるレスポンスの多様性を制御します範囲:
0 から 1string
デフォルト:"\"disabled\""
モデルのレスポンスに使用する切り捨て戦略。
-
auto: このレスポンスと以前のレスポンスのコンテキストがモデルのコンテキストウィンドウサイズを超える場合、会話の途中にある入力項目を削除してコンテキストウィンドウに収まるようにレスポンスを切り捨てます。 -
disabled(デフォルト): モデルのレスポンスがコンテキストウィンドウサイズを超える場合、リクエストは 400 エラーで失敗します。 指定可能な値:auto,disabled
string
モデルに対する前のレスポンスの一意の ID。マルチターンの会話を作成するために使用します。詳しくはconversation stateをご覧ください。
object
o-series モデル専用reasoning モデルの設定オプション。
string
以降のターンでどの reasoning 項目をモデルに返すかを制御します(例:
auto、current_turn、all_turns)。string
デフォルト:"\"medium\""
o-series モデル専用reasoning モデルの reasoning にかける労力を制約します。現在サポートされている値は
low、medium、high です。reasoning の労力を減らすと、レスポンスが速くなり、レスポンスで reasoning に使用されるトークン数が少なくなる場合があります。指定可能な値: low, medium, highstring
非推奨: 代わりに
summary を使用してください。モデルが実行した reasoning の要約。デバッグやモデルの reasoning プロセスの理解に役立ちます。auto、concise、detailed のいずれかです。指定可能な値: auto, concise, detailedstring
レスポンスに使用する reasoning モード。
string
モデルが実行した reasoning の要約。デバッグやモデルの reasoning プロセスの理解に役立ちます。
auto、concise、detailed のいずれかです。指定可能な値: auto, concise, detailedobject
object
モデルが出力しなければならない形式を指定するオブジェクト。
{ "type": "json_schema" } を設定すると Structured Outputs が有効になり、モデルが指定した JSON schema に一致することが保証されます。詳しくはStructured Outputs ガイドをご覧ください。デフォルトの形式は追加オプションのない { "type": "text" } です。gpt-4o およびそれ以降のモデルには非推奨:{ "type": "json_object" } に設定すると古い JSON モードが有効になり、モデルが生成するメッセージが有効な JSON であることが保証されます。対応しているモデルでは json_schema の使用が推奨されます。string
モデルのレスポンスの冗長さを制約します。
low、medium、high のいずれかです。`none`, `auto`, `required` | object
レスポンスを生成するときにモデルがどのツール(または複数のツール)を選択すべきか。モデルが呼び出せるツールを指定する方法については、
tools パラメータをご覧ください。object[]
boolean
モデルのレスポンスをバックグラウンドで実行するかどうか。
object
レスポンスの課金情報。
string
レスポンスの支払いを担当する当事者。
number
この Response が完了したときの Unix タイムスタンプ(秒)。ステータスが
completed の場合にのみ存在します。number
この Response が作成されたときの Unix タイムスタンプ(秒)。
object
モデルが Response の生成に失敗したときに返されるエラーオブジェクト。
string
必須
レスポンスのエラーコード。Possible values:
server_error, rate_limit_exceeded, invalid_prompt, vector_store_timeout, invalid_image, invalid_image_format, invalid_base64_image, invalid_image_url, image_too_large, image_too_small, image_parse_error, image_content_policy_violation, invalid_image_mode, image_file_too_large, unsupported_image_media_type, empty_image_file, failed_to_download_image, image_file_not_foundstring
必須
エラーの人間が読める形式の説明。
number
これまでのテキスト内での出現頻度に基づいて新しいトークンにペナルティを与えます。
string
この Response の一意な識別子。
object
レスポンスが不完全である理由の詳細。
string
レスポンスが不完全である理由。Possible values:
max_output_tokens, content_filterinteger
1 つのレスポンスで処理できる組み込みツールへの総呼び出し回数の最大値。
object
レスポンスに付加できるキーと値のペアのセット。
object
レスポンスの入力と出力のモデレーション結果。モデレーション付きの補完が要求された場合に含まれます。
string
このリソースのオブジェクトタイプ。常に
response に設定されます。Possible values: responseobject[]
モデルによって生成されたコンテンツ項目の配列。
output配列内の項目の長さと順序は、モデルの応答によって異なります。output配列の最初の項目にアクセスして、それがモデルによって生成された コンテンツを含むassistantメッセージであると想定する代わりに、 SDK でサポートされている場合はoutput_textプロパティの使用を検討してください。
string
SDK 専用の便利なプロパティで、
output 配列内のすべての output_text 項目から集約されたテキスト出力が含まれます(存在する場合)。Python SDK と JavaScript SDK でサポートされています。boolean
デフォルト:"true"
モデルがツール呼び出しを並列で実行することを許可するかどうか。
number
これまでのテキスト内に出現するかどうかに基づいて新しいトークンにペナルティを与えます。
string
OpenAI が類似したリクエストのレスポンスをキャッシュしてキャッシュヒット率を最適化するために使用します。
user フィールドを置き換えるものです。string
プロンプトキャッシュの保持ポリシー。例:
in_memory または 24h。string
OpenAI の利用ポリシーに違反している可能性のあるアプリケーションのユーザーを検出するために使用される安定した識別子。
string
リクエストの処理に使用される処理層。例:
auto、default、flex、scale、priority。string
レスポンス生成のステータス。
completed、failed、in_progress、cancelled、queued、incomplete のいずれかです。Possible values: completed, failed, in_progress, cancelled, queued, incompleteboolean
レスポンスが後で API 経由で取得できるように保存されるかどうか。
object
組み込みツールごとに分類されたトークンとリクエストの使用量。
object
画像生成ツールのトークン使用量。
integer
object
integer
integer
integer
object
integer
integer
integer
object
Google/検索ツールの使用量。
integer
integer
各トークン位置で返す、もっとも可能性の高いトークンの最大数。それぞれに対数確率が付随します。
object
入力トークン、出力トークン、出力トークンの内訳、および使用された合計トークンを含むトークン使用量の詳細を表します。
integer
必須
入力トークンの数。
object
必須
入力トークンの詳細な内訳。
integer
キャッシュに書き込まれた入力トークンの数。
integer
必須
キャッシュから取得されたトークンの数です。
プロンプトキャッシュの詳細。
integer
必須
出力トークンの数です。
object
必須
出力トークンの詳細な内訳です。
integer
必須
推論トークンの数です。
integer
必須
使用されたトークンの総数です。
string
エンドユーザーの非推奨の識別子です。
safety_identifier と prompt_cache_key に置き換えられました。使用例
入力
出力
出荷前の確認
SDK はIdempotency-Key を生成し、自動リトライで再利用します。手動リトライでは元のキーを再利用してください。Router は最大 10 分間接続を保持できます。
リクエストが失敗すると、Router は理由を説明する X-Comfy-Error-Type レスポンスヘッダーを送信します。422 は、プロバイダーを呼び出す前に Router が入力を拒否したことを意味し、413 はリクエスト本文が Router の受け入れ可能なサイズを超えていたことを意味します。生成されたアセットは 結果 URL の有効期限 があるため、早めにダウンロードしてください。
上記のフィールド説明に記載されているサイズ制限は、プロバイダーの仕様から引用した、そのフィールドに対するプロバイダー自身の上限です。Router はリクエスト本文全体に対して別の上限を適用し、base64 エンコードされたメディアもこれにカウントされます。リクエスト本文のサイズ を参照してください。
このページは、Comfy Router 経由で呼び出す 1 つのパートナーモデルについて説明しています。同じ comfy-sdk / @comfyorg/sdk パッケージには、Comfy Cloud 上で ComfyUI のワークフローグラフ全体を実行するための 2 つ目のクライアントも含まれています: Comfy(api_key=...) / new Comfy({ apiKey })、および client.workflows、client.assets、client.jobs。Comfy SDKs を参照してください。
ヘッダー
認証、冪等性、リクエスト ID、エラー分類、リトライ間隔、支出上限。
Router API の利用
モデルの検出、バリデーションエラー、リトライ、課金。
制限事項
Router が現在対応していないことと、代替手段。