618ZXW

[vLLM Learning] インストール

vLLMは、大規模言語モデルの推論を高速化するために設計されたフレームワークです。KVキャッシュにおけるメモリの無駄をほぼゼロに抑え、メモリ管理のボトルネック問題を解決します。

vLLM の中国語ドキュメントとチュートリアルについては、こちらをご覧ください → https://vllm.hyper.ai/

vLLM は、事前にコンパイルされた C++ および CUDA (12.1) バイナリを含む Python ライブラリです。

環境依存性

  • オペレーティングシステム: Linux
  • Python: 3.8 - 3.12
  • GPU: コンピューティングパワー 7.0 以上 (例: V100、T4、RTX20xx、A100、L4、H100 など)

pipを使ってインストールする

pip を使用して vLLM をインストールできます。

 # (Recommended) Create a new conda environment. #(推荐)创建一个新的conda 环境。 conda create -n myenv python=3.10 -y conda activate myenv # Install vLLM with CUDA 12.1. # 安装带有CUDA 12.1 的vLLM。 pip install vllm

知らせ

現在、vLLMバイナリはデフォルトでCUDA 12.1とパブリックPyTorchディストリビューションを使用してコンパイルされています。また、CUDA 11.8とパブリックPyTorchディストリビューションを使用してコンパイルされたvLLMバイナリも提供しています。

 # Install vLLM with CUDA 11.8. # 安装带有CUDA 11.8 的vLLM。 export VLLM_VERSION=0.4.0 export PYTHON_VERSION=310 pip install https://github.com/vllm-project/vllm/releases/download/v${VLLM_VERSION}/vllm-${VLLM_VERSION}+cu118-cp${PYTHON_VERSION}-cp${PYTHON_VERSION}-manylinux1_x86_64.whl --extra-index-url https://download.pytorch.org/whl/cu118

パフォーマンスを向上させるため、vLLM は複数の CUDA カーネルをコンパイルする必要があります。残念ながら、このコンパイルにより、異なる CUDA バージョンと PyTorch バージョン間でバイナリの非互換性が生じます。これは、同じ PyTorch バージョンでもビルド構成が異なる場合に発生します。

そのため、vLLMは新しいconda環境を使用してインストールすることをお勧めします。CUDAのバージョンが異なる場合、または既存のPyTorch環境を使用する場合は、ソースコードからvLLMをビルドする必要があります。以下の手順をご覧ください。

知らせ

バージョンv0.5.3以降、vLLMはコミットごとにホイールのサブセット(Python 3.10、3.11、CUDA 12)もリリースしています。以下のコマンドでダウンロードできます。

 export VLLM_VERSION=0.5.4 # vLLM's main branch version is currently set to latest released tag export VLLM_VERSION=0.5.4 # vLLM 的主分支版本当前设置为最新发布的标签pip install https://vllm-wheels.s3.us-west-2.amazonaws.com/nightly/vllm-${VLLM_VERSION}-cp38-abi3-manylinux1_x86_64.whl # You can also access a specific commit # 你还可以访问特定的提交# export VLLM_COMMIT=... # 导出VLLM_COMMIT=... # pip install https://vllm-wheels.s3.us-west-2.amazonaws.com/${VLLM_COMMIT}/vllm-${VLLM_VERSION}-cp38-abi3-manylinux1_x86_64.whl

ソースコードからビルドする

ソースコードから vLLM をビルドしてインストールすることもできます。

 git clone https://github.com/vllm-project/vllm.git cd vllm pip install -e . # This may take 5-10 minutes. pip install -e 。 # 这可能需要5-10 分钟。

知らせ

vLLMはLinuxでのみ完全に動作しますが、他のシステム(macOSなど)でもビルドできます。このビルドは開発目的のみで、インポートを許可し、より便利な開発環境を提供します。これらのバイナリはコンパイルされていないため、Linux以外のシステムでは実行できません。以下のコマンドでビルドを作成できます。

 export VLLM_TARGET_DEVICE=empty pip install -e .

ヒント

ソースコードからのビルドには、かなりの量のコンパイル作業が必要です。ソースコードから複数回ビルドする場合は、ビルド結果をキャッシュすると便利です。例えば、`conda install ccache` または `apt install ccache` を使ってccacheをインストールできます。ビルドシステムは、`which ccache` コマンドがccacheバイナリを見つけると、自動的にそれを使用します。最初のビルド以降は、ビルド速度が大幅に向上します。

ヒント

システムの過負荷を避けるため、環境変数MAX_JOBSを使用して、同時に実行できるコンパイルタスクの数を制限することができます。例:

 export MAX_JOBS=6 pip install -e .

ヒント

vLLM のビルドで問題が発生した場合は、NVIDIA PyTorch Docker イメージを使用することをお勧めします。

 # Use `--ipc=host` to make sure the shared memory is large enough. # 使用`--ipc=host` 确保共享内存足够大。 docker run --gpus all -it --rm --ipc=host nvcr.io/nvidia/pytorch:23.10-py3

Dockerを使用しない場合は、CUDAツールキットのフルバージョンをインストールすることをお勧めします。公式ウェブサイトからダウンロードしてインストールできます。インストール後、環境変数CUDA_HOMEをCUDAツールキットのインストールパスに設定し、nvccコンパイラがPATHに含まれていることを確認してください。例:

 export CUDA_HOME=/usr/local/cuda export PATH="${CUDA_HOME}/bin:$PATH"

以下は、CUDA ツールキットが正しくインストールされていることを確認するための完全なチェックです。

 nvcc --version # verify that nvcc is in your PATH nvcc --version # 验证nvcc 是否在您的PATH 中${CUDA_HOME}/bin/nvcc --version # verify that nvcc is in your CUDA_HOME ${CUDA_HOME}/bin/nvcc --version # 验证nvcc 是否在您的CUDA_HOME 中