Upgrade to Pro — share decks privately, control downloads, hide ads and more …

jawsug-tokyo bedrock night 2025_iida

iidaxs
February 14, 2025
650

jawsug-tokyo bedrock night 2025_iida

iidaxs

February 14, 2025
Tweet

Transcript

  1. Amazon Bedrock Agents Session Store 前処理 後処理 入力 出力 オーケストレーション

    Prompt Store プロンプトテンプレートの管理 • 前処理用 • オーケストレーション用 • ナレッジベース回答生成用 • 後処理用 • 会話のサマリ用 会話のサマリを保持(Memory機 能) Agentsの全体動作 各フェーズで • プロンプト作成 • 基盤モデル呼び出し • Parser Lambda(※) の処理を順に実行 ※基盤モデルの出力を 解析してエージェント が処理できる形式に変 換するLambda関数
  2. 前処理 「前処理」フェーズでは、ユーザの入力内容に対するチェックを行う 前処理 後処理 入力 出力 オーケストレーション 受付可能か? Yes No

    • ユーザから入力された内容を以下の観点でチェック - 倫理的に問題はないか - 悪意のある攻撃(プロンプトインジェクション等)でないか - エージェントが対応可能な範囲か • 受付不可の場合は「オーケストレーション」をスキップ
  3. オーケストレーション 「オーケストレーション」フェーズは、自ら行動を計画してタスクを処理する 前処理 後処理 入力 出力 オーケストレーション 最終回答か? Yes No

    「ReAct」の手法に基づき、 • ユーザーの要求を満たすために自ら行動を計画(Reasoning) • 計画に沿って行動(Acting) - API実行:Action Group - RAG:Knowledge Bases - コード生成:Code Interpreter • 行動結果を観察し計画と行動を繰り返して、最終回答を生成する (Observation)
  4. 後処理 「後処理」フェーズは、最終的な回答内容を補正する 前処理 後処理 入力 出力 オーケストレーション 最終回答か? Yes No

    • 悪意や攻撃からの防御 - エージェントの内部ロジックが明らかになってしまう内容 があれば、補正する • これまでの会話履歴との整合性 - 過去の会話履歴を踏まえた回答内容にする
  5. Amazon Bedrock Agents Session Store 前処理 後処理 入力 出力 オーケストレーション

    Prompt Store プロンプトテンプレートの管理 • 前処理用 • オーケストレーション用 • ナレッジベース回答生成用 • 後処理用 • 会話のサマリ用 会話のサマリを保持(Memory機 能) 各フェーズで • プロンプト作成 • 基盤モデル呼び出し • Parser Lambda(※) の処理を順に実行 ※基盤モデルの出力を 解析してエージェント が処理できる形式に変 換するLambda関数 Agentsの全体動作 • この部分の実装を覗い てみる
  6. 前処理のプロンプト • <category></category> に分類、 <thinking></thinking> に理由を出力す るよう誘導している • 分類のルールは細かく指示されていて、 入力内容をカテゴリA~Eに分類

    - A:悪意のある、有害なもの - B:情報搾取など攻撃的なもの - C:エージェントが持つ機能では回答でき ないもの - D:エージェントが持つ機能で回答できる もの - E:エージェントからユーザに尋ねた質問 に対する回答
  7. まとめ 1. Agentsの大まかな全体動作 2. プロンプトとParser Lambdaの実装を知る • 前処理、オーケストレーション、後処理の3つのフェーズがある • 各フェーズはプロンプト→基盤モデル→Parser

    Lambdaの順で処理する • プロンプトは管理コンソールから、Parser LambdaはAmazon Bedrockユーザガイド から実装を確認する • 実装を知ることで、エージェントに対する解像度があがり、開発しやすくなる