AWSは2026年3月2日、Amazon BedrockのBatch Inference入力にConverse API形式を追加した。ジョブ作成時にmodelInvocationTypeをConverseへ設定すると、モデル固有のInvokeModel形式ではなく共通のメッセージ構造を使用できる。
複数モデルを比較する評価基盤では、入力変換コードを減らせる。一方、全モデル・全機能が同一になるわけではなく、対応モデル、コンテンツブロック、出力、制限を検証する必要がある。
何が変わったか
CreateModelInvocationJobの任意項目modelInvocationTypeで、Converseまたは既定のInvokeModelを選択できる。入力はS3上のJSONL、出力もS3へ保存される。ジョブ名、IAMロール、モデルID、入力・出力場所などの基本構造は従来と同じである。
変更前後の差
| 項目 | InvokeModel形式 | Converse形式 |
|---|---|---|
| 入力スキーマ | モデル固有 | 共通メッセージ中心 |
| 変換コード | モデルごと | 共通化しやすい |
| 既定値 | 既定 | 明示指定が必要 |
| 機能差 | モデルAPIに依存 | Converse対応範囲に依存 |
| 移行 | 既存資産を維持 | 共通基盤へ整理可能 |
誰に影響するか
大量文書の要約、分類、抽出、合成データ、回帰評価をBatch Inferenceで行うチーム、複数の基盤モデルを同一データで比較するMLOps基盤、モデル固有JSONを多数保守している組織に影響する。
期限
既存InvokeModel形式に停止期限は示されていない。すべてを急いで移す必要はない。新規パイプラインからConverse形式を採用し、既存ジョブは費用対効果を見て移行する。
必要な対応
Converse形式の共通入力モデルを定義し、既存JSONLを変換する。対象モデルがBatch InferenceとConverseの両方へ対応するか確認する。テキスト以外の入力、システム指示、ツール、停止条件、出力トークン設定はモデル差が残るため、能力表を維持する。
実装・移行手順
- 既存Batchジョブとモデル別JSONL生成器を棚卸しする。
- 内部の標準メッセージ型を定義する。
- Converse JSONLへ変換するシリアライザーを作る。
modelInvocationType: "Converse"で小規模ジョブを作成する。- S3入力全ファイルが意図したジョブ対象か確認する。
- 出力をrecord IDで照合し、欠損・重複・失敗を集計する。
- IAM、KMS、VPC、クロスアカウントS3を検証する。
- モデル別に品質、遅延、費用を比較して段階移行する。
失敗しやすい点
modelInvocationTypeを省略してInvokeModel扱いになる- Converse形式なら全モデルの挙動も同じと考える
- S3フォルダー内の不要JSONLまで処理させる
- record IDを付けず出力と入力を照合できない
- ジョブ成功だけで全行成功と判断する
- クロスアカウントS3やKMS権限を試験しない
リスク
入力共通化によりモデル切り替えは容易になるが、品質差を見落として安易にモデルを置き換える危険も増える。Batchは結果が遅れて返るため、失敗行、部分完了、重複再実行、出力保持を明示的に管理する必要がある。
評価方法
- 入力行と出力行の照合率
- 行単位の成功・失敗率
- モデル別のタスク品質
- JSONスキーマ適合率
- 1000件当たり費用
- ジョブ待機・実行時間
- 再実行時の重複率
- InvokeModel形式との結果差
ロールバック
ジョブ生成時のFeature FlagでConverseとInvokeModelを切り替える。既存モデル固有シリアライザーは移行完了まで保持する。失敗したConverseジョブは同じ出力先へ再送せず、新しいジョブIDとS3 prefixで再実行する。
編集部分析
Converse形式は、Batch Inferenceを複数モデル評価基盤として使いやすくする。ただし共通APIは能力差を消さない。共通化すべきなのはメッセージとジョブ管理であり、モデル別の制限、品質、価格、地域は別の能力レジストリで管理するべきである。
実務チェックリスト
- [ ] 既存のモデル別JSONL生成器を棚卸しした
- [ ] 内部標準メッセージ型を定義した
- [ ] 対象モデルのBatch・Converse対応を確認した
- [ ] record IDで入出力を照合できる
- [ ] 部分失敗と再実行を実装した
- [ ] S3、IAM、KMS、VPCを試験した
- [ ] 品質・時間・費用を旧形式と比較した
- [ ] InvokeModel形式へ戻せる