生成AIの問い合わせ窓口に、在庫を調べる専門エージェントと配送状況を調べる専門エージェントがある。問い合わせは片方だけの場合と、両方が必要な場合がある。
必要な専門担当だけへ商品IDや質問などの入力を渡し、その結果を受け取る。利用者への最終回答は、毎回同じ統括エージェントがまとめる設計にしたい。
この役割分担と回答の流れに最も適した構成はどれか。
統括が必要な専門担当を呼び、戻り値を統合する構成はagents-as-toolsという連携パターンに当たる。単なる並列実行や固定の全処理列、自律的な引き継ぎと、責務・入力・戻り先の違いで比較する。
詳細解説
自律的な引き継ぎは別の連携方法だが、統括が毎回最終回答をまとめるという本問の条件とは異なる。
専門担当が互いに引き継ぐ方式は、次の作業を動的に決める場面の候補である。ただし、ここで示した構成では最後の専門担当が直接回答するため、統括が毎回結果を取りまとめる条件を満たさない。
専門処理は分散できるが、必要な担当だけを呼ぶ条件と、統括が1つの回答へまとめる条件を満たさない。
独立した処理を並列化すること自体は可能である。しかし、配送だけの質問でも在庫担当が動き、別々の回答が利用者へ届くため、本問の担当選択と回答統合の要件に合わない。
呼び出し先の選択と回答の統合を統括へ置き、専門担当を限定した責務の処理として利用できる。
Strands Agentsのagents-as-toolsでは、統括から専門エージェントを呼び、その結果を後続の回答へ使える。商品IDと質問を必要な担当へ渡して結果を統括へ戻す流れは、本問の担当選択と最終回答の責任分担に対応する。
固定の順序は既知の依存処理に使えるが、この問題では不要な専門処理まで毎回実行する必要がない。
順序に依存する作業を既知の手順でつなぐ場合には、固定の処理列が役立つ。本問で常に全担当を通す方式を選ぶと不要な処理も実行するため、必要な専門担当だけを呼ぶ条件と一致しない。
公式資料で確認する
以下の項目を公式資料の記述と照合して確認します。
AIF-C01 Task2.1とStrands Agentsのagents-as-tools、Graph、Swarmの説明を比較する。架空の在庫だけ、配送だけ、両方という3件の質問について、呼ぶ担当、渡す入力、結果の戻り先、最終回答者を紙上で追う。SDKやモデルは実行しない。
参考にした公式資料
確認できる内容
統括から必要な専門担当へ処理を渡し、結果を統括へ戻す流れを説明できる。全担当の常時実行、自律的な引き継ぎ、履歴やメモリの共有を同じものとして扱わない。
理解のポイント
- 役割分担
- 呼び出しと戻り値
- 回答の統合
- 共有情報の設計
確認時の注意
- 確認環境: 現行AIF-C01 Task2.1と関連する一次資料による概念確認。架空の構成を比較し、アカウント作成・実サービス接続・SDK実行は行わない。
- 役割と通信の概念を扱い、特定SDKの引数、実行上限の既定値、共有メモリの実装が全環境で同じとは仮定しない。
- 新規受付を終了したBedrock Agents Classicの導入手順は使わず、現行ガイドが例示するStrands Agentsの概念資料を参照する。
基礎のおさらい
専門担当と統括の責務を分ける
agents-as-toolsでは、統括が必要な専門処理を呼び、その結果を回答の材料にできる。担当の責務や受け取る入力、返す結果を明確にすると、重複処理や不要な情報共有を減らせる。
固定の依存関係と自律的な引き継ぎを区別する
グラフは依存関係や分岐を明示する方法であり、すべてのグラフが固定の全処理列とは限らない。Swarmのような自律的な引き継ぎとも比較し、今回求める回答の責任者と呼び出し方に合わせて選ぶ。
情報の受け渡しを明示する
複数のエージェントを用意しただけで、すべての履歴や永続メモリが自動共有されるとは限らない。必要な入力と戻り値、終了条件を設計し、連携の追加が品質・待ち時間・費用へ与える影響を確かめる。