1. AI Engineering Now
  2. #5: OpenAI DevDay 2024の感想..
2024-10-16 15:18

#5: OpenAI DevDay 2024の感想 ~Prompt Caching編~

今回はOpenAI DevDay 2024で発表されたPrompt Cachingがテーマです


ポッドキャストの書き起こしサービス「LISTEN」は⁠⁠⁠⁠⁠こちら⁠⁠⁠⁠⁠


Shownotes:

https://platform.openai.com/docs/guides/prompt-caching

https://www.anthropic.com/news/prompt-caching

https://zenn.dev/google_cloud_jp/articles/0c257a98143152


出演者:

seya(⁠⁠⁠⁠@sekikazu01⁠⁠⁠⁠)

kagaya(⁠⁠⁠⁠@ry0_kaga⁠⁠⁠⁠)

サマリー

OpenAIのDevDay 2024では、プロンプトキャッシュ機能の導入が話題になり、生成AIの利用がさらに便利になることが期待されています。特に、ユーザーの手間を減らし、効率的にキャッシュされる仕組みについて議論されています。プロンプトキャッシングについての考察が展開され、プロンプトキャッシュの仕様と利点が取り上げられています。また、参加したかったDevDayに関する感想や、関心のあるAIニュースアプリのアイデアについても話されています。

