Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Bedrock AgentCoreを使って簡単なチャットアプリを作ってみた!
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Har1101
July 19, 2025
1.9k
8
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Bedrock AgentCoreを使って簡単なチャットアプリを作ってみた!
2025年7月19日 (土) JAWS-UG磐田 AWS GenAI勉強会 での登壇資料です
Har1101
July 19, 2025
More Decks by Har1101
See All by Har1101
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
460
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
140
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.9k
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
7
1.7k
AgentCore Registry入門~マルチアカウントでどう使うの~
har1101
1
100
AgentCore×VPCでの設計パターンn選と勘所
har1101
4
540
AgentCore RuntimeからS3 Filesをマウントしてみる
har1101
4
710
AgentCore Session Storageで激安RAG作るためのあれやこれや
har1101
4
410
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
2
600
Featured
See All Featured
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
880
Designing for Timeless Needs
cassininazir
1
270
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
410
Git: the NoSQL Database
bkeepers
PRO
432
67k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Into the Great Unknown - MozCon
thekraken
41
2.6k
Navigating Team Friction
lara
192
16k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
380
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
A Tale of Four Properties
chriscoyier
163
24k
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エージェントシステムを作っていきましょう〜〜〜! まとめ