Repolode
zilliztech

zilliztech/GPTCache

LLMへのクエリを意味的にキャッシュし、類似する質問への回答を再利用してAPIコストと応答時間を削減するライブラリです。

スター
8,213
フォーク
597
未解決の Issue
100
最終コミット
先月

これは何?

GPTCacheは、大規模言語モデルのAPIレスポンスをキャッシュするPythonライブラリです。完全に一致するプロンプトだけを照合するのではなく、クエリをembeddingに変換し、ベクトルストアから意味的に類似する過去の質問を検索します。近い質問が見つかれば、保存済みの回答を返します。これにより、似たリクエストが多く寄せられるアプリケーションで、API呼び出しの繰り返しやトークン消費、応答時間を削減できます。

ライブラリはモジュール式で、各コンポーネントを差し替えられます。LLMアダプター(OpenAI、LangChain、Llama.cpp、Dollyなど)、embedding生成器(ONNX、OpenAI、Cohere、Hugging Face、SentenceTransformersなど)、キャッシュストレージ(SQLite、PostgreSQL、MySQL、DuckDB、DynamoDBなど)、ベクトルストア(Milvus、Zilliz Cloud、FAISS、Chroma、PGVector、Qdrant、Weaviateなど)、LRU、LFU、FIFOといった削除ポリシーに対応しています。また、Dockerのサーバーイメージも提供されており、あらゆる言語のアプリケーションからネットワーク経由でキャッシュを利用できます。

プロジェクトは現在も活発に開発されており、リリースによってAPIが変更される可能性があります。READMEによると、新しいLLM APIの形式はアダプターに追加されなくなっており、独自の連携にはgetおよびset APIの利用が推奨されています。

主な機能

  • 01embeddingとベクトル検索によるクエリの意味的な照合に対応し、文字列の完全一致だけに依存しません。
  • 02OpenAI ChatCompletionやLangChainとの連携を含む、差し替え可能なLLMアダプターを備えています。
  • 03SQLite、PostgreSQL、MySQL、DynamoDBなど複数のストレージバックエンドに対応しています。
  • 04Milvus、FAISS、Chroma、Qdrant、Weaviateなどのベクトルストアを利用できます。
  • 05Redisまたはmemcachedによる分散キャッシュに対応し、水平スケールする環境で利用できます。
  • 06あらゆる言語のアプリケーションからキャッシュを利用できるサーバー用Dockerイメージを提供しています。

ユースケース

  • 似た質問が多く寄せられるチャットボットで、OpenAIなどのLLM API利用料を削減する。
  • 過去の回答を再利用して、LangChainやLlamaIndexアプリケーションの応答を高速化する。
  • 実行のたびに実際のモデルを呼び出すことなく、LLMアプリケーションをローカルでテストする。
  • Redisを使って、複数のサービスレプリカ間で意味的なキャッシュを共有する。

クイックスタート

  1. 1

    PyPIからパッケージをインストールする

    pip install gptcache
  2. 2

    既存のOpenAIコードでキャッシュを初期化する

使う前に知っておきたいこと

  • プロジェクトの開発が急速に進んでいるため、APIはいつでも変更される可能性があります。
  • 新しいLLM APIやモデルへの対応は追加されなくなりました。READMEでは、代わりにgetおよびset APIの使用が推奨されています。
  • Python 3.8.1以降が必要です。

トピック

よくある質問

GPTCache とは?
LLMへのクエリを意味的にキャッシュし、類似する質問への回答を再利用してAPIコストと応答時間を削減するライブラリです。 GPTCacheは、大規模言語モデルのAPIレスポンスをキャッシュするPythonライブラリです。完全に一致するプロンプトだけを照合するのではなく、クエリをembeddingに変換し、ベクトルストアから意味的に類似する過去の質問を検索します。近い質問が見つかれば、保存済みの回答を返します。これにより、似たリクエストが多く寄せられるアプリケーションで、API呼び出しの繰り返しやトークン消費、応答時間を削減できます。
GPTCache は無料で使えますか?ライセンスは?
GPTCache は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
GPTCache は今もメンテナンスされていますか?
半年以内に更新あり。GPTCache の最終コミットは 2026年9月22日 です。
GPTCache は何に使えますか?
似た質問が多く寄せられるチャットボットで、OpenAIなどのLLM API利用料を削減する。 過去の回答を再利用して、LangChainやLlamaIndexアプリケーションの応答を高速化する。 実行のたびに実際のモデルを呼び出すことなく、LLMアプリケーションをローカルでテストする。 Redisを使って、複数のサービスレプリカ間で意味的なキャッシュを共有する。
GPTCache のインストール方法は?
PyPIからパッケージをインストールする: pip install gptcache 既存のOpenAIコードでキャッシュを初期化する
GPTCache はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/zilliztech/GPTCache

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト