DEV Community 日本語
フォロー
エージェントキャッシュ:ValkeyおよびRedis向けのマルチティアLLMキャッシュ
Agent-cache は、トークン使用量と実行時間を削減することで LLM オペレーションを最適化するように設計された 3 層キャッシュ ソリューションです。Valkey または Redis を使用して、LLM の応答、ツールの出力、およびセッションの状態をキャッシュします。アーキテクチャには、完全一致 LLM 応答キャッシュ、関数呼び出し結果のツール出力キャッシュ、およびエージェント チェックポイントのセッション状態キャッシュが含まれます。各層は異なる TTL 戦略を採用しており、LLM の応答は数時間、ツールの出力はより短い期間、セッション状態はアクティブなユーザー セッションに対してキャッシュされます。LLM の応答のキャッシュ キーには、プロンプト ハッシュとモデル パラメータが含まれますが、ツールの出力キーにはツール名と引数ハッシュが使用されます。システムは依存関係を追跡しないため、手動での無効化が必要です。これにより、Redis glob パターンを使用したターゲットを絞ったキャッシュ クリアが可能になります。Valkey/Redis が利用できない場合、agent-cache は正常な機能低下にデフォルト設定され、キャッシュをスキップしながら、ティアごとの設定で、迅速な障害処理またはローカル フォールバック オプションを許可します。OpenTelemetry や Prometheus などのオブザーバビリティ ツールが統合されており、キャッシュのパフォーマンスと正常性を監視します。ライブラリは、LangChain、LangGraph、および Vercel AI SDK 用のアダプターを提供し、各フレームワークのシリアライゼーションを処理します。Valkey または Redis を既に実行している環境向けに設計されており、スタンドアロン、Sentinel、およびクラスター デプロイメントをハッシュ タグでサポートし、効率的なキー分散を実現します。主なリスクには、古いツールの出力、キャッシュ キーの衝突の可能性、およびメモリの圧力があり、これらは短い TTL、包括的なキャッシュ キー、およびメモリ ポリシーによって軽減されます。再起動中のセッション状態の損失は、RDB スナップショットまたは AOF パーシステンスによって対処されます。Agent-cache は、トークン コストを制御し、既存の Redis インフラストラクチャを活用することを目的とした、繰り返しプロンプトまたはツール呼び出しを行うエージェントに役立ちます。ただし、外部の状態を変更するツール、キャッシュ ヒット率が低くなる可能性のある非常に動的なプロンプト、または完全一致よりもセマンティック類似性マッチングが必要な場合には適していません。このライブラリは、フレームワーク固有のキャッシュと汎用の Redis の間のギャップを効果的に埋め、エージェント ループとツールの動作が十分に理解されている場合に最も効果的に利用されます。