【vLLM 教程】使用 TPU 安装

vLLM 是一款专为大语言模型推理加速而设计的框架,实现了 KV 缓存内存几乎零浪费,解决了内存管理瓶颈问题。

更多 vLLM 中文文档及教程可访问 →vllm.hyper.ai/

vLLM 使用 PyTorch XLA 支持 Google Cloud TPU。

依赖环境

  • Google Cloud TPU VM(单主机和多主机)
  • TPU 版本: v5e、v5p、v4
  • Python: 3.10

安装选项:

  1. href="vllm.hyper.ai/docs/gettin...">使用Dockerfile.tpu构建 Docker 镜像
  2. 从源代码构建

使用Dockerfile.tpu 构建 Docker 镜像

Dockerfile.tpu 用于构建具有 TPU 支持的 docker 镜像。

erlang 复制代码
docker build -f Dockerfile.tpu -t vllm-tpu .

您可以使用以下命令运行 docker 镜像:

css 复制代码
# Make sure to add `--privileged --net host --shm-size=16G`.

# 确保添加 `--privileged --net host --shm-size=16G`。

docker run --privileged --net host --shm-size=16G -it vllm-tpu

从源代码构建

您还可以从源代码构建并安装 TPU 后端。

首先,安装依赖:

bash 复制代码
# (Recommended) Create a new conda environment.
#(推荐)创建一个新的 conda 环境。

conda create -n myenv python=3.10 -y
conda activate myenv

# Clean up the existing torch and torch-xla packages.
# 清理现有的 torch 和 torch-xla 包。

pip uninstall torch torch-xla -y

# Install PyTorch and PyTorch XLA.
# 安装 PyTorch 和 PyTorch XLA。

export DATE="20240828"
export TORCH_VERSION="2.5.0"
pip install https://storage.googleapis.com/pytorch-xla-releases/wheels/tpuvm/torch-${TORCH_VERSION}.dev${DATE}-cp310-cp310-linux_x86_64.whl
pip install https://storage.googleapis.com/pytorch-xla-releases/wheels/tpuvm/torch_xla-${TORCH_VERSION}.dev${DATE}-cp310-cp310-linux_x86_64.whl

# Install JAX and Pallas.
# 安装 JAX 和 Pallas。

pip install torch_xla[tpu] -f https://storage.googleapis.com/libtpu-releases/index.html
pip install torch_xla[pallas] -f https://storage.googleapis.com/jax-releases/jax_nightly_releases.html -f https://storage.googleapis.com/jax-releases/jaxlib_nightly_releases.html

# Install other build dependencies.
# 安装其他构建依赖项。

pip install -r requirements-tpu.txt

下一步,从源代码构建 vLLM。这只需要几秒钟:

ini 复制代码
VLLM_TARGET_DEVICE="tpu" python setup.py develop

注意

由于 TPU 依赖于需要静态形状的 XLA,因此 vLLM 会将可能的输入形状进行分桶处理,并为每个不同的形状编译 XLA 图。第一次运行的编译时间可能需要 20~30 分钟。不过由于 XLA 图会缓存在磁盘中(默认在VLLM_XLA_CACHE_PATH~/.cache/vllm/xla_cache 中),之后的编译时间会减少到大约 5 分钟。

提示

如果您遇到以下错误:

python 复制代码
from torch._C import *  # noqa: F403

ImportError: libopenblas.so.0: cannot open shared object file: No such file or directory

请使用以下命令安装 OpenBLAS:

csharp 复制代码
sudo apt-get install libopenblas-base libopenmpi-dev libomp-dev
相关推荐
北京耐用通信1 分钟前
耐达讯自动化Profibus总线光纤中继器:破解石油化工分析仪器通讯难题
网络·人工智能·科技·物联网·网络协议·自动化·信息与通信
人工智能AI技术2 分钟前
GPT-5.2-Codex实战:用AI编程1小时完成分布式系统开发,附提示词模板
人工智能
香草泡芙2 分钟前
AI Agent 深度解析:原理、架构与未来应用浪潮
人工智能·深度学习·机器学习
桓峰基因3 分钟前
桓峰基因临床数据分析及机器学习预测模型构建教程
人工智能·机器学习·数据挖掘·数据分析
俊哥V4 分钟前
[本周深度看点]英伟达与物理 AI 的“ChatGPT 时刻”——从虚拟认知到物理世界理解的技术跃迁
人工智能·英伟达
阿里-于怀6 分钟前
AgentScope AutoContextMemory:告别 Agent 上下文焦虑
android·java·数据库·agentscope
数据库那些事儿9 分钟前
从极速复制“死了么”APP,看AI编程时代的技术选型
数据库
aloha_78913 分钟前
langchain4j如何使用mcp
java·人工智能·python·langchain
岁岁种桃花儿14 分钟前
MySQL知识汇总:讲一讲MySQL中Select语句的执行顺序
数据库·mysql·database
yunhuibin14 分钟前
CNN基础学习
人工智能·python·深度学习·神经网络