openai/gpt-4.1 の API リファレンスです。OpenAI から Comfy Router によって提供されています。
クイックスタート
Comfy ワークスペースでキーを作成し、COMFY_API_KEY としてエクスポートします。Python と TypeScript のスニペットは Comfy SDK(pip install comfy-sdk、npm install @comfyorg/sdk)を使用しています。cURL のスニペットは同じ呼び出しを raw HTTP で行うものです。
モデル ID: openai/gpt-4.1
エンドポイント: POST https://api.comfy.org/v2/models/openai/gpt-4.1
- Wait for the result
- Queue and collect later
スキーマ
入力
string[]
モデル応答に含める追加の出力データ。
string | object[]
必須
モデルへのテキスト、画像、またはファイル入力。応答の生成に使用されます。このコントラクト上で Router が供給できない唯一のフィールドであり、下記の
required に含まれる唯一の項目です。string
システム(または開発者)メッセージを、モデルのコンテキストの先頭項目として挿入します。
integer
応答のために生成されるトークン数の上限。可視の出力トークンと推論トークンを含みます。reasoning 系の id ではこの上限は非表示の推論トークンと共有されるため、小さな値だと可視テキストが一切出る前に予算を使い切ってしまいます。これが、reasoning のスモークケースでは 1024 を送り、chat 系では 16 を送る理由です。範囲:
1 から …string
OpenAI モデル識別子。Comfy Router ではこのフィールドは任意(OPTIONAL)であり、Router が
{model} パスセグメントから補います。明示的な null も同じように置き換えられます。パスと矛盾する値を送った場合は拒否されます。boolean
モデルにツール呼び出しを並列で実行させるかどうか。
string
マルチターン会話のための、前の応答の ID。
object
REASONING ティア専用。推論モデル向けの設定。例:
{"effort": "medium"}。そのまま転送されます。受け入れられるキーについては OpenAI の推論ガイドを参照してください。chat ティアの id では無視されます。boolean
OpenAI が生成された応答を後で取得できるように保存するかどうか。
boolean
送信した呼び出し元が拒否されないように宣言されていますが、このサーフェスでは無効(INERT)です。Router はディスパッチ前にこれを
false に確定(SETTLE)します。これは text/event-stream を中継するのではなくプロバイダーの応答をキャプチャするためであり、openAiResponsesProxy の ModifyResponse はそれをデコードできず、ストリーミング生成は OpenAI に課金されつつ誰にもメータリングされないことになります。ストリームが必要な場合は POST /proxy/openai/v1/responses を使用してください。number
サンプリング温度。CHAT ティア専用。o シリーズの推論 id(
o1、o1-pro、o3、o4-mini)は OpenAI 側でこのパラメータを拒否します。Router はそれらに対して拒否しません(両ティアが 1 つのスキーマを共有する理由についてはこのコンポーネントの注記を参照)ので、これを送った推論呼び出しは OpenAI 自身のエラーによって応答されます。範囲: 0 から 2object
出力フォーマットの設定。例: Structured Outputs 用の
{"format": {"type": "json_schema", ...}}。そのまま転送されます。string | object
モデルがどのツールを使用するかをどのように選択すべきか。文字列モード、またはツールを指定するオブジェクトのいずれか。
object[]
モデルが呼び出せるツール定義。Router はツールの分類を狭めません。受け入れられる形については OpenAI の Responses API リファレンスを参照してください。
number
ニュークラスサンプリングのカットオフ。CHAT ティア専用で、
temperature と同じ条件です。範囲: 0 から 1string
コンテキストがモデルのウィンドウを超えたときの切り詰め戦略。上記の 3 つの語彙とは異なり、ここでは enum が施行されます。これら 2 つの値が OpenAI の文書化する完全な集合であり、それ以上増えていないためです。明示的な
null は、上記のフィールドと同じ条件で受け入れられます。取りうる値: auto、disabledobject
トークン使用量のエンベロープ。v1 オペレーションがリクエストボディでこれを宣言しているため、このコントラクトに存在します。OpenAI はこれを応答(RESPONSE)に設定するため、呼び出し元が送る理由はありません。
GET /v2/models/openai/gpt-4.1/openapi.json で提供するスキーマから生成済み。これはリクエストがプロバイダーに到達する前に Router が呼び出しを検証するのと同じドキュメントです。
出力
string
モデルのコンテキストの最初の項目として、システム(または開発者)メッセージを挿入します。
previous_response_id と併用する場合、前のレスポンスの instructions は次のレスポンスに引き継がれません。これにより、新しいレスポンスでシステム(または開発者)メッセージを簡単に差し替えられます。string
レスポンスの生成に使用されるモデル
number
デフォルト:"1"
レスポンスのランダム性を制御します範囲:
0 から 2number
デフォルト:"1"
nucleus サンプリングによってレスポンスの多様性を制御します範囲:
0 から 1string
デフォルト:"\"disabled\""
モデルレスポンスに使用する切り捨て戦略。
-
auto: このレスポンスと以前のレスポンスのコンテキストが モデルのコンテキストウィンドウサイズを超える場合、モデルは 会話の途中の入力項目を削除してコンテキストウィンドウに 収まるようにレスポンスを切り捨てます。 -
disabled(デフォルト): モデルレスポンスがモデルのコンテキストウィンドウ サイズを超える場合、リクエストは 400 エラーで失敗します。 指定可能な値:auto、disabled
string
後のターンでどの reasoning 項目をモデルに返すかを制御します。例:
auto、current_turn、all_turns。string
デフォルト:"\"medium\""
o シリーズモデルのみ推論モデルの
推論にかける労力を制約します。
現在サポートされている値は
low、medium、high です。
推論の労力を減らすと、レスポンスが速くなり、レスポンス内の
推論に使用されるトークンが少なくなる場合があります。指定可能な値: low、medium、highstring
非推奨: 代わりに
summary を使用してください。モデルが実行した推論の要約。これはデバッグや
モデルの推論プロセスを理解するのに役立ちます。
auto、concise、detailed のいずれか。指定可能な値: auto、concise、detailedstring
レスポンスに使用される推論モード。
string
モデルが実行した推論の要約。これはデバッグや
モデルの推論プロセスを理解するのに役立ちます。
auto、concise、detailed のいずれか。指定可能な値: auto、concise、detailedobject
object
モデルが出力する必要がある形式を指定するオブジェクト。
{ "type": "json_schema" } を設定すると Structured Outputs が有効になり、
モデルが指定した JSON スキーマに一致することが保証されます。詳細は
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
応答が不完全である理由。指定可能な値:
max_output_tokens、content_filterinteger
1つの応答で処理できる、組み込みツールへの総呼び出し回数の最大値。
object
応答に付加できるキーと値のペアのセット。
object
モデレーション済みの完了が要求された場合の、応答の入力と出力のモデレーション結果。
string
このリソースのオブジェクト型。常に
response に設定されます。指定可能な値: 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 のいずれか。指定可能な値: completed、failed、in_progress、cancelled、queued、incompleteboolean
応答が後で API 経由で取得できるように保存されるかどうか。
object
組み込みツール別に分類されたトークンとリクエストの使用状況。
object
画像生成ツールのトークン使用状況。
integer
object
integer
integer
integer
object
integer
integer
integer
object
Web 検索ツールの使用状況。
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 が入力を拒否したことを意味します。生成されたアセットは 結果 URL の有効期限 があるため、早めにダウンロードしてください。
ヘッダー
認証、冪等性、リクエスト ID、エラー分類、リトライ間隔、支出上限。
Router API の利用
モデルの検出、バリデーションエラー、リトライ、課金。
制限事項
Router が現在対応していないことと、代替手段。