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
やる夫bot作ってみた
Search
Hakkadaikon
August 07, 2023
Programming
0
290
やる夫bot作ってみた
Nostr勉強会#3 で発表した内容になります。
リンク (connpass)
https://428lab.connpass.com/event/290514/
Hakkadaikon
August 07, 2023
Tweet
Share
More Decks by Hakkadaikon
See All by Hakkadaikon
PHP x Nostr
hakkadaikon
0
31
Emacs x Nostr
hakkadaikon
1
160
My Introduction To Nostr
hakkadaikon
0
140
Nostr × C#
hakkadaikon
0
130
思考の速さで使うクライアント ~vimクライアント作ってみた~
hakkadaikon
0
270
ゴリラ.vim #30 ライブコーティング
hakkadaikon
0
63
vimを読もうとした話
hakkadaikon
0
230
継続的な勉強会には何が必要か語り合ってみた!
hakkadaikon
0
47
健全な投稿専用クライアントを作ってみた
hakkadaikon
0
370
Other Decks in Programming
See All in Programming
Laravel や Symfony で手っ取り早く OpenAPI のドキュメントを作成する
azuki
2
130
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
2k
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
970
OSSで起業してもうすぐ10年 / Open Source Conference 2024 Shimane
furukawayasuto
0
110
Kaigi on Rails 2024 〜運営の裏側〜
krpk1900
1
270
cmp.Or に感動した
otakakot
3
260
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
1
110
イマのCSSでできる インタラクション最前線 + CSS最新情報
clockmaker
5
3k
TypeScript Graph でコードレビューの心理的障壁を乗り越える
ysk8hori
3
1.2k
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
3
730
ECS Service Connectのこれまでのアップデートと今後のRoadmapを見てみる
tkikuc
2
260
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
1
220
Featured
See All Featured
Fireside Chat
paigeccino
34
3k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Optimizing for Happiness
mojombo
376
70k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
900
The Invisible Side of Design
smashingmag
298
50k
Designing the Hi-DPI Web
ddemaree
280
34k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
Side Projects
sachag
452
42k
Transcript
やる夫BOT作ってみた 2023/08/04 発火大根
自己紹介 名前 : 発火大根 本業 : インフラエンジニア(SRE的な感じ) Npub : npub1vf4huvhkfhgvys2qf4wlmncf855dzd3c6894mw2snktpxzh08vdsgcgkxx
Nostr歴 : 約4か月(4/9開始) 2
今日の内容 Nostrでやる夫bot作ったので、その話をします 3
作った動機 ・作った時は丁度無職で、暇だった ・転職活動のネタになればいいと思った ・皆Bot作ってて楽しそうだと思った 4
機能 ①30分毎にニュースを配信するよ ②メンションしたら回答するよ 5
しくみ ①ニュース取得 ②ニュース本文 ③ニュース感想 6
しかし 大きな問題を 抱えています 7
7/26のこと… GPT-4 APIが使えるように! 8
早速モデル変更だ! (GPT3.5 -> GPT4) 9
しかし、 OpenAIのUsageを見てみると…? (OpenAIのAPIは従量課金制) 10
(゚Д゚) 1日で$4.75(8/4のレートで約676円) 11
そう、GPT-4のAPIは GPT-3.5と比較すると かなり高いのです! 12
GPT値段比較 ▪GPT-3.5 Turbo 4K : IN:$0.0015 / OUT:$0.002 16K: IN:$0.003
/ OUT:$0.004 ▪GPT-4 8K : IN:$0.03 / OUT:$0.06 32K: IN:$0.06 / OUT:$0.12 ※単位 : 1k(1024)tokens 参考 : https://openai.com/pricing 変更前 変更後 13
ところで、 tokenって何? 14
・OpenAIの課金単位 ・英語だと1単語で1token ・日本語だと1文字で1~3tokenくらい ・日本語で文章を書いた場合は、token数の2/3くらいが文字数 Tokenとは 15
・ニュースの本文の長さはまちまち(1500-3000字くらいが多いかも) ・仮に、1投稿2000字とする ・2000字/(2/3) = 約3030token ・$0.03 × 3030token / 1000
= $0.0909(12.98円) ・30分単位の投稿 -> 12.98円 x 48回 = 623.4円 入力プロンプトだけで、1日約623円!? (623 × 30 = 月額18690円) 試算 16
節約せねば! 17
一旦GPT-3.5でニュースを300字以内に要約して短くしたあと 感想を生成 施策1 ①ニュース本文 ②ニュース要約 ③ニュース要約文 ④ニュース感想 18
施策1 結果1 ・ニュースの感想をうまく出力できてそう! ・文字数も節約できてそう!(↓) 19
施策1 結果2 1日の使用量が $4.75 -> $2.47に! ($2.28[約325円]の削減) 20
入力プロンプトのtoken数を縮める -> 入力プロンプトを英語にしたら、tokenを節約できるはず! ※英語だと1単語で1token、日本語だと1文字で1~3token 施策2 21
施策2現状 ニュース本文前の入力プロンプトの Token数が1041token (約4.46円) ※これ+ニュースの要約文(300字以内) = 入力プロンプト 22
施策2 変更後1 文字数は増えた(850->1546)けど、 Token数は1041 -> 719に!(約3.08円) ニュース1投稿あたり 322token / 約1.36円の節約
(30分に1回投稿だと、1日65円の節約に) 23
ニュースの感想投稿も、変な所は無さそう 施策2 変更後2 24
施策1&施策2で課金額を減らせたが、それでも月8000円 はかかる想定。 ニュース投稿頻度を減らしたりなどで、もっと節約予定。 まとめ 25
OpenAIのAPI利用は 計画的に! 26