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
Prompt Cachingは本当に効果的なのか検証してみた.pdf
Search
ttnyt8701
September 05, 2024
Programming
0
590
Prompt Cachingは本当に効果的なのか検証してみた.pdf
https://zenn.dev/eventhorizon/articles/2b37b48365a08f
ttnyt8701
September 05, 2024
Tweet
Share
Other Decks in Programming
See All in Programming
Generative AI Use Cases JP (略称:GenU)奮闘記
hideg
1
290
みんなでプロポーザルを書いてみた
yuriko1211
0
260
macOS でできる リアルタイム動画像処理
biacco42
9
2.4k
Click-free releases & the making of a CLI app
oheyadam
2
110
Tauriでネイティブアプリを作りたい
tsucchinoko
0
370
初めてDefinitelyTypedにPRを出した話
syumai
0
410
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
7
7.7k
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
330
CSC509 Lecture 12
javiergs
PRO
0
160
as(型アサーション)を書く前にできること
marokanatani
10
2.6k
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
290
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Designing Experiences People Love
moore
138
23k
Designing for Performance
lara
604
68k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
860
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
Transcript
Prompt Cachingは本当に効果的なのか検証し てみた 2024.09.05
自己紹介 WEB系エンジニア - Go言語 - Google Cloud X: @egtayu
目次 - Prompt Cacingとは? - 基本的な使い方 - 料金 - 仕様
- 検証してみた - まとめ
Prompt Cachingとは? 2024.8.15 Anthropic APIに「Prompt Caching」機能が追加 コンテキストをキャッシュできるようになった コストを最大90%、応答遅延を最大85%削減(※ドキュメントより)
サポートモデル ※パブリックベータ版 Claude 3.5 Sonnet Claude 3 Haiku Claude 3 Opus
基本的な使い方 cache_controlブロックを追加する。 パラメータ先頭からcache_controlブロックまで キャッシュされる。 👆 キャッシュから読み込むとコストと応答 速度が改善される!
料金 キャッシュ書き込み:入力トークンの 125% キャッシュ読み込み: 入力トークンの10% 出力トークンは通常通り 👉 入力トークンに対するコストが改善される
仕様 - 最小トークン数 - キャッシュできるパラメータ - ブレークポイント - キャッシュの有効期限
仕様 最小トークン数 最小トークン数を超えないとキャッシュさ れません。
仕様 キャッシュできるパラメータ tools system messages 上記順番でキャッシュを参照
仕様 ブレークポイント cache_controlブロックは4つまで 4つを超えるとエラーになります🤦
仕様 キャッシュの有効期限 現在はephemeralパラメータのみがサポートされており、キャッシュの有効期限 は5分です。 キャッシュにアクセスが無いまま5分経過した場合に削除されます。 ※キャッシュにアクセスがあった場合、期限は更新されます。 将来的には、長時間の有効期限に対応する可能性があるかもしれません。
検証してみた - 応答遅延削減の検証 キャッシュの有無による応答速度を比較 - コスト削減効果の検証 キャッシュの有無によるトークンのコスト削減効果を検証
キャッシュの有無による応答速度を比較 - 使用するモデルは Claude 3 Haiku - システムプロンプトに187,336トークンの小説を入力し、小説のタイトルを答 えさせる ※Context
windowの最大値は200,000トークン 応答遅延削減の検証
応答遅延削減の検証
応答遅延削減の検証
応答遅延削減の検証 応答速度の有意差は確認できず、、、🤦 - Claude 3 Haikuは応答速度がmodelの中で一番速いため、キャッシュによる 差が顕著に現れなかった可能性 - 質問内容が本文全体を参照するようなケースでは、結果が異なった可能性
コスト削減効果の検証 キャッシュの有無によるトークンのコスト削減効果を検証 - 使用するモデルは Claude 3 Haiku - 5000トークンのシステムプロンプトを伴うマルチターンの会話で、トークン数を 追跡
- トークン数を料金比に直して、キャッシュの有無で何%コストを削減できるか検 証
コスト削減効果の検証
コスト削減効果の検証 キャッシュありの結果を料金表に基づき、入力トークンを基準にキャッシュ書き込みを1.25倍、 キャッシュ読み込みを0.1倍としてトークン数を料金比で計算
コスト削減効果の検証 入力トークンのコストを基準にしたトークン数で比較してコスト削減率を算出
コスト削減効果の検証
コスト削減効果の検証 1ターン目にはコストが増加するが、2ターン目以降はコスト削減が見られ、10ター ン目には77%のコストが削減された。 ターンが進むにつれてコスト削減効果は向上し、最終的には90%近いコスト削減に 達することが予測できる。
まとめ 応答遅延の削減 Claude 3 Haikuにおいて、応答速度の向上に関して有意な差は確認でき なかった コスト削減 入力トークンに対して、大幅なコスト削減効果が確認できた
まとめ 以下のようなケースでPrompt Cacingの効果を実感できることが期待でき ます。 1. 長文コンテンツの参照:ドキュメント、書籍や論文の内容をプロンプト に埋め込んでの参照 2. 会話エージェント: 詳細な指示セット、長時間の会話やツール使用で
の反復的なAPI呼び出しによるトークンコストを削減 3. コーディングアシスタント: 長いコードスニペットでのQ&A …etc
最後に 本スライドの内容をより詳しく記事にまとめました。 他のモデルでの検証なども更新予定です。 https://zenn.dev/eventhorizon/articles/2b37b48365a08f
参考 https://www.anthropic.com/news/prompt-caching https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching https://github.com/anthropics/anthropic-cookbook/blob/main/misc/prompt_caching. ipynb