Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

全部をAIエージェントにしない設計: AWS Step Functions × Amazon ...

Avatar for omiya omiya
November 26, 2025

全部をAIエージェントにしない設計: AWS Step Functions × Amazon Bedrock AgentCore × Strands Agents Multiagent Graphで不確実性を考慮するワークフロー

紙のアンケートを全自動で集計/修正し、生成AIを用いた解析結果を含めた結果をダッシュボード表示するワークフローを紹介。

Avatar for omiya

omiya

November 26, 2025
Tweet

More Decks by omiya

Other Decks in Programming

Transcript

  1. ©Fusic Co., Ltd. 0 全部をAIエージェントにしない設計: AWS Step Functions × Amazon

    Bedrock AgentCore × Strands Agents Multiagent Graphで不確実性を考慮するワークフロー 2025.11.27 佐藤 礼央奈 X: @xthixsl_ml AI Builders Day Online (プレイベント) 大宮 佑仁 X: @_Svva110vvtai1_
  2. ©Fusic Co., Ltd. 1 自己紹介 はじめに 佐藤 礼央奈 R E

    O N A S AT O 前職 : 陸上自衛隊 システム部隊 保有資格 : AWS All Certifications Engineer 2025 今年の新卒 大宮 佑仁 Y U J I N O M I YA
  3. ©Fusic Co., Ltd. 2 1. 課題 2. 作成したもの 3. 処理フロー

    4. Strands Agents Multiagent Graphとは 5. 採用理由 6. まとめ
  4. ©Fusic Co., Ltd. 7 2.作成したもの どこまで AI Agent に任せるか ・静的なワークフロー部分

    → Step Function で実装 ・文章の解釈が必要なワークフロー部分 → Strands Agents で実装
  5. ©Fusic Co., Ltd. 8 2.作成したもの どこまで AI Agent に任せるか ・静的なワークフロー部分

    → Step Function で実装 ・文章の解釈が必要なワークフロー部分 → Strands Agents で実装 Step Functions (静的) の具体例 ・ S3トリガ ・ PDF分割 ・ MAPで各ページ並列処理 ・ DynamoDBへの書き込み
  6. ©Fusic Co., Ltd. 9 2.作成したもの どこまで AI Agent に任せるか ・静的なワークフロー部分

    → Step Function で実装 ・文章の解釈が必要なワークフロー部分 → Strands Agents で実装 Step Functions (静的) の具体例 ・ S3トリガ ・ PDF分割 ・ MAPで各ページ並列処理 ・ DynamoDBへの書き込み Agents (動的) の具体例 ・回答結果の揺れ ・OCRの誤字修正 ・自由記述の分析 → 事前に if 文で全部書けない処理
  7. ©Fusic Co., Ltd. 11 3.処理フロー 全体処理フロー 1.S3 に PDF をアップロード

    2.Step Functions 1. PDFファイルの分割 2. MAP(各PDFページを並列に処理) 1. Upstage の OCR (Information Extractモデル) で文字列抽出 2. Lambda → Strands Agents を呼出 1. 誤字修正 2. 感情分析 3. Dynamo DBへの結果格納 3. フロントエンドで表示(DynamoDBデータを参照)
  8. ©Fusic Co., Ltd. 12 3.処理フロー 全体処理フロー 1.S3 に PDF をアップロード

    2.Step Functions 1. PDFファイルの分割 2. MAP(各PDFページを並列に処理) 1. Upstageの OCR (Information Extractモデル) で文字列抽出 2. Lambda → Strands Agents を呼出 1. 誤字修正 2. 感情分析 3. Dynamo DBへの結果格納 3. フロントエンドで表示(DynamoDBデータを参照)
  9. ©Fusic Co., Ltd. 13 • 構造化されていないデータから、必要な情報を自動的に取り出すこと • 自動化を実現するための機械学習(あるいは深層学習)モデルやアルゴリズム Upstage のUniversal

    Information Extraction使用 • ドキュメントから抽出したいフィールドを、JSON形式で定義することが可能 補足:情報抽出とは 必要な情報のみ抽出することで、マルチモーダルLLMよりも安定した結果が取得可能
  10. ©Fusic Co., Ltd. 16 3.処理フロー 全体処理フローの細分化 ・静的なワークフロー部分 → Step Function

    で実装 ・意味的理解が必要なワークフロー部分 → Strands Agents で実装
  11. ©Fusic Co., Ltd. 17 3.処理フロー 全体処理フローの細分化 不変な処理は Step Function で確実に実行し、

    文章の解釈が必要な処理は Strands Agentsで実行するアーキテクチャが完成 ・静的なワークフロー部分 → Step Function で実装 ・意味的理解が必要なワークフロー部分 → Strands Agents で実装
  12. ©Fusic Co., Ltd. 19 4.Strands Agents Multiagent Graphとは サブタイトル •

    グラフ(Gpaph)とは、数学におけるグラフ理論 • 物事を点(ノード)と線(エッジ)を結んだもの 1 3 2
  13. ©Fusic Co., Ltd. 25 5.採用理由 Graph Swarm Workflow コンセプト 開発者が定義したフローで、

    各ノードのLLMが次の経路を 選ぶパターン 複数エージェントのチームが、 自律的にタスクを進める協調 パターン 事前にコードで定義したタ スクグラフを、1つのツー ルとして一括実行するパ ターン 分岐・ループ 条件付きエッジで分岐可能。 サイクルありのグラフも定義 でき、ループ表現ができる エージェント間の往復ハンド オフで、実質的な分岐・ルー プや再検討サイクルが可能 分岐はあっても一方向のみ メリット 構造は予測可能だが、分岐は LLM で柔軟に決まる 最適な順番が事前に決めにく い問題に向いている 常に同じ結果を狙える安定 的な動作
  14. ©Fusic Co., Ltd. 26 5.採用理由 Graph Swarm Workflow コンセプト 開発者が定義したフローで、

    各ノードのLLMが次の経路を 選ぶパターン 複数エージェントのチームが、 自律的にタスクを進める協調 パターン 事前にコードで定義したタ スクグラフを、1つのツー ルとして一括実行するパ ターン 分岐・ループ 条件付きエッジで分岐可能。 サイクルありのグラフも定義 でき、ループ表現ができる エージェント間の往復ハンド オフで、実質的な分岐・ルー プや再検討サイクルが可能 分岐はあっても一方向のみ メリット 構造は予測可能だが、分岐は LLM で柔軟に決まる 最適な順番が事前に決めにく い問題に向いている 常に同じ結果を狙える安定 的な動作
  15. ©Fusic Co., Ltd. 29 まとめ 文字起こしをInformation Extractモデルを使用することに表記揺れを抑制させる Strands Agents Multiagent

    Graphを採用することでエラーや実行順番の考慮が可能に 役割分担設計をすることで実用性あるアーキテクチャでのAIアプリ運用が可能に Point.01 Point.02 Point.03
  16. ©Fusic Co., Ltd. 30 Thank You We are Hiring! https://recruit.fusic.co.jp/

    ご清聴いただきありがとうございました