response_formatを設定
JSONモードは単純なオブジェクトに適しています。JSON Schemaでは、スキーマ名、フィールド構造、必須プロパティ、余分なプロパティを拒否する方法を追加できます。
厳密なスキーマは防御的な解析を減らしますが、アプリケーション側の検証に代わるものではありません。
JSON Schema応答形式
json
{
"model": "openai/gpt-5.6-sol",
"messages": [{"role": "user", "content": "Extract an order summary."}],
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "order_summary",
"strict": true,
"schema": {
"type": "object",
"properties": {"items": {"type": "array"}, "total": {"type": "number"}},
"required": ["items", "total"],
"additionalProperties": false
}
}
}
}スキーマを設計
- フィールドと説明は簡潔かつドメイン固有にします。
- 不明なフィールドを許可しない場合はadditionalProperties: falseを設定します。
- 利用側の仕様を見えない形で変更するのではなく、自社コード内でスキーマをバージョン管理します。
結果を処理
返されたJSONを、APIまたはデータベースで使用しているものと同じバリデーターで検証します。
モデルまたはルートが要求形式を受け付けない場合は、管理されたエラーを表示し、モデルカタログから互換性のある選択肢を選びます。