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
330
やる夫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
98
Emacs x Nostr
hakkadaikon
1
250
My Introduction To Nostr
hakkadaikon
0
170
Nostr × C#
hakkadaikon
0
180
思考の速さで使うクライアント ~vimクライアント作ってみた~
hakkadaikon
0
340
ゴリラ.vim #30 ライブコーティング
hakkadaikon
0
75
vimを読もうとした話
hakkadaikon
0
260
継続的な勉強会には何が必要か語り合ってみた!
hakkadaikon
0
68
健全な投稿専用クライアントを作ってみた
hakkadaikon
0
410
Other Decks in Programming
See All in Programming
PromptyによるAI開発入門
ymd65536
1
120
CloudRun, Spanner に対する負荷試験の反省と オブザーバビリティによるアプローチ
oyasumipants
1
200
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
250
Jakarta EE meets AI
ivargrimstad
0
810
The Price of Micro Frontends… and Your Alternatives @bastacon 2025 in Frankfurt
manfredsteyer
PRO
0
290
Kotlinの開発でも AIをいい感じに使いたい / Making the Most of AI in Kotlin Development
kohii00
5
2.1k
Devin入門 〜月500ドルから始まるAIチームメイトとの開発生活〜 / Introduction Devin 〜Development With AI Teammates〜
rkaga
3
1.4k
Domain-Driven Design (Tutorial)
hschwentner
13
22k
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
280
自力でTTSモデルを作った話
zgock999
0
130
Lambdaの監視、できてますか?Datadogを用いてLambdaを見守ろう
nealle
2
840
Boost Your Web Performance with Hyperdrive
chimame
1
150
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Facilitating Awesome Meetings
lara
53
6.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Practical Orchestrator
shlominoach
186
10k
Designing for humans not robots
tammielis
250
25k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
GitHub's CSS Performance
jonrohan
1030
460k
Building Applications with DynamoDB
mza
93
6.3k
The Invisible Side of Design
smashingmag
299
50k
Into the Great Unknown - MozCon
thekraken
35
1.7k
The Cost Of JavaScript in 2023
addyosmani
47
7.5k
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