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
320
やる夫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
97
Emacs x Nostr
hakkadaikon
1
240
My Introduction To Nostr
hakkadaikon
0
160
Nostr × C#
hakkadaikon
0
170
思考の速さで使うクライアント ~vimクライアント作ってみた~
hakkadaikon
0
330
ゴリラ.vim #30 ライブコーティング
hakkadaikon
0
75
vimを読もうとした話
hakkadaikon
0
250
継続的な勉強会には何が必要か語り合ってみた!
hakkadaikon
0
67
健全な投稿専用クライアントを作ってみた
hakkadaikon
0
400
Other Decks in Programming
See All in Programming
Bedrock Agentsレスポンス解析によるAgentのOps
licux
3
910
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
14
4.6k
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
53
18k
PEPCは何を変えようとしていたのか
ken7253
2
140
Open source software: how to live long and go far
gaelvaroquaux
0
660
React 19アップデートのために必要なこと
uhyo
8
1.4k
color-scheme: light dark; を完全に理解する
uhyo
7
490
Introduction to kotlinx.rpc
arawn
0
750
2025.2.14_Developers Summit 2025_登壇資料
0101unite
0
150
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
350
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
220
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.5k
Featured
See All Featured
A Philosophy of Restraint
colly
203
16k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Music & Morning Musume
bryan
46
6.4k
Gamification - CAS2011
davidbonilla
80
5.2k
The Invisible Side of Design
smashingmag
299
50k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
RailsConf 2023
tenderlove
29
1k
Facilitating Awesome Meetings
lara
52
6.2k
Producing Creativity
orderedlist
PRO
344
40k
Designing Experiences People Love
moore
140
23k
Done Done
chrislema
182
16k
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