プロンプト・キャッシングでAIの効率を高めよう!この強力なテクニックを使って、レイテンシーを減らし、コストを削減し、AIアプリを拡張する方法を学びましょう。
プロンプトキャッシングは、推論プロセスを高速化するために、主にラージランゲージモデル(LLM)で使用される最適化手法である。これは、プロンプトの最初の部分の中間的な計算結果、具体的にはアテンションメカニズムにおけるキー・バリュー(KV)状態を保存することで機能する。新しいプロンプトが同じ開始(プレフィックス)を共有する場合、モデルは再計算する代わりに、キャッシュされたこれらの状態を再利用することができ、応答を生成するために必要な待ち時間と計算負荷を大幅に削減する。これは、会話型AIや繰り返しクエリを含むアプリケーションで特に効果的である。
LLMが文章や段落などの一連のテキストを処理するとき、コンテキストウィンドウ内の各トークンに対してアテンションスコアを計算する。これは、特に長いプロンプトの場合、計算コストのかかる部分である。KVキャッシングと呼ばれるプロンプトキャッシングの核となる考え方は、冗長な作業を避けることである。モデルがすでに「次の英文をフランス語に翻訳してください」というフレーズを処理した場合、その結果の内部状態を保存する。後に「次の英語テキストをフランス語に翻訳してください:'Hello, world!'」というプロンプトを受け取ると、最初のフレーズに対してキャッシュされた状態をロードし、新しい部分「'Hello, world!'」に対してのみ計算を開始することができる。これによって、後続の同様のリクエストに対するテキスト生成のプロセスがはるかに速くなる。vLLMのようなシステムは、このプロセスを効率的に管理し、全体のスループットを向上させるように設計されている。
プロンプト・キャッシングは、多くの実世界のAIシステムにとって重要な最適化であり、より速い応答を提供することでユーザー体験を向上させる。
プロンプト・キャッシングを他の関連技術と区別することは有益である:
プロンプトキャッシングは主にLLMと関連しているが、計算をキャッシュするという基本原理は、テキストプロンプトが他のモダリティと相互作用する複雑なマルチモーダルモデルにも適用できる可能性がある。しかし、Ultralytics YOLOのようなモデルを使用した物体検出のような標準的なコンピュータビジョン(CV)タスクでは、あまり一般的ではありません。Ultralytics HUBのようなプラットフォームは、AIモデルのデプロイと管理を合理化し、キャッシングのような最適化は、本番環境でのパフォーマンスにとって非常に重要です。