お知らせ: GPT Image 2.6 Flare と Sunburst が新登場、期間限定で20%オフ、今すぐ体験
HiAPI

構造化出力用 JSON Schema ジェネレーター

サンプルJSONを貼り付けるとJSON Schemaが生成され、モデルにまさにその形を返させるAPIリクエストをコピーできます。すべてブラウザ内で動作します。

すべてのプロパティがrequiredになり、additionalPropertiesがfalseになり、一部の要素に欠けているフィールドはnullableになります。厳密な構造化出力ではこれが求められます。

JSONはこのブラウザ内で処理され、一切アップロードされません。

リクエスト設定(モデル、プロンプト)

例として使うモデルです。json_schemaのサポートはモデルによって異なるため、利用する前にモデルページで確認してください。

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "response",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "age": {
      "type": "integer"
    },
    "email": {
      "type": "string",
      "format": "email"
    },
    "joined": {
      "type": "string",
      "format": "date-time"
    },
    "skills": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "address": {
      "type": "object",
      "properties": {
        "city": {
          "type": "string"
        },
        "zip": {
          "type": "string"
        }
      },
      "required": [
        "city",
        "zip"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "name",
    "age",
    "email",
    "joined",
    "skills",
    "address"
  ],
  "additionalProperties": false
}

HiAPIで3ステップで実行

  1. 01無料アカウントを作成

    メール、Google、GitHubで登録。約1分で完了します。

    登録する
  2. 02APIキーを作成

    ダッシュボードでキーを生成し、YOUR_API_KEYの代わりに使います。

    APIキーを取得
  3. 03最初の呼び出しをする

    生成されたコードを実行します。リクエストは利用ログに表示されます。

構造化出力のためのスキーマの生成方法

  1. 01 サンプルJSONを貼り付け

    欲しい出力の実例を、代表的な値で用意してください。配列に複数の項目を含めると、オプションのフィールドが検出されます。

  2. 02 スキーマを確認

    型とフォーマットを確認し、名前を調整します。ストリクトモードではすべてのフィールドが必須になり、厳密な構造化出力が要求する形になります。

  3. 03 API呼び出しをコピー

    cURL、Python、Node.jsから選び、キーを追加して実行します。結果は choices[0].message.content 内のJSON文字列です。

JSON Schema ジェネレーター FAQ

私のJSONはどこかにアップロードされますか?

いいえ。スキーマとコードはすべてブラウザ内で生成されます。HiAPIや他のサーバーには何も送信されません。

ストリクトモードでは何が変わりますか?

すべてのプロパティをrequiredに設定し、additionalPropertiesをfalseにし、一部の配列要素に欠けているフィールドをnullable型に変換します。厳密な構造化出力にはこれらすべてが必要です。

すべてのモデルがjson_schemaに対応していますか?

いいえ。対応状況はモデルによって異なります。例では response_format.type を json_schema に設定した kimi-k3 を使っています。各モデルが何を受け付けるかはモデルページで確認してください。

1つの例からスキーマはどう推論されるのですか?

型は値から決まり、整数と小数は区別され、配列は項目間でマージされ、すべてのサンプルが一致するときに文字列フォーマットが追加されます。1つの例ではenumや値の上限は分からないので、手動で編集してください。

構造化結果はレスポンスのどこにありますか?

choices[0].message.content にJSON文字列として入っています。パースして、アプリケーション内で業務フィールドをバリデーションしてください。