Skip to main content
OpenAI から Comfy Router が提供する openai/o3 の API リファレンスです。

クイックスタート

Comfy ワークスペース でキーを作成し、COMFY_API_KEY としてエクスポートします。Python と TypeScript のスニペットは Comfy SDK(pip install comfy-sdknpm install @comfyorg/sdk)を使用しています。cURL のスニペットは、生の HTTP で同じ呼び出しを行うものです。 モデル ID: openai/o3 エンドポイント: POST https://api.comfy.org/v2/models/openai/o3

スキーマ

入力

string[]
モデル応答に含める追加の出力データ。
string | object[]
必須
モデルへのテキスト、画像、またはファイルの入力。応答の生成に使用されます。このコントラクトで Router が提供できない唯一のフィールドであり、以下の required に記載されている唯一の項目です。
string
モデルのコンテキストの最初の項目として、システム(または開発者)メッセージを挿入します。
integer
応答のために生成されるトークン数の上限。可視出力トークンと reasoning トークンを含みます。reasoning の id ではこの上限は隠された reasoning トークンと共有されるため、小さな値だと可視テキストが一切生成される前に予算を使い切ってしまいます。そのため、reasoning のスモークケースでは 1024 を送信し、chat のケースでは 16 を送信します。範囲: 1 から
string
OpenAI モデル識別子。Comfy Router ではこのフィールドは任意であり、Router は {model} パスセグメントからこれを埋めます。明示的な null も同様に置き換えられます。パスと一致しない値を送信すると拒否されます。
boolean
モデルがツール呼び出しを並列で実行することを許可するかどうか。
string
マルチターン会話のための、前回の応答の ID。
object
REASONING ティア専用。reasoning モデル用の設定。例: {"effort": "medium"}。そのまま転送されます。受け入れられるキーについては OpenAI の reasoning ガイドを参照してください。chat ティアの id はこれを無視します。
boolean
OpenAI が生成された応答を後で取得できるように保存するかどうか。
boolean
送信した呼び出し元が拒否されないように宣言されていますが、このサーフェスでは無効です。Router はディスパッチ前にこれを false に確定します。というのも、Router は text/event-stream を中継するのではなくプロバイダーの応答をキャプチャするためであり、それは openAiResponsesProxy の ModifyResponse がデコードできません。そのため、ストリーミングされた生成は OpenAI に課金されつつ、誰にもメータリングされないことになります。ストリームが必要な場合は POST /proxy/openai/v1/responses を使用してください。
number
サンプリング温度。CHAT ティア専用です。o シリーズの reasoning id(o1o1-proo3o4-mini)は OpenAI でこのパラメータを拒否します。Router はそれらに対してこれを拒否しません(両ティアが 1 つのスキーマを共有する理由については、このコンポーネントの注記を参照してください)。そのため、これを送信する reasoning 呼び出しは OpenAI 自身のエラーによって応答されます。範囲: 0 から 2
object
出力フォーマットの設定。例: Structured Outputs のための {"format": {"type": "json_schema", ...}}。そのまま転送されます。
string | object
モデルがどのツールを使用するかをどのように選択すべきか。文字列のモード、またはツールを指定するオブジェクトのいずれかです。
object[]
モデルが呼び出せるツール定義。Router はツールの分類を絞り込みません。受け入れられる形については OpenAI の Responses API リファレンスを参照してください。
number
ニュークラスサンプリングのカットオフ。CHAT ティア専用であり、temperature と同じ条件です。範囲: 0 から 1
string
コンテキストがモデルのウィンドウを超えた場合の切り捨て戦略。上記の 3 つの語彙とは異なり、ここではこの列挙型が適用されます。というのも、これらの 2 つの値は OpenAI が文書化している完全な集合であり、拡張されていないためです。明示的な null は、上記のフィールドと同じ条件で依然として受け入れられます。可能な値: autodisabled
object
トークン使用量のエンベロープ。v1 オペレーションがリクエストボディでこれを宣言しているため、このコントラクトに存在します。OpenAI はこれを応答側で設定するため、呼び出し元が送信する理由はありません。
Router が GET /v2/models/openai/o3/openapi.json で提供するスキーマから生成されています。これは、リクエストがプロバイダーに到達する前に呼び出しを検証する対象となる同じドキュメントです。

出力

