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
190
jaws-ug 東京 ランチタイムLT会 20240416
ayumun
April 16, 2024
Tweet
Share
More Decks by ayumun
See All by ayumun
Notionでの快適メモ術
ayumu11
0
1k
20230630_QiitaEnginnerFesta登壇資料
ayumu11
0
120
Featured
See All Featured
RailsConf 2023
tenderlove
29
940
Visualization
eitanlees
146
15k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Facilitating Awesome Meetings
lara
50
6.1k
The Language of Interfaces
destraynor
154
24k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Building Your Own Lightsaber
phodgson
103
6.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Statistics for Hackers
jakevdp
796
220k
4 Signs Your Business is Dying
shpigford
181
21k
Git: the NoSQL Database
bkeepers
PRO
427
64k
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