Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
20260228_JAWS_Beginner_Kansai
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Takuya Yonezawa
February 28, 2026
Programming
790
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20260228_JAWS_Beginner_Kansai
Takuya Yonezawa
February 28, 2026
More Decks by Takuya Yonezawa
See All by Takuya Yonezawa
20260516_SecJAWS_Days
takuyay0ne
5
1k
20260422_Midosuji_Tech
takuyay0ne
2
130
脱 雰囲気実装!AgentCoreを良い感じにWEBアプリケーションに組み込むために
takuyay0ne
3
720
20260204_Midosuji_Tech
takuyay0ne
1
270
20260129_CB_Kansai
takuyay0ne
1
410
20260126_JAWS_Osaka
takuyay0ne
1
78
こんな時代だからこそ! 想定しておきたいアクセスキー漏洩後のムーブ
takuyay0ne
4
850
セキュリティは全員参加!_JAWSのイベントサイトで脅威モデリングを学んでみよう!
takuyay0ne
0
240
20250920_ServerlessDays
takuyay0ne
10
5.1k
Other Decks in Programming
See All in Programming
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.7k
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
150
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
17k
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
270
自サークルのIdPからログアウトできるようになるまで
taiseiue
1
140
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
8
2.2k
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
380
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
230
パスワード再設定メールのURLについて知っておこう
uyuki234
0
160
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
1.1k
すこし踏み込む CancellationToken
htkym
2
1.7k
APNsからLive Activityを開始する話
yumnumm
0
170
Featured
See All Featured
We Are The Robots
honzajavorek
0
400
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
570
Rails Girls Zürich Keynote
gr2m
96
14k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
280
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
530
Building AI with AI
inesmontani
PRO
1
1.3k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
560
How to make the Groovebox
asonas
2
2.5k
Heart Work Chapter 1 - Part 1
lfama
PRO
10
37k
Transcript
1 © 2026 Japan Digital Design, Inc. Takuya Yonezawa 2026.02.28
苦しんで覚えるSSE × AgentCore 〜なぜアプリケーションがぬるぬる動くのか?〜 JAWS-UG初心者支部#77 関西 LT 大会
2 © 2026 Japan Digital Design, Inc. 米澤 拓也 Software
Engineer Technology & Development Div. and Corporate Culture室 プロフィール 前職ではCCoE、現職ではSoftware Engineer。 フロント/バックエンドの実装からインフラ構築など何でもやってます 証券系→銀行系 と 金融×IT なキャリアを歩んでいます 生息地:大阪 & 奈良 Community Builder (Serverless) 2023~ 資格は1冠です、優しくしてください。 takuya_y0ne
3 © 2026 Japan Digital Design, Inc. 0 はじめに
4 © 2026 Japan Digital Design, Inc. 3週間前にAgentCoreとStrandsに入門しました もう時代の流れに逆らいきれない
5 © 2026 Japan Digital Design, Inc. AI Agentを いい感じに動かすための
フルスタック基盤 AI Agentを超楽に実装するための AWS謹製フレームワーク 一言でAgentCoreとStrandsについて
6 © 2026 Japan Digital Design, Inc. つまるところ 「Strandsで作ったAI Agent
を AgentCore上で動かす」 のである ちなみに私は今月まで 「StrandsとAgentCoreって何が違うねん?」という状態でした 笑
7 © 2026 Japan Digital Design, Inc. 1 とりあえずこれを見てくれ
9 © 2026 Japan Digital Design, Inc. 公開用スクショ
10 © 2026 Japan Digital Design, Inc. 今見せたのは米澤がAgentCore×Strandsで “人力”作成した検証用アプリ (私自身がKiroになればいいのである。0円,
0クレジット) ぬるぬる動いてましたよね?
11 © 2026 Japan Digital Design, Inc. 2 ぬるぬるの正体
12 © 2026 Japan Digital Design, Inc. Server Sent Eventは
技術としては昔からあるもの Server Sent Event (SSE) 2004年に初めて仕様化 ※1 ※2 サーバからクライアントに逐次的に データを送信するための仕組み HTTPベースで実現される サーバ→クライアントの単方向通信 ▪ なんで今さら? LLMの回答生成には時間がかかる。 回答生成が完了してから一発で レスポンスを返すような従来方式だと、 UX的に微妙なので再注目されている。 ※1 https://html.spec.whatwg.org/multipage/server-sent-events.html Client Server https://developer.mozilla.org/ja/docs/ Web/API/Server-sent_events/Using_server-sent_events ※2 HTTPで接続 データ データ データ HTTP接続終了 ・・・
13 © 2026 Japan Digital Design, Inc. WebSocketは? クライアント側のポーリングは? 玄人の方向け
WebSocketやクライアント側の ポーリングだと、 - 双方向のハンドシェイク - クライアント側の処理負荷増大 などをケアして上げる必要があり、 アプリケーションが複雑になる WebSocketに対応していない プラットフォームもある その点 Server Sent Eventは単方向の HTTPベースなのでトータルすっきりする (らしい) Client Server データ取得 データ取得 データ取得 ・・・ Client Server WebSocketコネクション確立 データ送受信 WebSocket Client Polling
14 © 2026 Japan Digital Design, Inc. Server Sent Eventの中身
https://developer.mozilla.org/ja/docs/Web/API/Server-sent_events/Using_server-sent_events
15 © 2026 Japan Digital Design, Inc. Server Sent Eventの中身
https://developer.mozilla.org/ja/docs/Web/API/Server-sent_events/Using_server-sent_events AgentCoreで特に意識しないといけないのは この”data”という項目
16 © 2026 Japan Digital Design, Inc. 実際に Strands on
AgentCore が 返してくるSSEデータの中身を眺めてみる
17 © 2026 Japan Digital Design, Inc. AWSドキュメント内のサンプルコード から一部修正したもの
18 © 2026 Japan Digital Design, Inc. わあ。。。
19 © 2026 Japan Digital Design, Inc. すこし整理してみる
20 © 2026 Japan Digital Design, Inc. この細切れのデータを組み立てると 「こんにちは!今日はお手伝いできることはありますか」 になる(=Strandsの応答)
キー名が”event”のデータのみ抽出 Agent実行で消費されたトークン数 キー名が”event”のデータのみ抽出
21 © 2026 Japan Digital Design, Inc. キー名が”event”のテキストを組み合わせれば アプリケーション上でいい感じに表示できそう
22 © 2026 Japan Digital Design, Inc. 3 が、この細切れのデータを組み立てるのが大変。。
23 © 2026 Japan Digital Design, Inc. そもそも event: messageStartとか
event: contentBlockDeltaとか って何?
24 © 2026 Japan Digital Design, Inc. https://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/ conversation-inference-call.html#conversation-inference-call-response 実態はBedrockのConverseStream
25 © 2026 Japan Digital Design, Inc. messageStart contentBlockStart contentBlockDelta
contentBlockStop messageStop metadata ▪ メッセージ開始イベント アプリケーション上は無視してOK ▪ ツール利用時に出力される どのツールを利用するか?等が出力される ▪ 回答生成時/ツール利用時に出力される モデルの回答やツールへのインプットなどが出力される ▪ 回答生成時/ツール利用時に出力される モデルの回答停止やツール利用時の停止イベント ▪ メッセージの停止イベント 各ブロック毎にモデルの回答生成が完了したら出力される ▪ モデル回答が完了する際に出力される トークン利用量やレイテンシーが出力される
26 © 2026 Japan Digital Design, Inc. 参考:Tool利用も含めた際のペイロード
27 © 2026 Japan Digital Design, Inc. フロント側で、前述のように流れてくるデータを イベントタイプに合わせてハンドリングする必要がある
28 © 2026 Japan Digital Design, Inc. targetText という変数の中に「を使用」が格納される
29 © 2026 Japan Digital Design, Inc. サンプルのReact側コード。辛い。。
30 © 2026 Japan Digital Design, Inc. 検証している時の私の叫び
31 © 2026 Japan Digital Design, Inc. 4 まとめ
32 © 2026 Japan Digital Design, Inc. AgentCoreのストリーミングレスポンスの特性上、 どんなイベントデータがフロント側に届くかが分からない 本来バックエンド側で担わないといけないデータ整形処理を
フロント側に押し付ける形になる (本来フロント側にロジックを多く持たせるべきではない)
33 © 2026 Japan Digital Design, Inc. ぬるぬるした画面表示、本当に必要ですか? ローディング画面→一括表示 で代替できるなら
そちらのほうが遥かにシンプルにできる
34 © 2026 Japan Digital Design, Inc. x おまけ ~
今回組んだシステム構成 & Demo ~
35 © 2026 Japan Digital Design, Inc. お試しで作ってたらエライことになった。。
36 © 2026 Japan Digital Design, Inc. Strandsの中の構成。米澤の興味領域とも言える Master Agent
WEB検索Agent (MCP) What’s New 検索Agent AWS環境 調査Agent 不動産情報 取得Agent フロント実装Tips 取得Agent Knowledge Bases Knowledge Bases StrandsTools RSS tavily
37 © 2026 Japan Digital Design, Inc. - なんでHonoとかFastAPI使ってるの? -
なんでAPI-GW分けてるの? - Lambdaの中で何しているの? - KnowledgeBaseの精度向上Tips? - Bedrockモデルの選定は? などもネタとしては有るのですが、 明らかに今回は場違いなレベルになるのでまたの機会に
Thank you. 38 © 2026 Japan Digital Design, Inc.