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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Har1101
May 19, 2025
770
3
Share
Ambient Agent on AWS!
JAWS-UG東京 ランチタイムLT会 #23の登壇資料です
Har1101
May 19, 2025
More Decks by Har1101
See All by Har1101
AgentCore×VPCでの設計パターンn選と勘所
har1101
4
360
AgentCore RuntimeからS3 Filesをマウントしてみる
har1101
4
540
AgentCore Session Storageで激安RAG作るためのあれやこれや
har1101
4
300
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
2
540
今日から始めるAmazon Bedrock AgentCore
har1101
4
510
My First Year as a Community Builder
har1101
3
320
EventBridge API Destination × AgentCore Runtimeで実現するLambdaレスなイベント駆動エージェント
har1101
7
360
AgentCoreとHuman in the Loop
har1101
5
440
スケジュール駆動なエージェントを作ろう!
har1101
4
900
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
280
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
270
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
320
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
170
Believing is Seeing
oripsolob
1
120
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
[SF Ruby Conf 2025] Rails X
palkan
2
990
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
New Earth Scene 8
popppiees
3
2.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を作りましょう! 良いものができたらぜひ教えて下さい!
まとめ