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
jaws-ug 東京 ランチタイムLT会 20240416
Search
ayumun
April 16, 2024
0
340
jaws-ug 東京 ランチタイムLT会 20240416
ayumun
April 16, 2024
Tweet
Share
More Decks by ayumun
See All by ayumun
Notionでの快適メモ術
ayumu11
0
1.3k
20230630_QiitaEnginnerFesta登壇資料
ayumu11
0
130
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
The Cult of Friendly URLs
andyhume
79
6.6k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
920
Building Flexible Design Systems
yeseniaperezcruz
329
39k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
What's in a price? How to price your products and services
michaelherold
246
12k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Statistics for Hackers
jakevdp
799
220k
How GitHub (no longer) Works
holman
315
140k
Navigating Team Friction
lara
190
15k
Documentation Writing (for coders)
carmenintech
75
5.1k
Transcript
API Gatewayを使ってgpt-4からの回答を ストリームレスポンスさせる KDDIアジャイル開発センター株式会社 山口 歩夢(@ayumun_jp) JAWS-UG Tokyo ランチタイム会LT #10
2024/4/16
山口歩夢 2021年にKDDIに新卒入社し、自社クラウドの 基盤開発に従事 2023年よりKAGに兼務出向し、 Webサービスの開発や地方拠点案件のシステム 開発を担当 2024年 AWS Community Buildersに選出
(カテゴリ:Serverless) 自己紹介
目次 構成図 1. デモ 2. 作成理由 3. 実装方法(ポイントのみ 4. まとめ
5.
構成図
デモ
作成理由 英語で日記を書いてるの で、文章を添削せたい AIからのレスポンスの 待ち時間を“体感”減らしたい プロンプトエンジニアリ ングに触れたい
バルクレスポンス(一括) ストリームレスポンス(逐次) デモ デモ 比較
REST APIではLambdaから画面に対してストリーム的にデータの返却はできない → Websocketを使う gptにストリーム形式で返答させる バルクレスポンス ストリームレスポンス 内部的に新しいチャンクが 利用可能になるまで待機する設計
API GatewayでWebsocket APIを選択する API Gatewayでは、Rest APIではなく Websocket APIを選択してデプロイする Websocketは、一度接続が確立すれば リアルタイムでのデータ送受信が可能
Websocketを利用することで ストリーム的に返却されるデータを扱える
lambdaにおけるwebsocketの扱い API Gatewayからのリクエストのコンテキスト (どのドメイン、ステージ、接続IDから来たか) を把握しAPI Gatewayへのメッセージ送信を実現 APIクライアントに対して値を逐次返却する
画面側でのWebsocketの扱い 入力と画面に返すための関数を 受け取ってWebsocketクライアントの インスタンスを作成 入力値を、サーバー側に渡す サーバからの返却値を受け取り、データが届く度に コールバック関数で呼び出し元にデータを返却
None
まとめ ストリームレスポンス気持ちいぃぃ
作成手順の詳細は Qiitaへ(@ayumun_jp)
None