Anthropic、構造化出力を本格搭載—JSONスキーマ厳守のAPIで開発効率が飛躍的に向上
アントロピック(Anthropic)が、同社の上位モデル向けに「構造化出力(Structured Outputs)」のベータ機能を発表した。この新機能は、開発者が定義したJSONスキーマに完全に従った出力をAPIから保証するもので、AIモデルの出力が不規則な形式で返される問題を解消する。これにより、AIの出力を次世代のシステムやCI/CDパイプライン、IDE拡張などに直接連携することが可能になる。 対象モデルは「Claude Sonnet 4.5」と「Opus 4.1」。APIリクエスト時にoutput_formatパラメータを設定し、JSONスキーマまたはPydanticモデルを渡すことで、AIは形式的に正しく、機械可読なJSONを返す。ただし、出力の「正確性」は保証されない。誤った内容を正しく形式化して返す「ハルシネーション」は依然として発生するため、開発者は検証処理を併用する必要がある。 実例として、4人の著名な科学者のWikipedia記事を収集し、名前、生年月日、功績、ノーベル賞受賞年、死没年月日を一貫した形式で抽出するコードを紹介。JSONスキーマで出力形式を明示し、output_formatにjson_schemaを指定することで、AIは正確なJSONを返し、Pythonでそのまま処理可能になる。結果として、EinsteinやFeynmanの正確な情報が一貫して得られ、Maxwellの受賞年が0(ノーベル賞前)という歴史的事実も正しく反映された。 もう一つの例では、SQLインジェクションを含む危険なPythonコードをAIに提示。PydanticモデルでBugReportとCodeReviewResultの構造を定義し、output_formatにschemaを渡すことで、AIは「セキュリティリスクの分類」「修正コード」「説明文」を含む厳密なJSONを出力。結果として、is_safe_to_runがFalseと判定され、CriticalなSQLインジェクションが明示され、安全なパラメータ化されたコードが自動生成された。 この機能の利点は、AIを「会話型チャット」から「信頼できるソフトウェアコンポーネント」に変える点にある。機械可読性が確保され、正規表現による出力解析が不要となり、GitHub Actionsなどの自動化パイプラインへの統合も容易になる。開発者は、出力の構造を厳密に管理できるため、システムの安定性と保守性が飛躍的に向上する。 アントロピックの構造化出力は、AIを実用的な開発ツールとして活用する上で画期的な進歩であり、特に自動コードレビュー、データ抽出、システム統合の現場で大きな価値を持つ。
