
AIを知りたい
Gemini APIにもキャッシュ機能があるって聞いたんですが、Claudeのとは違うんですか?

AIエンジニア
GeminiにはContext Cachingという機能があります。Claudeのプロンプトキャッシュと似たコンセプトですが、実装方法が異なります。

AIを知りたい
どう違うんですか?

AIエンジニア
Geminiの場合は明示的にキャッシュを作成して名前を付けて管理できます。有効期限も柔軟に設定可能です。
Context Cachingとは
Context Cachingは、Google Gemini APIの機能で、大量のコンテキスト(テキスト、画像、動画など)をキャッシュとして保存し、複数のリクエストで再利用できる仕組みです。特にマルチモーダルなコンテンツを繰り返し参照する場合に大幅なコスト削減と高速化を実現します。
Context Cachingの基本的な使い方

AIを知りたい
実際にどうやって使うんですか?

AIエンジニア
Pythonでの実装例を見てみましょう。
import google.generativeai as genai
import datetime
genai.configure(api_key="YOUR_API_KEY")
# キャッシュの作成
cache = genai.caching.CachedContent.create(
model="gemini-1.5-pro",
display_name="技術ドキュメント",
system_instruction="以下のドキュメントを参照して回答してください。",
contents=[
"大量の技術ドキュメントの内容をここに..."
],
ttl=datetime.timedelta(hours=1)
)
# キャッシュを使ってモデルを作成
model = genai.GenerativeModel.from_cached_content(cache)
# 複数のクエリでキャッシュを再利用
response1 = model.generate_content("APIの使い方を教えて")
response2 = model.generate_content("エラーハンドリングについて教えて")
Claude Prompt CachingとGemini Context Cachingの比較

AIを知りたい
ClaudeとGeminiのキャッシュ機能の違いを教えてください!

AIエンジニア
特徴をまとめて比較しましょう。
| 項目 | Claude Prompt Caching | Gemini Context Caching |
|---|---|---|
| 作成方法 | リクエスト内でcache_controlを指定 | 明示的にキャッシュオブジェクトを作成 |
| 有効期限 | 最終使用から5分 | カスタム設定可能(分〜時間) |
| 対応コンテンツ | テキスト | テキスト・画像・動画・音声 |
| コスト削減率 | 最大90% | 最大75% |
| 最小トークン数 | 1024トークン | 32,768トークン |
| 管理方法 | 自動(暗黙的) | 明示的(一覧・削除可能) |
マルチモーダルキャッシュの活用

AIを知りたい
動画もキャッシュできるんですか?

AIエンジニア
はい!Geminiの大きな強みはマルチモーダルコンテンツのキャッシュです。長時間の動画を一度キャッシュすれば、その内容について何度でも質問できます。
# 動画コンテンツのキャッシュ
video_file = genai.upload_file("training_video.mp4")
cache = genai.caching.CachedContent.create(
model="gemini-1.5-pro",
display_name="トレーニング動画",
contents=[video_file],
ttl=datetime.timedelta(hours=2)
)
model = genai.GenerativeModel.from_cached_content(cache)
response = model.generate_content("この動画の要約を作成して")
コスト最適化のポイント

AIを知りたい
どういうときにキャッシュを使うべきですか?

AIエンジニア
コスト対効果を考えて判断しましょう。
| ユースケース | 推奨度 | 理由 |
|---|---|---|
| 大量ドキュメントへの複数質問 | ★★★ | キャッシュのコスト回収が容易 |
| 動画・音声分析の繰り返し | ★★★ | アップロード時間も節約 |
| チャットボットの固定知識 | ★★☆ | TTL管理が必要 |
| 一回限りの質問 | ★☆☆ | キャッシュ作成コストが無駄 |

AIを知りたい
使い分けが大事なんですね!

AIエンジニア
その通りです。繰り返し同じコンテキストを使う場合にキャッシュは絶大な効果を発揮します。プロジェクトの特性に合わせて選択してください!
