JSONモードとは
JSONモードとは、AIの回答をJSONという機械が読みやすい形式で返させるためのOpenAI APIの出力指定です。文章として読むより、プログラムや業務システムへ渡す前提の返答を作るときに使います。
英語表記:JSON mode
壊れにくいJSONを返すための指定
JSONは、システム同士がデータを受け渡すときによく使う形式です。たとえば「名前」「メールアドレス」「問い合わせ分類」を決まった項目で返せれば、AIの結果をCRMやスプレッドシートへ流し込みやすくなります。
JSONモードは、モデルにこの形式で答えるよう促す機能です。人に見せる文章ではなく、次の処理へ渡す部品としてAI回答を扱うと考えると分かりやすいでしょう。
構造化出力との使い分け
JSONモードは、JSONとしての形を壊しにくくする指定です。一方で構造化出力は、項目名や型をJSON Schemaに合わせるところまで縛ります。
軽い自動化ならJSONモード、業務データとして厳密に扱うなら構造化出力という分け方が実務的です。たとえば下書き分類ならJSONモードで足りるかもしれません。請求項目や契約レビュー結果のように後工程のミスが重い場合は、構造化出力を検討する場面です。
導入時の注意
JSONモードを指定しても、AIが中身まで正確に判断する保証にはなりません。形式の安定と判断の正確さは別問題です。
OpenAI APIを業務に組み込む場合は、JSONの形が合っているかを機械的に検査し、重要な判断は人間の確認へ回す設計が必要です。ファンクションコーリングや構造化出力と組み合わせると、実務で扱いやすい設計に寄せられるでしょう。
Topicプロンプト内にJSONという言葉が必要
OpenAI Docsでは、JSONモード利用時に文脈のどこかでJSONを出すよう指示する必要があると説明されています。これは、AIに「表で返して」とだけ言うより、「JSONで返して」と明示する安全装置のようなものです。
JSONモードに関するよくある質問
- JSONモードと構造化出力はどちらを選ぶべきですか?
- 返答がJSONとして読めればよい軽い用途ならJSONモードで始められます。項目名や型まで固定して業務システムへ渡すなら、構造化出力の方が安全です。
- JSONモードにするとAIの判断ミスも減りますか?
- 主に安定するのは出力形式です。分類や要約の内容が正しいかは別問題なので、検査ルールや人の確認を組み合わせる必要があります。