AI News JAPAN

世界のAIニュースを最速で把握できるメディア

Advertisement

Amazon Bedrockが構造化出力に対応、Claude全モデルでJSONパースエラーを排除

公開:2026年10月20日, 最終更新:2026年10月20日

AWSは、Amazon BedrockがすべてのAnthropic Claudeモデルで構造化出力(Structured Outputs)をサポートしたことを公式ブログで明らかにした。bedrock-runtimeおよびbedrock-mantleの両エンドポイントで利用でき、スキーマに準拠したJSON応答を確実に受け取れるようになった。

30秒サマリー

  • Amazon BedrockがClaude全モデルで構造化出力に対応し、スキーマ準拠のJSONレスポンスを保証
  • 制約付きデコーディングにより、トークン生成時点でスキーマ違反を防止。カスタムパース処理やリトライロジックが不要に
  • バッチ推論・クロスリージョン推論・ストリーミングにも対応し、大規模本番運用に対応できる設計

Amazon Bedrockの構造化出力サポート内容

AWS公式ブログによると、Amazon BedrockはすべてのAnthropic Claudeモデルを対象に構造化出力機能のサポートを開始した。Boto3およびbedrock-runtime APIを経由する場合も、Messages APIおよびbedrock-mantleエンドポイントを経由する場合も、どちらからでも利用可能だ。

同機能は、ユーザーが定義したJSONスキーマに対して、モデルがトークン生成の段階でスキーマに違反するトークンを出力しないよう制御する「制約付きデコーディング(Constrained Decoding)」を採用している。これにより、出力フォーマットが確率的なものから決定論的なものへと変わる。従来必要だったカスタムパース処理、リトライロジック、後処理は不要になるという。

提供される仕組みは2種類ある。一つは「JSONスキーマ出力フォーマット」で、データ抽出やレポート生成、APIレスポンスに対してモデルの応答構造を制御する。もう一つは「Strict Tool Use(厳格なツール使用)」で、エージェントワークフローや関数呼び出しにおいてツールのパラメーターをスキーマに照らして検証する。

パフォーマンス面では、新しいスキーマを初めて使用する際にAmazon Bedrockがグラマーアーティファクトをコンパイルするため、初回リクエストに若干の遅延が生じる場合があるとしている。コンパイル済みグラマーはアカウント単位で24時間キャッシュされるため、同一スキーマを使った2回目以降のリクエストはオーバーヘッドが最小化される。なお、スキーマの構造を変更するとキャッシュが無効化され再コンパイルが走るが、フィールドの名前や説明文のみの変更であればキャッシュはそのまま有効となる。

Amazon Bedrockの主な仕様・数値

  • 対応モデル:すべてのAnthropic Claudeモデル(Amazon Bedrock上で利用可能なもの)
  • 対応エンドポイント:bedrock-runtimeおよびbedrock-mantle
  • サポートするJSONスキーマ仕様:JSON Schema Draft 2020-12のサポート対象サブセット
  • グラマーキャッシュ有効期間:24時間(アカウントスコープ)
  • バッチ推論:対応(bedrock-runtime)
  • クロスリージョン推論:対応(bedrock-runtime)
  • ストリーミング:対応(型付きイベントとして構造化レスポンスをストリーミング可能)
  • 必須設定:スキーマ内のすべてのオブジェクトに additionalProperties: false を設定

出典: AWS Machine Learning Blog(公式ブログ)

なぜ重要か(編集部の分析)

編集部の見方として、本機能の核心はAIシステムの「信頼性コスト」を劇的に下げる点にある。これまでLLMのJSON出力は確率的であったため、本番システムでは防御的なパース処理やリトライロジックの実装が当然のコストとして求められてきた。制約付きデコーディングによってスキーマ準拠をモデル側で保証することで、アプリケーション側の検証コードが削減でき、エラーハンドリングの工数も縮小する。さらに不要なフィールドの出力が抑制されることで、大量処理時の推論コスト低減にも寄与しうると分析できる。

日本企業への示唆(編集部の分析)

編集部の分析として、日本企業にとっては特に基幹業務への生成AI組み込みを検討している場面で実務的な意義が大きいと考える。財務レポートからの情報抽出、電子カルテへの臨床記録取り込み、サポートチケットの自動分類・ルーティングといったユースケースでは、出力の不安定さがシステム採用の壁になるケースが多かった。スキーマ準拠が保証されることで、これらの業務自動化に必要な検証・後処理の実装負荷を見直すことができる。Amazon Bedrock上のClaude活用を検討している開発チームは、既存のパース処理やリトライロジックを本機能で代替できないか、アーキテクチャを点検する機会と捉えるべきだろう。

背景・経緯

Amazon Bedrockは、AWSが提供する複数の基盤モデルをAPIで利用できるマネージドサービスで、Anthropic Claudeはその対応モデルの一つ。従来、LLMにJSON形式での出力を求める場合、プロンプトでの指示やモデル出力後の検証・リトライ処理が開発者側の実装責任とされてきた。今回の構造化出力サポートは、生成時点からスキーマを強制することでこの課題に応えるものと位置づけられる。

Amazon Bedrockについてよくある質問

Q. Amazon Bedrockの構造化出力はどのAPIエンドポイントで使えますか?

A. bedrock-runtimeおよびbedrock-mantleの両エンドポイントで利用可能で、Boto3経由のInvokeModel APIとMessages APIのどちらからでも使用できます。

Q. Amazon Bedrockの構造化出力で初回リクエストが遅くなる理由は何ですか?

A. 新しいJSONスキーマを初めて使用する際、Amazon Bedrockがグラマーアーティファクトをコンパイルするため初回リクエストに若干の時間がかかります。コンパイル済みグラマーは24時間キャッシュされるため、同一スキーマの2回目以降は遅延が最小化されます。

Q. Amazon Bedrockの構造化出力を使う際に必須の設定はありますか?

A. スキーマ内のすべてのオブジェクトに additionalProperties: false を設定することが必須です。この設定がないとスキーマが受け付けられません。

関連記事