海外からのアクセス:www.kdjingpai.com
Ctrl + D このサイトをブックマークする

LMCacheは、大規模言語モデル(LLM)における推論の効率を改善するために設計された、オープンソースのキー・バリュー(KV)キャッシュ最適化ツールです。モデルの中間計算結果をキャッシュして再利用する(キー・バリュー・キャッシュ)ことで、推論時間とGPUリソース消費を大幅に削減します。 ブイエルエルエム 他の推論エンジンとシームレスに統合され、GPU、CPU、ディスクストレージをサポートし、多ラウンドQ&AやRAG(Retrieval Augmented Generation)などのシナリオに対応します。このプロジェクトは、Apache 2.0ライセンスの下、コミュニティ主導で進められており、エンタープライズレベルのAI推論最適化のために広く利用されています。

 

機能一覧

  • キー・バリュー・キャッシュの再利用LLMのキーと値のペアをキャッシュし、接頭辞のないテキストの再利用をサポート。
  • マルチストレージ・バックエンドのサポートGPU、CPU DRAM、ディスク、Redisなどのストレージをサポートし、メモリ制約に柔軟に対応。
  • vLLMとの統合vLLMへのシームレスなアクセスにより、推論レイテンシを3~10倍に最適化。
  • 分散キャッシュ複数のGPUやコンテナ環境での共有キャッシングをサポートし、大規模なデプロイメントを可能にします。
  • マルチモーダルサポート画像とテキストのキーと値のペアをキャッシュし、マルチモーダルモデル推論を最適化する。
  • ワークロード生成複数ラウンドのクイズやRAGなどのワークロードを生成し、パフォーマンスを検証するためのテストツールを提供する。
  • オープンソースコミュニティのサポートユーザーの貢献と交流を促進するために、文書、事例、コミュニティ・ミーティングを提供する。

ヘルプの使用

設置プロセス

LMCacheはインストールが簡単で、LinuxプラットフォームとNVIDIA GPU環境をサポートしています。以下は、公式ドキュメントとコミュニティの推奨に基づく、詳細なインストール手順です。

  1. 環境を整える::
    • システムがLinux、Pythonバージョン3.10以上、CUDAバージョン12.1以上であることを確認してください。
    • 仮想環境を作成するためにConda(Minicondaを推奨)をインストールする:
      conda create -n lmcache python=3.10
      conda activate lmcache
      
  2. クローン倉庫::
    • Gitを使ってLMCacheリポジトリをローカルにクローンする:
      git clone https://github.com/LMCache/LMCache.git
      cd LMCache
      
  3. LMCacheのインストール::
    • PyPI経由で最新の安定版をインストールする:
      pip install lmcache
      
    • または、最新のプレリリース版(実験的な機能が含まれている可能性があります)をインストールしてください:
      pip install --index-url https://pypi.org/simple --extra-index-url https://test.pypi.org/simple lmcache==0.2.2.dev57
      
    • ソースからインストールする必要がある場合:
      pip install -e .
      
  4. vLLMのインストール::
    • LMCacheはvLLMと一緒に使用する必要があるため、最新バージョンのvLLMをインストールしてください:
      pip install vllm
      
  5. インストールの確認::
    • LMCacheが正しくインストールされていることを確認する:
      python
      import lmcache
      from importlib.metadata import version
      print(version("lmcache"))
      

      出力されるのは、インストールのバージョン番号であるべきだ。 0.2.2.dev57.

  6. オプション:Dockerデプロイメント::
    • LMCacheは、vLLMを統合したビルド済みのDockerイメージを提供します:
      docker pull lmcache/lmcache:latest
      
    • Dockerコンテナを実行し、ドキュメントに従ってvLLMとLMCacheを設定する。

主要機能の使用

LMCacheの中核機能は、LLM推論を高速化するためにキー・バリュー・キャッシュを最適化することである。以下は、主な機能の詳細なハウツーガイドである。

1.キー・バリュー・キャッシュの再利用

LMCacheは、モデルのキー・バリュー・キャッシュ(KV Cache)を保存することで、同じテキストやコンテキストの繰り返し計算を回避します。ユーザーは、vLLMでLMCacheを有効にすることができます:

  • 環境変数の設定::
    export LMCACHE_USE_EXPERIMENTAL=True
    export LMCACHE_CHUNK_SIZE=256
    export LMCACHE_LOCAL_CPU=True
    export LMCACHE_MAX_LOCAL_CPU_SIZE=5.0
    

    これらの変数は、LMCacheが実験的な機能を使用し、ブロックごとに256トークンを使用し、CPUバックエンドを有効にし、CPUメモリを5GBに制限するように設定する。

  • vLLMインスタンスの実行::
    LMCacheは、vLLMの起動時に自動的にキーと値のペアをロードし、キャッシュします。サンプルコードです:

    from vllm import LLM
    from lmcache.integration.vllm.utils import ENGINE_NAME
    from vllm.config import KVTransferConfig
    ktc = KVTransferConfig(kv_connector="LMCacheConnector", kv_role="kv_both")
    llm = LLM(model="meta-llama/Meta-Llama-3.1-8B-Instruct", kv_transfer_config=ktc)
    

