Skip to main content

要点

モデル出力は信頼できないテキストとして扱います。JSON を要求し、元の応答を保持し、ローカルで解析して Pydantic でオブジェクトを検証します。失敗した場合は明示的なエラーを返すか、制限した修復を一度だけ実行します。 この方法はプロバイダー固有の構造化出力パラメータを必要としません。最初の応答が有効な JSON になることも保証しません。

Python の例

OpenAI SDK と Pydantic をインストールし、OpenAI-compatible Chat Completions API を使用します。
モデルプラザから完全な Model ID を取得します。BetterToken API Key はソースコードではなく環境変数に保存します。

検証フロー

  1. アプリケーションに必要な最小の schema を定義します。
  2. Schema にないフィールドを追加せず JSON を要求します。
  3. データポリシーで許可される場合だけ元の応答を保護された場所に保存します。
  4. json.loads で解析します。
  5. model_validate で検証します。
  6. 明示的な失敗を返すか、制限した修復を一度だけ実行します。
不足値を暗黙に補完せず、default を捏造せず、無制限に再試行しないでください。修復したオブジェクトも同じ schema に合格する必要があります。

検証失敗時の確認

Pydantic はクライアント側オブジェクトを検証します。値の事実性は証明しません。ID、権限、合計値などには別の業務チェックを追加します。

機能の境界

公開済みの BetterToken Chat Completions 契約は OpenAI-compatible リクエストとテキスト応答を記載しています。固有の構造化出力フィールドはモデルとルートで異なります。現在の API リファレンスに明示的な対応がないフィールドは送信しないでください。

関連ドキュメント