string
モデルのコンテキストの最初の項目として、システム(または開発者)メッセージを挿入します。previous_response_id と併用する場合、前のレスポンスの instructions は次のレスポンスに引き継がれません。これにより、新しいレスポンスでシステム(または開発者)メッセージを簡単に差し替えられます。
integer
レスポンスとして生成できるトークン数の上限。表示される出力トークンとreasoning tokensの両方を含みます。
string
レスポンスの生成に使用するモデル
number
デフォルト:"1"
レスポンスのランダム性を制御します範囲: 0 から 2
number
デフォルト:"1"
ニュークリアスサンプリングによるレスポンスの多様性を制御します範囲: 0 から 1
string
デフォルト:"\"disabled\""
モデルレスポンスで使用する切り詰め戦略。
  • auto: このレスポンスおよび以前のレスポンスのコンテキストが モデルのコンテキストウィンドウサイズを超える場合、モデルは会話の 途中の入力項目を削除してコンテキストウィンドウに収まるよう レスポンスを切り詰めます。
  • disabled (デフォルト): モデルレスポンスがモデルのコンテキストウィンドウ サイズを超える場合、リクエストは 400 エラーで失敗します。 指定可能な値: autodisabled
string
モデルへの前のレスポンスの一意な ID。これを使用して マルチターンの会話を作成します。詳細は conversation stateを参照してください。
object
o-series モデル専用reasoning modelsの 設定オプション。
string
以降のターンでどの reasoning item をモデルに返すかを制御します。例: autocurrent_turnall_turns
string
デフォルト:"\"medium\""
o-series モデル専用reasoning modelsの reasoning にかける労力を制限します。 現在サポートされている値は lowmediumhigh です。 reasoning effort を下げると、レスポンスが速くなり、レスポンスで reasoning に使用されるトークン数も少なくなる場合があります。指定可能な値: lowmediumhigh
string
非推奨: 代わりに summary を使用してください。モデルが実行した reasoning の要約。これは モデルの reasoning プロセスをデバッグおよび理解するのに 役立ちます。 autoconcisedetailed のいずれか。指定可能な値: autoconcisedetailed
string
レスポンスで使用される reasoning モード。
string
モデルが実行した reasoning の要約。これは モデルの reasoning プロセスをデバッグおよび理解するのに 役立ちます。 autoconcisedetailed のいずれか。指定可能な値: autoconcisedetailed
object
object
モデルが出力しなければならないフォーマットを指定するオブジェクト。{ "type": "json_schema" } を設定すると Structured Outputs が有効になり、 モデルが指定した JSON schema と一致することが保証されます。詳細は Structured Outputs guideを参照してください。デフォルトのフォーマットは { "type": "text" } で、追加オプションはありません。gpt-4o およびそれ以降のモデルには非推奨:{ "type": "json_object" } に設定すると、従来の JSON モードが有効になり、 モデルが生成するメッセージが有効な JSON であることが保証されます。 対応しているモデルでは json_schema が推奨されます。
string
モデルのレスポンスの冗長さを制限します。lowmediumhigh のいずれか。
`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_found
string
必須
エラーの人間が読める形式の説明。
number
これまでに出現したテキスト内での頻度に基づいて、新しいトークンにペナルティを課します。
string
この Response の一意の識別子。
object
レスポンスが不完全である理由の詳細。
string
レスポンスが不完全である理由。指定可能な値: max_output_tokens, content_filter
integer
1 つのレスポンスで処理できる、組み込みツールへの総呼び出し回数の上限。
object
レスポンスに付加できるキーと値のペアのセット。
object
モデレーションされた完了が要求された場合の、レスポンスの入力と出力に対するモデレーション結果。
string
このリソースのオブジェクト種別。常に response に設定されます。指定可能な値: response
object[]
モデルによって生成されたコンテンツ項目の配列。
  • 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
リクエストの処理に使用される処理階層。例: autodefaultflexscalepriority
string
レスポンス生成のステータス。completedfailedin_progresscancelledqueuedincomplete のいずれか。指定可能な値: completed, failed, in_progress, cancelled, queued, incomplete
boolean
レスポンスを後で API 経由で取得できるように保存するかどうか。
object
組み込みツールごとに分類されたトークンとリクエストの使用量。
object
画像生成ツールのトークン使用量。
integer
object
integer
integer
integer
object
integer
integer
integer
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 が現在対応していないことと、代替手段。