Gemini はデフォルトで非構造化テキストを生成しますが、一部のアプリケーションでは構造化テキストが必要です。このようなユースケースでは、自動処理に適した構造化データ形式である JSON で応答するように Gemini を制約できます。列挙型で指定されたいずれかのオプションで応答するようにモデルを制約することもできます。
モデルからの構造化出力が必要なユースケースをいくつか示します。
- 新聞記事から企業情報を抽出して、企業のデータベースを構築します。
- 履歴書から標準化された情報を抽出します。
- レシピから材料を抽出し、各材料の食料品ウェブサイトへのリンクを表示します。
プロンプトで、Gemini に JSON 形式の出力を生成するよう指示できますが、モデルが JSON のみを出力することは保証されません。より確定的なレスポンスを取得するには、responseSchema
フィールドに特定の JSON スキーマを渡して、Gemini が常に想定される構造で応答するようにします。
このガイドでは、任意の SDK または REST API を直接使用して generateContent
メソッドを使用して JSON を生成する方法について説明します。これらの例ではテキストのみの入力を示していますが、Gemini は画像、動画、音声を含むマルチモーダル リクエストに対して JSON レスポンスを生成することもできます。