要点
モデル出力は信頼できないテキストとして扱います。JSON を要求し、元の応答を保持し、ローカルで解析して Pydantic でオブジェクトを検証します。失敗した場合は明示的なエラーを返すか、制限した修復を一度だけ実行します。 この方法はプロバイダー固有の構造化出力パラメータを必要としません。最初の応答が有効な JSON になることも保証しません。Python の例
OpenAI SDK と Pydantic をインストールし、OpenAI-compatible Chat Completions API を使用します。検証フロー
- アプリケーションに必要な最小の schema を定義します。
- Schema にないフィールドを追加せず JSON を要求します。
- データポリシーで許可される場合だけ元の応答を保護された場所に保存します。
json.loadsで解析します。model_validateで検証します。- 明示的な失敗を返すか、制限した修復を一度だけ実行します。
検証失敗時の確認
Pydantic はクライアント側オブジェクトを検証します。値の事実性は証明しません。ID、権限、合計値などには別の業務チェックを追加します。

