AWS Lambda + ElastiCache による 3... ノート

AWS Lambda + ElastiCache による 3 層キャッシュパイプラインで Amazon Bedrock コストを削減

著者は、特に繰り返し行われるユーザーからのクエリにおいて、AI搭載アプリケーションでAmazon Bedrockを使用するコストについて論じています。彼らは、ElastiCache (Redis) を利用した、単一のAWS Lambda関数内に構築された3層のキャッシングパイプラインを提示しています。最初の層は、完全に重複した質問に対してハッシュベースのキャッシングを採用し、最も高速な取得を提供します。2番目の層は、プロンプトをベクトルに変換し、キャッシュされたベクトルと比較して言い換えられた質問を捕捉するために、セマンティック類似性を使用します。3番目の層は、プロンプト圧縮を実装し、Bedrock呼び出しが必要な場合にトークン使用量を削減するために不要な単語を削除します。Lambda関数のハンドラは、各キャッシュ層を順番にチェックし、ミスの場合にのみBedrockに進み、その後応答とプロンプトのベクトルを保存します。テストでは、このパイプラインが不要なBedrock呼び出しを効果的に削減することが示されています。このパターンは、クエリ量が多く、質問が類似しており、プロンプトが冗長な場合に最も効果的であり、保存された埋め込みに対するベクトル検索とCloudWatchメトリクスを組み込むことでパフォーマンスが最適化されます。著者は、コストを最適化するために、ハッシュキャッシングから始め、次にセマンティック層と圧縮層を段階的に統合することを推奨しています。このアプローチは、Bedrockの呼び出しを最小限に抑えることで、大幅なコスト削減をもたらします。