第2章:环境搭建与安装

说实话,环境搭建这一步,劝退了很多人。

我见过不少同学,模型代码写得飞起,结果卡在安装TensorRT-LLM这一步,一卡就是两三天。嗯,今天咱们就把这事彻底说清楚。

2.1 硬件要求

先聊硬件。TensorRT-LLM这玩意儿,说白了就是给NVIDIA显卡量身定做的。你用AMD的卡?那不好意思,真不行。

GPU型号

我个人习惯,把GPU分成三个梯队:

  • 第一梯队(推荐):NVIDIA A100、H100、H200。这些卡跑大模型,那叫一个丝滑。
  • 第二梯队(能用):RTX 4090、RTX 6000 Ada、L40S。做实验、跑小模型,完全够用。
  • 第三梯队(勉强):RTX 3090、RTX 4080。7B以下的模型还能玩玩,再大就吃力了。
⚠️ 注意:TensorRT-LLM目前不支持AMD、Intel、Apple Silicon。别问我为什么,生态就是这样。

显存要求

显存这东西,多多益善。我给大家一个参考:

模型规模 推荐显存 最低显存
7B 模型 24GB 16GB
13B 模型 40GB 24GB
70B 模型 160GB(多卡) 80GB(多卡)

你想想看,70B的模型,光加载权重就要140GB。单卡根本扛不住。所以多卡并行是常态。

驱动版本

驱动这块,我踩过坑。曾经有一次,我装了个最新的驱动,结果TensorRT-LLM死活不认。后来才发现,驱动版本太新反而有问题。

建议使用 NVIDIA Driver 535.154.05 或更新的稳定版。别追新,稳定第一。

2.2 软件依赖

软件依赖这块,版本匹配是重中之重。我列个表,你照着来就行。

软件 推荐版本 备注
CUDA 12.1 / 12.4 TensorRT-LLM 0.9.0+ 推荐12.4
cuDNN 8.9.7 必须匹配CUDA版本
Python 3.10.x 3.11也行,但3.10最稳
TensorRT 9.2.0 安装TensorRT-LLM时会自动处理
💡 我的建议:用CUDA 12.4 + cuDNN 8.9.7 + Python 3.10。这个组合我验证过无数次,最稳。

2.3 源码编译安装TensorRT-LLM

好,重头戏来了。源码编译,说白了就是自己动手做饭。虽然麻烦,但可控性最强。

第一步:准备环境

# 创建conda环境
conda create -n trt_llm python=3.10
conda activate trt_llm

# 安装基础依赖
pip install --upgrade pip
pip install setuptools wheel

第二步:克隆源码

git clone https://github.com/NVIDIA/TensorRT-LLM.git
cd TensorRT-LLM
git checkout v0.9.0  # 建议用稳定版

这里要注意,main分支是开发版,可能不稳定。我建议用tag版本,比如v0.9.0

第三步:编译安装

# 安装TensorRT-LLM
pip install --no-cache-dir --extra-index-url https://pypi.nvidia.com \
    -r requirements.txt

# 编译C++核心库
make -j$(nproc) release

# 安装Python包
pip install --no-cache-dir build/tensorrt_llm*.whl
⚠️ 注意:编译过程需要大量内存。我建议至少32GB内存,否则可能会OOM。我曾经在16GB的机器上编译,结果卡了整整两个小时,最后报错。血的教训。

第四步:验证安装

# 检查是否安装成功
python -c "import tensorrt_llm; print(tensorrt_llm.__version__)"

# 如果输出类似 "0.9.0",说明安装成功

2.4 验证安装是否成功

安装完了,怎么知道它真的能用?我一般跑三个测试:

  1. 导入测试:看能不能正常import
  2. 简单推理测试:跑一个最小的模型
  3. 性能测试:看吞吐量是否正常

简单推理测试

from tensorrt_llm import LLM

# 加载一个最小的模型
llm = LLM("gpt2")  # 124M参数,随便跑

# 推理
output = llm.generate("Hello, how are you?")
print(output)

如果这段代码能跑通,恭喜你,环境搭建成功了。

💡 小技巧:第一次跑的时候,TensorRT-LLM会做模型编译优化,可能会慢一点。别慌,这是正常的。第二次跑就快了。

2.5 知识体系总览

为了让你对整个环境搭建有个全局认识,我画了张图:

TensorRT-LLM 环境搭建知识体系 硬件层 GPU · 显存 · 驱动 软件层 CUDA · cuDNN · Python 编译层 源码编译 · 安装 验证层 导入测试 · 推理测试 常见问题与避坑指南 驱动版本不匹配 · 内存不足 · Python版本不对 · CUDA路径错误

这张图把整个环境搭建分成了四层:硬件层、软件层、编译层、验证层。每一层都环环相扣,缺一不可。

2.6 避坑指南

最后,分享几个我踩过的坑:

  • CUDA版本不匹配:我曾经在CUDA 11.8上折腾了两天,后来发现TensorRT-LLM 0.9.0根本不支持。换到12.4,十分钟搞定。
  • 磁盘空间不足:编译过程中会下载大量依赖,建议预留至少50GB空间。
  • 网络问题:如果下载慢,可以用国内镜像源。我个人习惯用清华源:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 权限问题:别用root装,容易搞乱系统。用conda环境最安全。

嗯,环境搭建这块,说难不难,说简单也不简单。关键是把版本对应好,一步一个脚印来。你按照我上面的步骤走,应该不会出大问题。


专注资料整理