【推しのLINE】 - 推しとLINEがしたい! (Stapy版)
by
Hayate.H
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
みんなのPython勉強会 #95 【推しの 】 2023年7月13日 Hayate.H
Slide 2
Slide 2 text
・お仕事:インフラ営業 @大阪 Hayate.H
Slide 3
Slide 3 text
© 渡航 小学館 / やはり俺の青春ラブコメはまちがっている。 ・お仕事:インフラ営業 @大阪 ・推し事:ラブコメアニメ など Hayate.H
Slide 4
Slide 4 text
推し事 してると思うこと…
Slide 5
Slide 5 text
画面の向こうに 行きたい! 推 し の 住 む パ ラ レ ル ワ ー ル ド
Slide 6
Slide 6 text
典型的なラノベ トラックに ぶつかり転生 エンジニアの方法 技術で解決
Slide 7
Slide 7 text
休日に開発しました!
Slide 8
Slide 8 text
推しと LINE ができるシステム 時空を超えて
Slide 9
Slide 9 text
今回は、1つだけご紹介…
Slide 10
Slide 10 text
「しりとり上手の高木さん」 特徴 WHO からかい上手の高木さん ( © 山本崇一朗 小学館 / からかい上手の高木さん ) WHAT しりとりをする POINT 文脈に合わせて からかってくれる ※ アイコン画像は、SNSでの個人利用が許可されているものを使っています。
Slide 11
Slide 11 text
こだわりポイント 会話が成り立つ 高木さん「らしさ」 しりとりのルール ※ アイコン画像は、SNSでの個人利用が許可されているものを使っています。
Slide 12
Slide 12 text
時空は超えていません… GPT を使っています アーキテクチャ
Slide 13
Slide 13 text
アーキテクチャ AWS Cloud AWS Lambda Amazon API Gateway LINE App GPT API LINE Services Messaging API Amazon DynamoDB AWS Secrets Manager OpenAI AWS CDK
Slide 14
Slide 14 text
アーキテクチャ AWS Cloud AWS Lambda Amazon API Gateway LINE App GPT API LINE Services Messaging API Amazon DynamoDB AWS Secrets Manager OpenAI AWS CDK 工夫したところ GPTのプロンプト 1 文脈に沿った会話の実現 2 AWS CDK を用いた IaC 3
Slide 15
Slide 15 text
GPTのプロンプト 1 文脈 2 IaC 3 問題点 ・ GPTは(意外と)しりとりが苦手 ・ 好きゆえに「からかう」という概念の難しさ ・ チャットにおける「高木さん」らしさ
Slide 16
Slide 16 text
問題点 ・ GPTは(意外と)しりとりが苦手 ・ 好きゆえに「からかう」という概念の難しさ ・ チャットにおける「高木さん」らしさ 解決法 ・ プロンプトエンジニアリングで工夫 ✓ Few-shot learning (タスクの例を与える) ✓ Role prompting (役割, 性格, 設定を明示) GPTのプロンプト 1 文脈 2 IaC 3
Slide 17
Slide 17 text
GPTのプロンプト 1 文脈 2 IaC 3 #「しりとり」のルールについて - 「しりとり」とは言葉遊びの一つです。単語の最後の文字を抜き出し、 その文字から始まる単語を回答していくゲームです。 - 例えば、「未来(みらい)」→「犬(いぬ)」→「ぬいぐるみ」→「三 日月(みかづき)」→「きつつき」→「着物(きもの)」→「海苔( のり)」→「りす」等のやりとりが想定されます。 - 単語の末尾が「ん」で終わる言葉を回答すると負けというルールです。 例えば「リボン」「香港(ほんこん)」などは使ってはいけません。 - 一度回答済みの言葉を使うことも、負けというルールです。(以下略) しりとりのルールと例を教示 キャラクター情報や話し方を教示 # 高木さんの基本情報 - 高木さんは、田舎の中学校に通う中学2年生の女子生徒です。 とても明るいキャラクターで礼儀正しいです。成績優秀で~(以下略) - 高木さんの口調は~(以下略)
Slide 18
Slide 18 text
文脈に沿った会話の実現 2 GPT 1 IaC 3 問題点 ・ GPT の API は、セッションを持たない → チャットの履歴を持たない ・具体的な問題 ✓ しりとりなのに、既出の単語を回答する ✓ チャットごとに話がコロコロ変わる
Slide 19
Slide 19 text
文脈に沿った会話の実現 2 GPT 1 IaC 3 問題点 ・ GPT の API は、セッションを持たない → チャットの履歴を持たない ・具体的な問題 ✓ しりとりなのに、既出の単語を回答する ✓ チャットごとに話がコロコロ変わる 解決法 ・ DB にチャット内容を保持 ✓ GPT の API 呼び出し時に、過去のチャット文を送信する ✓ Token の上限に達したら、DB の Item を削除(洗替処理)
Slide 20
Slide 20 text
AWS CDK を用いた IaC 3 GPT 1 文脈 2 特徴 ・ AWS 環境(Pythonロジック部やDB)をコードで定義 ・ 手作業で構築せず、作業ミスが減るメリット ・『プログラミング言語で書ける!』というのが CDK の売り ・ 他の IaC ツールは、YAML や JSON などを使用 AWS CDK
Slide 21
Slide 21 text
AWS CDK を用いた IaC 3 GPT 1 文脈 2 ・ 便利 ・ 微妙 特徴 ・ AWS 環境(Pythonロジック部やDB)をコードで定義 ・ 手作業で構築せず、作業ミスが減るメリット ・『プログラミング言語で書ける!』というのが CDK の売り ・ 他の IaC ツールは、YAML や JSON などを使用 ・JSON や YAML に比べると可読性は高い ・ 単純に「慣れ」の問題かもしれません ・公式ドキュメント以外に情報が少なくて辛い ・ CloudFormation や Amplify の方が、情報は断然多い 今回はじめて使ってみて… AWS CDK
Slide 22
Slide 22 text
アーキテクチャ AWS Cloud AWS Lambda Amazon API Gateway LINE App GPT API LINE Services Messaging API Amazon DynamoDB AWS Secrets Manager OpenAI AWS CDK
Slide 23
Slide 23 text
まとめ 推し事すると、技術力もあがる そして、GPT にも貢ぐことに。( API に課金が発生)
Slide 24
Slide 24 text
Hayate.H SIer 勤務の6年目・インフラ営業 Contact me on higuchi8hayate cloud8high cloud8high ソースコード cloud8high / line-gpt
Slide 25
Slide 25 text
EOF