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
74
vimを読もうとした話
hakkadaikon
0
250
継続的な勉強会には何が必要か語り合ってみた!
hakkadaikon
0
66
健全な投稿専用クライアントを作ってみた
hakkadaikon
0
400
Other Decks in Programming
See All in Programming
Spring gRPC について / About Spring gRPC
mackey0225
0
220
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
130
第3回 Snowflake 中部ユーザ会- dbt × Snowflake ハンズオン
hoto17296
4
370
負債になりにくいCSSをデザイナとつくるには?
fsubal
9
2.4k
GitHub Actions × RAGでコードレビューの検証の結果
sho_000
0
260
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
10
3.5k
もう僕は OpenAPI を書きたくない
sgash708
4
1.4k
Domain-Driven Transformation
hschwentner
2
1.9k
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
370
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
150
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
190
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
130
Featured
See All Featured
Building Applications with DynamoDB
mza
93
6.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Rails Girls Zürich Keynote
gr2m
94
13k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Six Lessons from altMBA
skipperchong
27
3.6k
Bash Introduction
62gerente
611
210k
BBQ
matthewcrist
87
9.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
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