構造化出力が標準の契約に
自由文応答からスキーマ拘束出力へ。壊れた応答を修復する糊コードが大幅に減少。
エージェントのコードベース全体で、静かな変化が起きています。解析可能な散文を期待するのではなく、明示的な出力スキーマを前提にプロンプトを書く流れです。
パターンは一貫しています。制約付きデコード、あるいは単に厳格な OUTPUT_FORMAT ブロックと検証を導入したチームは、不正な応答の修復に割く糊コードが大きく減ったと報告しています。
何が変わったか
実務上の原動力はモデルの品質ではなく統合コストです。自由文の回答は解析・検証・再試行、そして多くの場合再質問が必要ですが、スキーマに沿った回答はこの 4 工程をすべて飛ばせます。
現在は受け入れ基準がプロンプトに直接書かれます:
- 必須フィールドを名前で列挙
- 列挙値は説明ではなく明示的に並べる
- 「妥当な数値」ではなく数値範囲を明記
- モデルが捏造せず拒否できる
NULLの逃げ道
実務への示唆
いまだに正規表現でモデル出力をこそぎ取っているなら、最も安い信頼性向上は明示的な契約を追加し、不適合な応答を静かに修復せずに拒否することです。