Responses
ファイルを入力する場合は ファイル API でアップロードし、返された file_id を参照します。ゲートウェイは変換を担当し、入力への対応可否は上流が判断します。
input[].content に {"type":"input_file","file_id":"..."} を指定します。画像は type: input_image も使用できます。文書と画像は URL に変換し、動画と音声はファイル文書に記載の拡張形式を使用します。Chat 上流へのフォールバックでは Chat の展開規則を使います。
POST /v1/responses は OpenAI Responses 形式の API です。単一の input、マルチモーダル content parts、構造化出力、ツール呼び出し、response items を使う新しいテキストワークフローに適しています。
エンドポイント
https://api.inoneapi.com/v1/responses
# -H "X-APP-NAME: Your App Name"
# -H "X-APP-URL: https://your-app.example.com"
curl "https://api.inoneapi.com/v1/responses" \
-H "Authorization: Bearer $INONEAPI_API_KEY" \
-H "Content-Type: application/json" \
--data '{
"model": "YOUR_MODEL_ID",
"input": "Hello"
}'パラメーター
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
| model | string | はい | Responses 対応が有効な InOneAPI 公開モデル ID。 |
| input | string/array | はい | プレーンテキスト、またはメッセージ形式 item の配列。 |
| instructions | string | いいえ | システムレベルの指示。継続的な役割、方針、出力条件に使います。 |
| temperature | number | いいえ | サンプリングのランダム性。範囲はルートに依存します。 |
| top_p | number | いいえ | 代替のサンプリング制御。通常は temperature とどちらか一方を調整します。 |
| max_output_tokens | number | いいえ | 生成出力 token の上限。 |
| stream | boolean | いいえ | true の場合、対応マッピングで Responses イベントストリームを返します。 |
| tools | array | いいえ | function などのツール定義。利用可否はモデルによります。 |
| tool_choice | string/object | いいえ | ツール呼び出しを自動、必須、指定名に制御します。 |
| text.format | object | いいえ | 対応モデルで JSON object または schema 出力に使用します。 |
| metadata | object | いいえ | アプリ側の追跡メタデータ。秘密情報は入れません。 |
入力 item
input 配列には user、assistant、tool-result item を含められます。内容は通常、型付き content parts です。
[
{
"role": "user",
"content": [
{ "type": "input_text", "text": "このリクエストを要約してください。" }
]
}
]
レスポンス
Responses は chat の choices ではなく output 配列を返します。テキストは通常、type が output_text の output[*].content[*].text にあります。
{
"id": "resp_...",
"object": "response",
"created_at": 1760000000,
"status": "completed",
"model": "YOUR_MODEL_ID",
"output": [
{
"type": "message",
"role": "assistant",
"content": [
{ "type": "output_text", "text": "- 認証を確認\n- ルーティングを確認\n- 課金を確認" }
]
}
],
"usage": {
"input_tokens": 20,
"output_tokens": 15,
"total_tokens": 35
}
}
ストリーミングと Trace
ストリーミングを有効にした場合、完了イベントまで各イベントを逐次処理します。X-Gateway-Trace-ID とアプリ側リクエスト ID を紐づけると、時間、ルーティング、再試行、token 診断を確認できます。
互換性メモ
Responses は Chat Completions の完全な置き換えではありません。クライアントが choices[0].message を読む場合は Chat Completions を使い、output items を読む場合は Responses を使います。一般的なフィールドはマッピングで正規化できますが、未対応のツール、content part、response format は検証エラーになります。
状態と構造化出力の制限
Responses は Chat の response_format ではなく text.format を使います。Chat 変換は実装済みの項目だけに対応し、高度な構造化出力や内蔵ツールは保証しません。GET/DELETE /v1/responses/{id} と Conversation API は未提供です。履歴を自分で保持・再送してください。Chat への変換では previous_response_id と conversation は削除されます。