Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Bedrock AgentCoreを使って簡単なチャットアプリを作ってみた!
Search
Har1101
July 19, 2025
8
1.5k
Bedrock AgentCoreを使って簡単なチャットアプリを作ってみた!
2025年7月19日 (土) JAWS-UG磐田 AWS GenAI勉強会 での登壇資料です
Har1101
July 19, 2025
Tweet
Share
More Decks by Har1101
See All by Har1101
スケジュール駆動なエージェントを作ろう!
har1101
4
430
AIエージェントの設計で注意するべきポイント6選
har1101
5
2.4k
Now, go out
har1101
4
230
AWS re:Inventから考える、2026年のAIエージェント開発
har1101
2
540
CBとして行く初re:Invent 挑戦と失敗
har1101
2
320
Jr.Championsもいいけど、Community Buildersもね!
har1101
2
240
AgentCoreで始めるAmbient Agent
har1101
3
150
AgentCore×非同期実行で広がる、Ambient Agentの可能性
har1101
2
110
「OutputOps」なエージェントを作りたかった…~エージェント開発Tipsを添えて~
har1101
3
140
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
77
5.2k
Speed Design
sergeychernyshev
33
1.4k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Mind Mapping
helmedeiros
PRO
0
39
For a Future-Friendly Web
brad_frost
180
10k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Building Applications with DynamoDB
mza
96
6.8k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Fireside Chat
paigeccino
41
3.8k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
720
Transcript
突撃!隣のAgentic Workflow 2025/07/19 (土) JAWS-UG磐田 AWS GenAI勉強会 福地開
今日話すこと ◆AIエージェントの種類 • AIエージェントは2種類 • Agentic Workflowとは ◆AWSでAgentic Workflowを構築する方法 ◆実際にAgentic
Workflowを構築されている方に話を聞いてみた ※資料中で「AI」と記載しているものは「生成AI」とりわけ「LLM」のことを指します ※所属組織とは一切関係ない、私個人の意見・考えとなります
今日話すこと ◆AIエージェントの種類 • AIエージェントは2種類 • Agentic Workflowとは ◆AWSでAgentic Workflowを構築する方法 ◆実際にAgentic
Workflowを構築されている方に話を聞いてみた ※資料中で「AI」と記載しているものは「生成AI」とりわけ「LLM」のことを指します ※所属組織とは一切関係ない、私個人の意見・考えとなります
AIエージェントの種類
AIエージェントって(ざっくり) 2種類あんねん ◆AIにどこまで任せるか次第で実装形式は変わる
AIエージェントって(ざっくり) 2種類あんねん ◆AIにどこまで任せるか次第で実装形式は変わる • エージェントに全て賭けろ!→完全自律型AIエージェント • そこまでは無理!→基本的にはワークフロー型AIエージェント ※完全な対立構造ではない。ワークフローの中に自律型を組み込むなども可能 エージェントに全て 賭けられますか?
(全て任せますか?) 完全自律型 AIエージェント ワークフロー型 AIエージェント
AIエージェントって(ざっくり) 2種類あんねん ◆AIにどこまで任せるか次第で実装形式は変わる • エージェントに全て賭けろ!→完全自律型AIエージェント • そこまでは無理!→基本的にはワークフロー型AIエージェント ※完全な対立構造ではない。ワークフローの中に自律型を組み込むなども可能 エージェントに全て 賭けられますか?
(全て任せますか?) 完全自律型 AIエージェント ワークフロー型 AIエージェント ・目標だけをインプット ・手段はAIが考えて実行 ・例: DeepResearch機能 ・ある程度の流れが決まっている ・どこまで自由度を与えるかは 要件次第
AIエージェントって(ざっくり) 2種類あんねん ◆AIにどこまで任せるか次第で実装形式は変わる • エージェントに全て賭けろ!→完全自律型AIエージェント • そこまでは無理!→基本的にはワークフロー型AIエージェント ※完全な対立構造ではない。ワークフローの中に自律型を組み込むなども可能 エージェントに全て 賭けられますか?
(全て任せますか?) 完全自律型 AIエージェント ワークフロー型 AIエージェント Agentic Workflow 定義済み Workflow 参考:https://zenn.dev/pharmax/articles/d1d3695e4114c0
現在の解:ワークフロー型が多い ◆業務活用する時にはワークフロー型となることが多い • ワークフローの方が、自律型より効率が良いことが多い • 毎回確実に作業してほしいことがある時には、エージェントにやらせない方が良い エージェントに全て 賭けられますか? (全て任せますか?) 完全自律型
AIエージェント ワークフロー型 AIエージェント Agentic Workflow 定義済み Workflow 参考:https://zenn.dev/pharmax/articles/d1d3695e4114c0
現在の解:ワークフロー型が多い ◆業務活用する時にはワークフロー型となることが多い • ワークフローの方が、自律型より効率が良いことが多い • 毎回確実に作業してほしいことがある時には、エージェントにやらせない方が良い ◆現在、Agentic Workflowへ挑戦している企業が増加(AWS Summitで観測) エージェントに全て
賭けられますか? (全て任せますか?) 完全自律型 AIエージェント ワークフロー型 AIエージェント Agentic Workflow 定義済み Workflow 参考:https://zenn.dev/pharmax/articles/d1d3695e4114c0
Agentic Workflowとは ◆ワークフローの中でLLMが自律的に判断・行動する部分を組み込む エージェントに全て 賭けられますか? (全て任せますか?) 完全自律型 AIエージェント ワークフロー型 AIエージェント
Agentic Workflow 定義済み Workflow 参考:https://zenn.dev/pharmax/articles/d1d3695e4114c0
AWSでAgentic Workflowを 構築する
Agentic Workflowを構築する方法 ◆方法1. AWSのマネージドなサービス・機能を使う • Bedrock Flows • Step Functions
+ Bedrock • (Bedrock Agents + カスタムオーケストレーションLambda) ◆方法2. LLMアプリ開発フレームワークを用いる • LangGraph • Mastra • Strands Agents SDK • 上記で作成したワークフローをECS/Lambdaなどに載せて動かす
Agentic Workflowを構築する方法 ◆方法1. AWSのマネージドなサービス・機能を使う • Bedrock Flows • Step Functions
+ Bedrock • (Bedrock Agents + カスタムオーケストレーションLambda) ◆方法2. LLMアプリ開発フレームワークを用いる • LangGraph • Mastra • Strands Agents SDK • 上記で作成したワークフローをECS/Lambdaなどに載せて動かす?
いったい、いつの話をしている?
None
Bedrock AgentCoreを使って 簡単なチャットアプリ作ってみた! 2025/07/19 (土) JAWS-UG磐田 AWS GenAI勉強会 福地開
Who am I ? 福地 開 (ふくち はるき) @har1101mony 所属:NECソリューションイノベータ株式会社
年次:3年目 業務:インフラエンジニア、少しだけLLM触る人 選出:AWS Community Builders (AI Engineering) 2025 Japan AWS Jr.Champions 2025 Japan All AWS Certifications Engineers
Bedrock AgentCoreとは?
AIエージェントに聞いてみよう!
Bedrock AgentCoreとは? ◆開発者向けの新規生成AIサービス ◆任意のフレームワーク・モデルで構築されたAIエージェントを 安全かつ大規模にデプロイおよび運用できる • フレームワーク: LangGraph, CrewAI, Strands
Agents • モデル: Bedrock, OpenAI, Gemini
Bedrock AgentCoreとは? ◆開発者向けの新規生成AIサービス ◆任意のフレームワーク・モデルで構築されたAIエージェントを 安全かつ大規模にデプロイおよび運用できる • フレームワーク: LangGraph, CrewAI, Strands
Agents • モデル: Bedrock, OpenAI, Gemini ◆Swamiさん「AIエージェントにとって最も良い環境を提供する」
Bedrock AgentCoreとは? ◆開発者向けの新規生成AIサービス ◆任意のフレームワーク・モデルで構築されたAIエージェントを 安全かつ大規模にデプロイおよび運用できる • フレームワーク: LangGraph, CrewAI, Strands
Agents • モデル: Bedrock, OpenAI, Gemini ◆Swamiさん「AIエージェントにとって最も良い環境を提供する」 =Bedrockに限らない、すべてのAIエージェントに対する言葉
Bedrock AgentCoreとは? ◆開発者向けの新規生成AIサービス ◆任意のフレームワーク・モデルで構築されたAIエージェントを 安全かつ大規模にデプロイおよび運用できる • フレームワーク: LangGraph, CrewAI, Strands
Agents • モデル: Bedrock, OpenAI, Gemini ◆Swamiさん「AIエージェントにとって最も良い環境を提供する」 =Bedrockに限らない、すべてのAIエージェントに対する言葉 =AWSが本気でAIエージェント用プラットフォームのポジションを 取りに来た?
従来のBedrock Agentsと何が違う? ◆SaaSか、PaaSかの違いに相当する(以下、引用)
従来のBedrock Agentsと何が違う? ◆SaaSか、PaaSかの違いに相当する(以下、引用) • 従来のBedrockエージェントは、Action Groupで多少のコーディングが必要 とはいえ、基本的にはSaaSとして提供されていました。 • 一方、Amazon Bedrock
AgentCoreは、Amazonがホスティング環境を提供 し、その他の開発や技術選択についてはビルダーに委ねられています。つま り、PaaSのような位置づけになっていると言えるでしょう。 https://qiita.com/Syoitu/items/e85c9d9bd389c987d7bc
従来のBedrock Agentsと何が違う? ◆SaaSか、PaaSかの違いに相当する(以下、引用) • 従来のBedrockエージェントは、Action Groupで多少のコーディングが必要 とはいえ、基本的にはSaaSとして提供されていました。 • 一方、Amazon Bedrock
AgentCoreは、Amazonがホスティング環境を提供 し、その他の開発や技術選択についてはビルダーに委ねられています。 つまり、PaaSのような位置づけになっていると言えるでしょう。 https://qiita.com/Syoitu/items/e85c9d9bd389c987d7bc
AIエージェントをAgentCore Runtimeへデプロイしてみよう!
デプロイまでの流れ 1. LLMアプリ開発フレームワークを用いてエージェントを構築 • 個人的なおすすめフレームワークはStrands Agents SDK • AWS Summit
NYC付近でめでたくGA 2. 構築したエージェントをAgentCore互換エージェントに変更 • とても簡単、デコレータを追加するくらい 3. Bedrock AgentCore Runtimeへデプロイ • 便利なコマンドが用意されており、最短2コマンドでデプロイまで完了 4. 作ったエージェントを呼び出す • 呼び出し方をどうするか?が個人的に気になるポイント
1. Strands Agents SDKでエージェントを構築 ◆そもそもStrands Agents SDKとは(ざっくり) :
1. Strands Agents SDKでエージェントを構築 ◆そもそもStrands Agents SDKとは(ざっくり) : 3行でエージェントが出来上がる優れモノ https://qiita.com/minorun365/items/dd05a3e4938482ac6055
2. AgentCore互換エージェントへ変換 ◆4つの要素を追加する: • ランタイムのインポート • アプリの初期化 • 関数の修飾 •
実行コマンドの追加
3. Bedrock AgentCore Runtimeへデプロイ ◆流れとしては以下の通り ◆Dockerfile作成、Docker Build、ECRへプッシュ、デプロイ…
3. Bedrock AgentCore Runtimeへデプロイ ◆流れとしては以下の通り ◆Dockerfile作成、Docker Build、ECRへプッシュ、デプロイ… ◆面倒くさそう!なんだか大変そう!
3. Bedrock AgentCore Runtimeへデプロイ ◆Bedrock AgentCore Starter Toolkitという便利なものがある! • agentcore
configureコマンド: ECRリポジトリ作成、依存関係(パッケージ)の確認、認証機能の設定、 Dockerfileの作成… • これらの設定をまるっと纏めた .bedrock_agentcore.yaml の作成 →恐らくCloudFormation or SAMテンプレートと同じ
3. Bedrock AgentCore Runtimeへデプロイ ◆Bedrock AgentCore Starter Toolkitという便利なものがある! • agentcore
launchコマンド: docker build、ECRへのプッシュ、ECRのImageを参照してRuntimeへの デプロイまで行ってくれる(ロググループなども作成してくれる)
4. 作ったエージェントを呼び出す ◆CLIで呼び出す場合 • agentcore invokeコマンド
4. 作ったエージェントを呼び出す ◆Streamlitから呼び出す場合 • boto3のinvoke_agent_runtime()
4. 作ったエージェントを呼び出す ◆実際のアプリケーションから呼び出すときはどうする? • これまではLambda/ECSなどからBedrockのAPIをコールしていた ◆以下のようなよくありそうな構成の時…
4. 作ったエージェントを呼び出す ◆実際のアプリケーションから呼び出すときはどうする? • これまではLambda/ECSなどからBedrockのAPIをコールしていた ◆以下のようなよくありそうな構成の時…これは悲しい…
4. 作ったエージェントを呼び出す ◆個人的にはLambdaなどをできるだけ挟みたくない • 単純に実装で考慮事項が多い(ストリーミングレスポンスは特に) • Bedrock AgentCoreの恩恵が減る(高速コールドスタート) ◆単純にアプリ側の知識が無く、どうすればいいかわからない •
ボタンを押したらinvoke_agent_runtime()を直接コールとかダメそう • フロントエンドとバックエンドは分離したい • けどLambdaなどはできれば挟みたくない(個人の願望) ◆今後開拓が進んでいく…はず • 諦めてLambda/ECS使えって言われたらそうします
アプリも作ってみた
構成図 ◆Strands Agents SDK + Bedrock AgentCore + MCP •
Strands Agents SDKでエージェントを実装 • エージェントがAWS Knowledge MCPを使えるように設定 • Streamlitからinvoke_agent_runtime()をコールすればOK
Strands AgentsでMCP+ストリーミングレスポンス
Streamlitからinvoke_agent_runtime()をコール ◆デモはこれでいいが、実際はどうするか検討中 ◆ストリーミングレスポンスの処理はVibe Codingしただけなので、 現在理解&デバッグ中
でもなんだか難しそう… Strands AgentsもAgentCoreも よーわからん…
そんなあなたに AWS Knowledge MCP
AWS Knowledge MCP ◆最新のドキュメント、コードサンプル、その他の公式AWSコンテン ツを提供する、完全に管理されたリモートMCPサーバー ◆これをお手元のコーディングエージェントに設定しよう!!! • エージェントと対話・理解しながら実装を進められます! https://qiita.com/har1101/items/b1ce189c80ae44b9c505
◆Strands Agents SDK + Bedrock AgentCoreのお話をしました! • Bedrock AgentCoreは、AIエージェントにとって最高の環境 •
デプロイまでの流れはたったの4ステップ • デモアプリへの組み込みも簡単! • 実際のアプリケーションに組み込むにはどうするか?を現在考え中 ◆最高のアップデートにして最高の新機能、 色んなAIエージェントシステムを作っていきましょう〜〜〜! まとめ