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
300
jaws-ug 東京 ランチタイムLT会 20240416
ayumun
April 16, 2024
Tweet
Share
More Decks by ayumun
See All by ayumun
Notionでの快適メモ術
ayumu11
0
1.2k
20230630_QiitaEnginnerFesta登壇資料
ayumu11
0
130
Featured
See All Featured
Side Projects
sachag
455
42k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
RailsConf 2023
tenderlove
30
1.1k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Adopting Sorbet at Scale
ufuk
77
9.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
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