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
Ambient Agent on AWS!
Search
Har1101
May 19, 2025
810
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ambient Agent on AWS!
JAWS-UG東京 ランチタイムLT会 #23の登壇資料です
Har1101
May 19, 2025
More Decks by Har1101
See All by Har1101
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
500
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
170
エージェンティックRAGにAWSで入門しよう!
har1101
9
2k
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
7
1.7k
AgentCore Registry入門~マルチアカウントでどう使うの~
har1101
1
110
AgentCore×VPCでの設計パターンn選と勘所
har1101
4
560
AgentCore RuntimeからS3 Filesをマウントしてみる
har1101
4
720
AgentCore Session Storageで激安RAG作るためのあれやこれや
har1101
4
420
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
2
600
Featured
See All Featured
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
180
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
390
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Six Lessons from altMBA
skipperchong
29
4.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
What's in a price? How to price your products and services
michaelherold
247
13k
From π to Pie charts
rasagy
0
240
Code Review Best Practice
trishagee
74
20k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
Typedesign – Prime Four
hannesfritz
42
3.1k
Transcript
Ambient Agent on AWS! 2025/05/20 (火) JAWS-UG東京 ランチタイムLT会 #23 福地開
Who am I ? 福地 開 (ふくち はるき) @har1101mony 所属:NECソリューションイノベータ株式会社
年次:3年目 業務:インフラエンジニア(AWS) 活動:ITなんでも勉強会「つながりテック」 運営 表彰:AWS Community Builders(AI Engineering)
Ambient Agentとは?
Ambient Agentとは? ◆よくあるAIエージェント(チャットボットなど) • 人間からのメッセージをトリガーに、エージェントが動作する • 一度に1つの会話しかできない
Ambient Agentとは? ◆よくあるAIエージェント(チャットボットなど) • 人間からのメッセージをトリガーに、エージェントが動作する • 一度に1つの会話しかできない ◆Ambient Agent •
イベント駆動・スケジュール駆動で自動的にエージェントが動作 →周囲の環境(Ambient)により一層溶け込むAIエージェント • 一度に複数のタスクを依頼することが可能
Ambient Agentのユースケースを考える ◆生徒の評価を作成してくれる、教師向けAmbient Agent • 小学校教師(特に担任)は自クラスの生徒全員分の評価を行う • その際、一人あたり数百文字の評価文章も作成する必要がある • さらに学期末ごとに評価を実施する必要がある
→30人×400文字×3学期=36,000文字!?
Ambient Agentのユースケースを考える ◆生徒の評価を作成してくれる、教師向けAmbient Agent • 小学校教師(特に担任)は自クラスの生徒全員分の評価を行う • その際、一人あたり数百文字の評価文章も作成する必要がある • さらに学期末ごとに評価を実施する必要がある
→30人×400文字×3学期=36,000文字!? ◆その評価のたたき台を作成するエージェントがあれば良さそう! • 毎回教師が「この生徒の評価を作成して」と実行するのは大変 • イベント駆動で、自動的にエージェントが評価を作成しておく • 生成された評価文章を元に、教師が手直し(Human in the loopの一種?) • 教師に限らず、色んな管理者向けにも転用できる(かも?)
AWS上で簡単なAmbient Agentを構築してみる ◆アーキテクチャ • EventBridgeをトリガーに、Lambdaを呼び出す • Lambda内部でBedrock Agentを呼び出す • Bedrock
AgentがDynamoDBから該当生徒の情報を取得し、評価文を作成 • LambdaがDynamoDBに評価文を格納 • 教師は生成された評価を参照して、手直し
実装詳細 ◆EventBridge • 出席番号、評価対象期間をJSON形式で入力 • この出席番号を起点に、Lambda側で出席番号をループ処理するような形 • 現状は番号と期間をベタ書きしている。本当はここも良しなにやってほしい
実装詳細 ◆Lambda(エージェントを呼び出す) • 渡された出席番号を起点に、ループ処理を実装 • 10000→10001→10002…という流れで順々に評価を作成 • 連続してBedrock Agentを呼び出しすぎるとToo Many
Requestsエラーが 起こりやすいので注意(後述)
実装詳細 ◆Bedrock Agent • DynamoDBにアクセスするアクショングループを実装し、データ取得 • 指導要領を元に評価基準を作成 • 作成した評価は、エージェント呼び出しLambdaへ返す →エージェントによる評価データ格納はしない
実装詳細 ◆Lambda(データを格納する) • 渡された出席番号を起点に、ループ処理を実装 • 10000→10001→10002…という流れで順々に評価を作成 • 連続してBedrock Agentを呼び出しすぎるとToo Many
Requestsエラーが 起こりやすいので注意 • DynamoDBへデータを格納し、ユーザーへ通知する →AIエージェントの役割をできるだけ絞っておきたい
考慮ポイント1:エラーハンドリング ◆エージェントはバックエンドで自動的に動く ◆そのため、エラーに気づきにくい ◆エラーが起こった時にどうするか?を設計に入れておくことが重要 • SNSなどで通知する • 自動で再実行してくれるように仕込んでおく • (例)EventBridgeの再試行ポリシーやDLQを利用する
or Lambda側で処理
考慮ポイント2:1処理のエージェント呼び出し回数 ◆このエージェントは一回の実行で約30秒かかる ◆Lambdaの実行可能時間は最大15分 ◆長くなればなるほど、Bedrock側のエラーの確率が上がる ◆細かく分けすぎるとEventBridgeを膨大に作成する必要がある • 入力(出席番号、期間)をペイロードにベタ書きしているのが良くない? • 他に良い方法を模索中…
考慮ポイント3:データ格納方法 ◆正確な評価のためには、できるだけ詳細なデータが必要 ◆そのデータは誰がどうやって入力する? • 生徒がやると、粒度がまちまちになるかも • 教師がやると、データの入力が負担になる ◆解決案としては… • 選択式・定型文での入力
• 自然言語の入力をAIが構造化 • 音声でデータ入力 ◆データの入力もAIエージェントが行ってくれるのが理想
◆AWS上で簡易的なAmbient Agentを構築可能です! ◆Lambda+Bedrock Agentだけでなく、 Step Functions+Bedrockでも同じようなことができる (しかも実行時間の制限がないはず!) ◆裏側で勝手に動いてくれる優秀なAmbient Agentを作りましょう! 良いものができたらぜひ教えて下さい!
まとめ