安装¶
有三种方法可以运行 vLLM Intel® Gaudi® 硬件插件
- 使用 Docker Compose:最简单的方法,无需构建镜像,仅在 Ubuntu 1.22 及更高版本中支持。有关更多信息和详细说明,请参阅 快速入门指南。
- 使用 Dockerfile:允许使用提供的 Dockerfile 构建包含 Intel® Gaudi® 软件套件的容器。此选项仅在 Ubuntu 上支持。
- 从源代码构建:允许通过从源代码构建,直接在您的 Intel® Gaudi® 机器上安装和运行 vLLM。它支持作为标准安装和使用 NIXL 的增强型设置。
本指南将介绍如何从源代码和使用 Dockerfile 运行 vLLM Intel® Gaudi® 硬件插件。
要求¶
在开始之前,请确保您的环境满足以下要求
- Python 3.10
- Intel® Gaudi® 2 或 3 AI 加速器
- Intel® Gaudi® 软件版本 1.22.2 或更高版本
此外,请确保 Gaudi 执行环境已正确设置。如果尚未设置,请使用 Gaudi 安装指南中的说明完成设置。
使用 Dockerfile 运行 vLLM Intel® Gaudi® 硬件插件¶
使用以下命令通过 Dockerfile 设置包含最新 Intel® Gaudi® 软件套件的容器。
$ docker build -f .cd/Dockerfile.ubuntu.pytorch.vllm -t vllm-hpu-env .
$ docker run -it --runtime=habana -e HABANA_VISIBLE_DEVICES=all -e OMPI_MCA_btl_vader_single_copy_mechanism=none --cap-add=sys_nice --net=host --entrypoint='' --rm vllm-hpu-env
提示
如果您遇到以下错误:docker: Error response from daemon: Unknown runtime specified habana.,请参阅 安装驱动程序和软件 中的“安装可选软件包”部分,以及 Docker 安装 中的“配置容器运行时”部分。请确保已安装 habanalabs-container-runtime 包,并且已注册 habana 容器运行时。
为了在 HPU 上获得最佳性能,请遵循 优化训练平台指南中概述的方法。
从源代码构建 vLLM Intel® Gaudi® 硬件插件¶
有两种方法可以从源代码安装 vLLM Intel® Gaudi® 硬件插件:用于典型用途的标准安装,以及使用 NIXL 进行的增强型设置,以优化大规模或分布式推理的性能。
标准插件部署¶
-
验证 Intel Gaudi 软件是否已正确安装。
$ hl-smi # verify that hl-smi is in your PATH and each Gaudi accelerator is visible $ apt list --installed | grep habana # verify that habanalabs-firmware-tools, habanalabs-graph, habanalabs-rdma-core, habanalabs-thunk and habanalabs-container-runtime are installed $ pip list | grep habana # verify that habana-torch-plugin, habana-torch-dataloader, habana-pyhlml and habana-media-loader are installed $ pip list | grep neural # verify that neural-compressor is installed有关验证的更多信息,请参阅 系统验证和最终测试。
-
按照以下代码示例运行 Intel® Gaudi® 仓库中的最新 Docker 镜像。请确保提供您的 vLLM Intel® Gaudi® 硬件插件、操作系统和 PyTorch 的版本。根据 支持矩阵,确保这些版本是受支持的。
docker pull vault.habana.ai/gaudi-docker/1.22.2/ubuntu22.04/habanalabs/pytorch-installer-2.7.1:latest docker run -it --runtime=habana -e HABANA_VISIBLE_DEVICES=all -e OMPI_MCA_btl_vader_single_copy_mechanism=none --cap-add=sys_nice --net=host --ipc=host vault.habana.ai/gaudi-docker/1.22.2/ubuntu22.04/habanalabs/pytorch-installer-2.7.1:latest有关更多信息,请参阅 Intel Gaudi 文档。
-
获取最新经验证的 vLLM commit。虽然 vLLM Intel® Gaudi® 硬件插件会跟随最新的 vLLM commits,但上游 API 更新可能会引入兼容性问题。已保存的 commit 经过了彻底的验证。
git clone https://github.com/vllm-project/vllm-gaudi cd vllm-gaudi export VLLM_COMMIT_HASH=$(git show "origin/vllm/last-good-commit-for-vllm-gaudi:VLLM_STABLE_COMMIT" 2>/dev/null) cd .. -
使用
pip安装 vLLM 或 从源代码构建它。# Build vLLM from source for empty platform, reusing existing torch installation git clone https://github.com/vllm-project/vllm cd vllm git checkout $VLLM_COMMIT_HASH pip install -r <(sed '/^torch/d' requirements/build.txt) VLLM_TARGET_DEVICE=empty pip install --no-build-isolation -e . cd .. -
从源代码安装 vLLM Intel® Gaudi® 硬件插件。
cd vllm-gaudi pip install -e . cd ..
为了在 HPU 上获得最佳性能,请遵循 优化训练平台指南中概述的方法。
使用 NIXL 进行插件部署¶
验证 Intel Gaudi 软件是否已正确安装。
$ hl-smi # verify that hl-smi is in your PATH and each Gaudi accelerator is visible
$ apt list --installed | grep habana # verify that habanalabs-firmware-tools, habanalabs-graph, habanalabs-rdma-core, habanalabs-thunk and habanalabs-container-runtime are installed
$ pip list | grep habana # verify that habana-torch-plugin, habana-torch-dataloader, habana-pyhlml and habana-media-loader are installed
$ pip list | grep neural # verify that neural-compressor is installed
For more information about verification, see [System Verification and Final Tests](https://docs.habana.ai/en/latest/Installation_Guide/System_Verification_and_Final_Tests.html).
Docker 文件部署¶
通过 Docker 文件安装 vLLM Intel® Gaudi® 硬件插件和 NIXL
git clone https://github.com/vllm-project/vllm-gaudi
docker build -t ubuntu.pytorch.vllm.nixl.latest \
-f vllm-gaudi/.cd/Dockerfile.ubuntu.pytorch.vllm.nixl.latest vllm-gaudi
docker run -it --rm --runtime=habana \
--name=ubuntu.pytorch.vllm.nixl.latest \
--network=host \
-e HABANA_VISIBLE_DEVICES=all \
ubuntu.pytorch.vllm.nixl.latest /bin/bash
使用 NIXL 从源代码构建插件¶
-
获取最新经验证的 vLLM commit。虽然 vLLM Intel® Gaudi® 硬件插件会跟随最新的 vLLM commits,但上游 API 更新可能会引入兼容性问题。已保存的 commit 经过了彻底的验证。
git clone https://github.com/vllm-project/vllm-gaudi cd vllm-gaudi export VLLM_COMMIT_HASH=$(git show "origin/vllm/last-good-commit-for-vllm-gaudi:VLLM_STABLE_COMMIT" 2>/dev/null) -
为裸机平台从源代码构建 vLLM,重用现有的 torch 安装。
cd .. git clone https://github.com/vllm-project/vllm cd vllm git checkout $VLLM_COMMIT_HASH pip install -r <(sed '/^torch/d' requirements/build.txt) VLLM_TARGET_DEVICE=empty pip install --no-build-isolation -e . cd .. -
从源代码安装 vLLM Intel® Gaudi® 硬件插件。
cd vllm-gaudi pip install -e . -
构建 NIXL。
python install_nixl.py
为了在 HPU 上获得最佳性能,请遵循 优化训练平台指南中概述的方法。