DevDayの注目ニュース
AI Engineering Nowです。エンジニアの 瀬谷と申します。
エンジニアの香谷です。よろしくお願いします。
よろしくお願いします。 AI Engineering Nowは、ソフトウェアエンジニアから
LM界隈に足を踏み入れた瀬谷と香谷が、 生成AI、LM関連の論文やニュースを題材に
お話をするポッドキャストです。
本日のテーマは、OpenAIのDevDayの もろもろについてお話ししていこうかなと思います。
すでにもう1週間ぐらい経ってはいるんですけど、 香谷さん、DevDayで気になったニュースとかってありましたか?
気になったニュースは、それで言うと前回、 音声AIサービスの雑談会みたいなのを挟ませてもらいましたが、
俺たち音声AIとか結構今関心が強いので、 Advanced Voice Mode Speech-to-Speechは
個人的な趣味というか、関心的には一番刺さるのは Speech-to-Speechですかね。
そうですよね。あれ、プロダクトとかに どう使うかとかまではまだそんなに考えてはいないんですけど、
触る分には結構楽しいというか、 一時期流行ったこともぐらい自然に会話できたりして、
日本語でちゃんと会話できて、あれ結構楽しいなって感じでしたね。
そうですね。Speech-to-Speechとかは、翻訳とか予約受付とか、 あとはゲームとかに実装されてほしいなとか思いますけどね、僕は。
はいはい。より確定的でない選択肢の、難しい言い回ししちゃったけど、 自由な会話をしてくれるNPCとかそういう感じですかね。
そうですね。NPCと僕がゲームで会話するかって言われると ちょっと怪しいなって気がしましたけど、
翻訳とか予約受付とかから、あとキャラAIみたいなところかな。 キャラAIは音声変えられないからあんまないのかな。
確かに、その辺のチューニングとか出てきたら結構、 音声AIスタートアップとかとバチバチやりながら利用ケースも増えていきそうですね。
そうですね。
このAPIが結構お高めというか、いくらだっけな。 時給が多分1200、300円みたいな風に言われていることが多くて、
ただVTuber、AITuberで配信している人が時給5000円みたいなのを つぶやいているのを見たこともあって、
ずっと喋り続けるようなユースケースだと 器用対効果みたいなものが渋谷になってきそうだなっていう感じですよね。
そうですね。逆に翻訳のお題出しましたけど、 Speakみたいな英会話アプリ、
AIと英会話できますよみたいなアプリとかだと、 大体30分とか結構レッスンとかすると思うので、時間的に。
毎日レッスンすると出したら時給2000円、 1000円と500円か5000円とかで考えたら結構な金額払っているので、
それ払ったらレアジョブの方が安いっていう結局とかはまだありそうですよね。
なるほど。人間より安くなるんだ。人間の方が安くなるんだ。
レアジョブとかリズメイツとか、 僕結構英会話のやつやってますけど、
大体1月1万前後とかだったりするプランをやりますけど、 月額1万前後で大体25分のレッスンは1日1回、
それで含まれているみたいなプライシングが。 一般的なやつとかだと多いと思うので。
でもどうなんですかね。高いは高いですけど、
それこそ前回話したリテレとかも多分1分で0.07ドルとか、 0.1ドルとかそんな感じだった気がするので、
これを1時間とかに鳴らしたらそこそこスルッチャするので、 まだ音声系の方が高いは高い印象はありますね、API代は。
じゃあちょっと次の話題にいってみようかなと思うんですが、
個人的に一番目を引いたのが、 プロンプトキャッシュをついにオープンAIが出したっていうところで、
プロンプトキャッシュの特色
一番最初はジミニで、その次にクロードが出して、 ついにオープンAIという感じなんですけど、
このプロンプトキャッシュはプロンプトをキャッシュしてくれるので、
オープンAIの場合はキャッシュされた分が半額ぐらいになって、 かつ速度も上がるよと。
使えるモデルはGPT-40の系列と、あと01のモデルたちに対して使えると。
今までのジミニとかクロードと比べてめっちゃ特徴的だなって思ったのが、
戦闘から勝手にキャッシュしてくれるっていうところで、
勝手にキャッシュするのでストレージ費用はかからないし、
自分でクロードとかだとこの部分をキャッシュしてねっていうのを明示的にする必要があったんですけど、
その部分が必要なくなるっていうところで、
すごい使いやすさというか、もはや使ってるっていう感覚もなくなるぐらいの感じなんですけど、
特徴的な感じで面白いなというふうに思ったんですが、
かがやさんのインプレッション的にはどうでしたか。
そうですね。
クロードってキャッシュコントロールみたいなのをヘッダーで指定しなきゃいけない。
そうですね。
ちょっとウェブっぽいというか、キャッシュコントロールみたいなところをコントロールするみたいな仕組みだったと思いますけど、
どうなんですかね。
プロンプトキャッシュとかをそんなキャッシュコントロールとかでキャッシュしてほしい、してほしくないみたいなのをコントロールしたいユースケースかニーズって多分そんなにない。
プロンプト変えればいいだけの話で終わる。
そんなユーザー側とかにキャッシュコントロールするニーズがないんだったら、
どう考えてもオープンAIの勝手にキャッシュしてくれる方が楽は楽ですよね。
そうですね。
キャッシュされて困る。
ストレージ費用がめっちゃ膨らんでいくとかだったら困るけど、
さすがにそんな暴利はしないんで、そんな困る気もしないし。
戦闘から勝手にキャッシュして一致する部分だけ使ってくれるとかそういう話なんでしたっけ。
そんな書きぶりでしたね。戦闘。
だから逆にオープンAIのストレージどうなってるんだろうっていうのはちょっと中身どうなってるのかっていうのが気になったりはするんですけど。
そうですね。
この仕様便利なのはいいんですけど、
ちょっと面白いのが今までの戦闘から勝手にキャッシュしてくれるっていうのがあるので、
毎回入れるような情報はなるべく戦闘に集めようっていう、
ダイナミックなプロンプトごとに変わっちゃうようなところは多分後ろにするみたいなのが常識になると思うので、
ちょっとそれが精度とかに影響を与える順番とかも割と大事だったりするので、
こういうプロンプトの書き方に影響を与えてくる感じの仕様は今まであまりなかったんで、
ちょっと面白いなっていう。
ちなみに今までGoogleとかクロードでプロンプトキャッシュって使ったことってありました?
クロードでも動かしたぐらいですね。
Geminiとかはドキュメント読んで終わりなので。
私もちょっと調査昔したんですけど、
Googleのほうは今も変わってなければなんですけど、
キャッシュできるミニマムのトークン数が3万2000とかで、
私の会社でのユースケースとかだと、
せいぜいインプットトークン、2、3000トークンみたいな感じだったんで、
そもそも出番がないみたいなところで。
クロードはモデル自体はそもそもちょっとそんなに使ってなかったので、
使う機会がなかったんですけど、
仕様は本当に使いやすいんで、
結構個人的にはっていうか、
多分みんなそうですけど、かなりウェルカムな仕様ですね。
そうですね。
プロンプトキャッシングの考察
基本的にはちょっと僕が見えてない何かがあるのかもしれないですが、
基本そんなにプロンプトキャッシュの仕様で損する人というか、
損というか、デメリットというかマイナスになる人ってそんなにいないとは思うので、
基本はウェルカムはウェルカムなんだろうなと思いつつ、
ビートルビーズハウスとかだと、
ものによりますけど、
そんなに5分、10分間アクセスなかったらとか、
最大1時間後に削除されるとか、キャッシュ自体の話だったので、
2Cと比べると絶対的にリクエスト数少ないので正直、
そんなに削減幅だったりとか、
キャッシュをめちゃくちゃ使いこなしてコスト下げたいっていうモチベーション自体は薄い。
なので、もうちょっと通信向けのアプリとか作るときとかに考えようかなと思いますが、
とはいえそれも先頭からある程度勝手にキャッシュしてくれるっていう仕様であれば、
僕はプロンプト書くときってだいたい共通なものからめちゃくちゃ過変なものを下に集めるみたいなのって、
別に最初から基本そういう書き方をしてると言えばしてるので、
カリッカリにチューニングするんだったら別ですけど、
普通に書いてたらそこそこ多少は安くなる恩恵を得られそうなので、
通信のアプリとか作るタイミングとかじゃないと、
しばらくあんまりそんなにシビアにプロンプトキャッシュ考えないかもしれないですね。
確かにTTLが40分って結構割と短いから、
弊社が2C目線だからめっちゃいきそうだなっていう感じで考えてたけど、
確かに2Bとかだと意識しすぎてもそんなに恩恵ないなら、
そんなに意識しない方がいいっていうか、しなくてもいいっていう感じでは確かにありますね。
だから4を自動で設定されるってのは嬉しいですね。
クロードのキャッシュコントロールとか細かくいじってまでめちゃくちゃ頑張りたいかって言われると、
無視しちゃいそうな気もするので、そういう点で4を嬉しい。
あとそうですね、全然関係ないですけど、
また個人的にAIニュースアプリみたいなの作りたいなと思ってるんで、
そういう時とかは多分ガンガンこういうのを使った方がいいんだと思うので、
どっちかってそういう機会がある時とかにちゃんと素振りしたいなって感じですね。
今のところ業務とかだとそんなに強いモチベーションは正直ないかもしれない。
あとオープンAIのプロンプトキャッシュって特徴的なところって、
プロンプトキャッシングって加減は1200、1024トークン?
オープンAIでもそうだった。
クロードは1024トークンがミニマムだった気がしますが、
オープンAIは…
1024トークン以上のプロンプトに対して有効っぽいですね。
割と1024ぐらいだったら使う気がするので、生きる場面は全然ある。
これ考えれば考えるほどオープンAI側の仕組みが気になるな、プロンプトキャッシング。
そうっすよね。これ全部キャッシュしてたらすごいことになりそうだけど、どうなってんだろう。
一致する先頭から一致するところまでで、
その一致するプレフィックスがキャッシュにあったら、
もう生成済みの結果、キャッシュされてる結果を返すってことですよね。
そうですね。
だから多分ユーザーが可変するとこも含めて、
例えば全部パラメータになってるとこも含めて全く同じプロンプト投げたら、
事前に生成済みのやつ、キャッシュされてる結果があれば、
それが返ってきますと。
可変されてるパラメータの部分が違ったりすると、
先頭から見たときにそこの部分で違ったりするから、
その時インプットトークンはプレフィックスが共通の部分まではインプットトークンは安くなるが、
回答結果自体は新しく生成される。
多分そのはずで、
出典がRedditなんでどれくらい確かかわかんないんですけど、
ちょっとそれ私も気になって調べて、
インプットトークン、このLLMの推論が行われるときって、
全部のトークンに対してアテッションブロックの計算がされるみたいなんで、
なので同じインプットトークンの列があったときに、
そのアテッションブロックの計算がキャッシュされてて、
それを引っ張ってくることによって再計算がいらなくなるので、
その部分が計算しなくて良くなって、
結果安くなったり早くなったりみたいなことが起きるっていうことらしい。
もしかしたら誤情報かもしれないんですけど、そういう仕組みみたいです。
DevDayの感想
なるほどな。
DevDayと最後にちょっと話すとしたら、
DevDay行きたかったなっていうところで、
我々は2人ともシンガポール応募して、
一両放置してしまったと。
放置して、まだ一応ウェイトリストに載ってましたっけ?
ウェイトリストっていうパテ付けっぽいメールは来ましたけど、
さすがに繰り上がることはないだろうなと思ってます。
そうですね。
逆に繰り上がられると、
短期間でシンガポール行きを準備しなきゃいけないんで、
ちょっと困るけど。
そうですね。
繰り上げるんだったら早めに教えてほしいっていう気持ちはありますね。
そうですね。
行きたい気持ちもありつつ。
じゃあ、DevDayについてはそんなところですかね。
はい。大丈夫です。ありがとうございました。
はい。ありがとうございました。
15:18

コメント

スクロール