TensorRT-LLM教程:NVIDIA官方推理加速

📘 AI教程 💬 🔥 Trending 发布者: leakey
TensorRT-LLM教程:NVIDIA官方推理加速

🩺 摘要

vLLM已经很快了,但听说NVIDIA官方的TensorRT-LLM更快。怎么用?值不值得折腾?

📝 详情

TensorRT-LLM: NVIDIA官方LLM推理加速方案

性能提升实测数据

以Qwen3-7B在H100上的测试为例(batch_size=32, input=2048, output=512):

推理引擎 吞吐量(tokens/s) 延迟P95(ms) 显存占用
HuggingFace原生 680 4250 28GB
vLLM 1520 1850 22GB
TensorRT-LLM FP16 1890 1420 18GB
TensorRT-LLM FP8 2350 1080 14GB

TensorRT-LLM比vLLM快约25~55%, 显存占用减少20~35%.

完整部署流程

# 第一步: 拉取官方容器
docker run --gpus all -it --rm   -v $(pwd):/workspace   nvidia/cuda:12.4.0-devel-ubuntu22.04   bash

# 第二步: 安装TensorRT-LLM
pip install tensorrt_llm -U

# 第三步: 权重格式转换(从HF格式转成FT格式)
python3 examples/convert_checkpoint.py   --model_dir ./qwen3-7b-instruct   --output_dir ./converted   --dtype bfloat16

# 第四步: 构建TensorRT引擎
trtllm-build   --checkpoint_dir ./converted   --output_dir ./trt-engine   --max_batch_size 128   --max_input_len 8192   --max_output_len 2048   --gemm_plugin float16

# 第五步: 启动推理服务
python3 examples/run.py   --engine_dir ./trt-engine   --tokenizer_dir ./qwen3-7b-instruct   --max_output_len 1024

FP8量化配置详解

FP8量化是TensorRT-LLM最核心的加速手段, 比FP16快25%, 显存省30%:

# FP8量化命令
python3 examples/quantization/quantize.py   --model_dir ./qwen3-7b-instruct   --dtype float16   --qformat fp8   --output_dir ./trt-fp8-engine   --calib_size 512

注意: FP8需要H100/H200/B200/GB200等支持FP8的硬件. A100/A30仅支持INT8量化, 效果略逊.

一句话建议

TensorRT-LLM适合已上NVIDIA新卡/追求极致吞吐的场景. 普通用户用vLLM足够, 但如果你有H100/A100且需要压榨每一分性能, TensorRT-LLM能让你省一半GPU.