【vLLM 学习】使用 TPU 安装

部署运行你感兴趣的模型镜像

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

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

vLLM 使用 PyTorch XLA 支持 Google Cloud TPU。

依赖环境

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

安装选项:

  1. href=“https://vllm.hyper.ai/docs/getting-started/installation-with-tpu#%E4%BD%BF%E7%94%A8-dockerfiletpu-%E6%9E%84%E5%BB%BA-docker-%E9%95%9C%E5%83%8F”>使用Dockerfile.tpu构建 Docker 镜像
  2. 从源代码构建

使用Dockerfile.tpu 构建 Docker 镜像

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

docker build -f Dockerfile.tpu -t vllm-tpu .

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

# 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 后端。

首先,安装依赖:

# (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。这只需要几秒钟:

VLLM_TARGET_DEVICE="tpu" python setup.py develop

注意

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

提示

如果您遇到以下错误:

from torch._C import *  # noqa: F403

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

请使用以下命令安装 OpenBLAS:

sudo apt-get install libopenblas-base libopenmpi-dev libomp-dev

您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

### VLLM 与 Ollama 的特性与性能比较 VLLM(Vector Large Language Models)和 Ollama 是两种不同的工具或框架,分别专注于大规模语言模型的推理优化和服务部署。以下是两者在特性与性能上的详细对比: #### 1. **架构设计** VLLM 是一个高效的开源库,用于加速大型语言模型的推理过程[^2]。它通过优化内存管理和并行计算,支持在单个 GPU 上运行多个大模型实例。相比之下,Ollama 是一个专为本地部署设计的工具,允许用户轻松下载、管理和运行多种预训练语言模型[^3]。 #### 2. **模型支持** VLLM 支持广泛的大型语言模型,包括但不限于 Llama 系列、GPT 系列等,并且能够动态调整推理参数以适应不同硬件配置[^4]。Ollama 则主要支持一组精选的模型,例如 Llama 和其他轻量级变体,专注于简化模型管理流程[^5]。 #### 3. **性能表现** VLLM 在推理速度和吞吐量方面表现出色,尤其适合需要高并发处理的应用场景。其多线程优化和批处理技术显著降低了延迟[^6]。Ollama 更注重用户体验和易用性,虽然其性能可能不如 VLLM 那样极致,但在资源受限的环境中仍能提供稳定的输出[^7]。 #### 4. **硬件需求** 由于 VLLM 的高性能目标,通常需要更强大的硬件支持,例如高端 GPU 或 TPU[^8]。而 Ollama 被设计为能够在普通消费级设备上运行,甚至支持 ARM 架构的处理器,如 Apple Silicon[^9]。 #### 5. **部署灵活性** VLLM 提供了丰富的 API 和可定制选项,适合开发者进行深度集成和二次开发[^10]。Ollama 则以简单易用为核心理念,提供了命令行界面和 RESTful API,方便非技术人员快速上手[^11]。 ```python # 示例:使用 VLLM 进行模型推理 from vllm import LLM, SamplingParams llm = LLM(model="meta-llama/Llama-2-7b") sampling_params = SamplingParams(temperature=0.8, top_p=0.95) outputs = llm.generate(["Hello, how are you?"], sampling_params=sampling_params) print(outputs[0].outputs[0].text) # 示例:使用 Ollama 进行模型推理 import subprocess response = subprocess.run( ["ollama", "run", "llama2", "Hello, how are you?"], capture_output=True, text=True ) print(response.stdout) ``` #### 6. **社区与支持** VLLM 拥有活跃的开源社区,定期更新文档和技术博客,帮助用户解决实际问题[^12]。Ollama 的社区规模相对较小,但其官方团队提供了详尽的教程和示例代码,降低了学习曲线[^13]。 ### 结论 总体而言,VLLM 更适合追求极致性能和灵活定制的开发者,而 Ollama 则是希望快速部署和测试模型的用户的理想选择。具体选用哪一种工具取决于项目需求、硬件条件以及团队的技术背景。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值