2.マルチストレージバックエンド

LMCacheは、GPU、CPU、ディスク、Redis上のキーバリューキャッシュの保存をサポートしています。ユーザーはハードウェアリソースに応じてストレージ方法を選択できます:

  • ローカル・ディスク・ストレージ::
    python3 -m lmcache_server.server localhost 9000 /path/to/disk
    

    これによりLMCacheサーバーが起動し、指定したディスク・パスにキャッシュが保存される。

  • Redisストレージ::
    Redisバックエンドを設定するには、ユーザー名とパスワードを設定する必要があります:

    export LMCACHE_REDIS_USERNAME=user
    export LMCACHE_REDIS_PASSWORD=pass
    

3.分散キャッシング

マルチGPUやコンテナ化された環境では、LMCacheはノード間の共有キャッシングをサポートします:

  • LMCacheサーバーを起動します:
    python3 -m lmcache_server.server localhost 9000 cpu
    
  • vLLMインスタンスがサーバーに接続できるように設定する。 disagg_vllm_launcher.sh 例

4.マルチモーダルサポート

LMCacheは、ハッシュ化された画像トークン(mm_hashes)を介してキーと値のペアをキャッシュすることで、視覚的なLLM推論を最適化するマルチモーダルモデルをサポートしています:

  • vLLMでマルチモーダルサポートを有効にするには、公式の例を参照してください。 LMCache-Examples 倉庫。

5.テストツール

LMCacheは、パフォーマンスを検証するためのワークロードを生成するテストツールを提供しています:

  • クローンテストウェアハウス:
    git clone https://github.com/LMCache/lmcache-tests.git
    cd lmcache-tests
    bash prepare_environment.sh
    
  • テストケースを実行する:
    python3 main.py tests/tests.py -f test_lmcache_local_cpu -o outputs/
    

    出力は outputs/test_lmcache_local_cpu.csv.

取り扱い上の注意

  • 環境検査CUDAとPythonのバージョンに互換性を持たせるため、Condaの管理環境を使用することを推奨します。
  • ログ監視検査 prefiller.logそしてdecoder.log 歌で応える proxy.log 問題をデバッグする。
  • 地域支援LMCacheのSlackに参加するか、隔週火曜日午前9時(PT)に開催されるコミュニティ・ミーティングに参加して、助けを求めてください。

アプリケーションシナリオ

  1. マルチキャスト質疑応答システム
    LMCacheは、複数ラウンドの対話シナリオを高速化するために、コンテキスト内のキーと値のペアをキャッシュします。ユーザーがチャットボットで連続した質問をすると、LMCacheは以前の計算結果を再利用して待ち時間を短縮する。
  2. 検索機能拡張ジェネレーション(RAG)
    ある ラグ このアプリケーションでは、LMCacheはドキュメントのキーと値のペアをキャッシュし、類似のクエリに素早く応答するため、インテリジェントなドキュメント検索や企業のナレッジベースに適している。
  3. マルチモーダルモデル推論
    視覚言語モデルの場合、LMCacheは画像とテキストのキーと値のペアをキャッシュし、GPUのメモリフットプリントを削減し、応答時間を改善します。
  4. 大規模分散配置
    マルチGPUまたはコンテナ化された環境では、LMCacheの分散キャッシング機能がノード間の共有をサポートし、エンタープライズグレードのAI推論を最適化します。

品質保証

  1. LMCacheはどのプラットフォームをサポートしていますか?
    現在、LinuxとNVIDIA GPU環境がサポートされており、WindowsはWSL経由で使用できる。
  2. vLLMとの統合は?
    とおす pip install lmcache vllmを有効にし、vLLM構成でLMCacheConnectorを有効にするには、公式サンプルコードを参照してください。
  3. プレフィックス以外のキャッシュはサポートされていますか?
    をサポートし、LMCacheは部分的な再計算技術を使用して、RAGワークロードで接頭辞のないテキストをキャッシュする。
  4. パフォーマンスの問題をデバッグするには?
    ログファイルを調べ、テストケースを実行し、レイテンシーとスループットを分析するためにCSVファイルを出力します。
0ブックマークに登録
0表彰される

おすすめ

AIツールが見つからない?こちらをお試しください!

キーワードを入力する アクセシビリティこのサイトのAIツールセクションは、このサイトにあるすべてのAIツールを素早く簡単に見つける方法です。

トップに戻る

ja日本語