CCAR-F 練習問題 8
シナリオ:カスタマーサポート解決エージェント
Claude Agent SDK で、返品・請求の異議・アカウントの問題など曖昧さの大きい問い合わせを扱うサポートエージェントを構築しています。バックエンドには独自の MCP ツール(get_customer・lookup_order・process_refund・escalate_to_human)で接続し、一次解決率80%以上と、適切なエスカレーションの両立を目指しています。
サポートエージェントには「get_customer で本人確認をしてから process_refund を呼ぶ」と指示しています。監査すると、返金の約3%で、本人確認済みの顧客IDと返金対象の注文の顧客IDが一致していませんでした。会話の途中で顧客が家族の注文番号を伝えた場合などに起きており、金銭的な損失が出ています。最も効果的な対策はどれですか。
選択肢を押して回答
正解と解説
正解:B
本人確認や所有者の照合のように必ず守られるべき前提は、プロンプトではなくフックや前提ゲートでプログラム的に強制します(ガイド1.4・1.5)。プロンプトの指示には常にゼロでない失敗率があります。
高額の被害は抑えられますが、問題は金額ではなく照合の欠落です。少額の誤った返金は防げません。
金銭が動く操作の前提条件は、プロンプトではなくプログラムで強制します。フックやツール側の前提ゲートは、モデルの判断が揺れても必ず働きます。ブロック時は理由を返し、本人への確認や人への引き継ぎに誘導します。
プロンプトによる条件の遵守は確率的で、失敗率はゼロになりません。損失が出る操作には決定的な強制が必要です。
遵守率は上がるかもしれませんが、保証にはなりません。家族の注文のような想定外の流れで、再び漏れる余地が残ります。
出題範囲:CCAR-F 分野1「エージェント設計と調整」・項目1.4 多段階のワークフローの強制と引き継ぎ
参考資料(公式ドキュメント)
公開資料をもとにした独自解説です。本番の問題・難易度・合否を再現するものではありません。
