TensorRT-LLM部署Qwen3-14B

TensorRT-LLM部署

TensorRT-LLM 官方文档地址:https://nvidia.github.io/TensorRT-LLM/overview.html

下载相关的镜像

Nvidia官方镜像网址:https://catalog.ngc.nvidia.com/search?filters=resourceType|Container|container\&query=tensorrt-llm

Shell 复制代码
#下载Nvidia tensorRT-LLM 镜像,
docker pull nvcr.io/nvidia/tensorrt-llm/release:1.2.0rc4

注意:release版本镜像并没有将模型转换checkpoint的依赖环境,没有tensorrt-llm ,需要手动安装,或者找其他版本的镜像(本人测试了 devel 版本(nvcr.io/nvidia/tensorrt-llm/devel:1.2.0rc4)仍然没有,网络建议的build版本、engine版本没有找到,只能自己安装)

进入镜像,安装相关的的依赖:

Shell 复制代码
pip install tensorrt-llm
pip install transformers accelerate sentencepiece safetensors huggingface_hu
#如果你是 Qwen3 系列,还必须安装:
pip install tiktoken
pip install einops
#如果你是 LLaMA:
pip install protobuf
#如果你用 chatml / tokenizer 的特殊格式:
pip install sentencepiece

准备基础模型

Qwen3-14B: 官方镜像即可

Shell 复制代码
#存放目录:
/mnt/data/models/Qwen/Qwen3-14B

下载github转换脚本文件

TensorRT-LLM github地址: https://github.com/NVIDIA/TensorRT-LLM/blob/main/examples/models/core/qwen/convert_checkpoint.py

Shell 复制代码
#存放文件目录:
/mnt/data/models/tensor/convert_checkpoint.py

转换checkpoint:

Shell 复制代码
python convert_checkpoint.py \
--model_dir /mnt/data/models/Qwen/Qwen3-14B \ 
--output_dir /mnt/data/models/tensor/trt_checkpoints/qwen3-14b/fp16 \
--dtype fp16

转换模型checkpoint不需要GPU资源,但是当前只使用一个镜像自己完成所有的过程,则需要GPU资源

原则上不需要 GPU

  • 仅涉及权重 reshape/分片
  • 仅涉及 JSON 结构、配置生成
  • 不包含算子编译

构建engine文件:

Shell 复制代码
trtllm-build \
  --checkpoint_dir /mnt/data/models/tensor/trt_checkpoints/qwen3-14b/float16 \
  --output_dir /mnt/data/models/tensor/engine/qwen3-14b-engine \
  --gemm_plugin float16 \
  --max_batch_size 8 \
  --max_input_len 2048 \
  --max_seq_len 4096 \
  --kv_cache_type paged \
  --workers 16 \
  --log_level info

注意:

engine构建是需要GPU资源的,构建engine的GPU资源需要和部实际部署的GPU资源保持一致,

例如:部署使用单卡L20,则构建的engine必须使用相同的GPU资源,型号数量要相同

此步骤需要:

  • CUDA kernel 生成
  • TensorRT builder 编译
  • GPU 上的 profile 校准
  • Plugin 编译优化

必须使用 GPU

  • TensorRT engine 构建只能在 GPU 上完成
  • 并且必须使用目标 GPU(或者至少与目标 GPU 架构兼容)

为什么需要 GPU?

  • TensorRT 需要 GPU 的 Compute Capability 来生成最优 kernel
  • 不同显卡(A100 / H100 / L20 / RTX4090)生成的 Engine 不能通用!

部署engine:

Shell 复制代码
trtllm-serve serve /mnt/data/models/tensor/engine/qwen3-14b-engine \
--tokenizer  /mnt/data/models/Qwen/Qwen3-14B \ 
--host 0.0.0.0 \
--port 8000 \ 
--log_level info \
--backend tensorrt \
--tp_size 1 \
--max_batch_size 8 \
--max_seq_len 4096 
相关推荐
寒水馨1 天前
Windows下载、安装ollama-v0.32.1(附安装包OllamaSetup.exe)
windows·llm·大语言模型·llama·本地部署·ollama·模型运行
leeyi1 天前
流式传输引擎:Eino StreamReader 源码拆解(第61篇-E47)
llm·aigc·agent
AINative软件工程1 天前
LLM 应用的熔断降级工程实践:Circuit Breaker 不只是重试的升级版
后端·llm·ai编程
wangruofeng2 天前
opencodex 解锁 Codex 任意模型,一个本地代理打通 Claude/Kimi/GLM/DeepSeek
llm·github·openai
wangruofeng2 天前
姚顺雨长谈:在 Anthropic 和 Gemini 训练模型,英雄主义已经过时
llm·aigc
赵康2 天前
AI 写代码之后,Code Review 会议怎么开
ai·llm·skill
莫逸风2 天前
【AgentScope 2.0】 0. 学习指南
java·llm·agent·agentscope
谢白羽2 天前
vllm源码剖析14-vLLM 分布式推理-专家并行EP
笔记·分布式·llm·论文·vllm
Token炼金师2 天前
框架的擂台:LangChain、LlamaIndex、Dify、AutoGen 与 LangGraph —— 应用框架选型五局
人工智能·深度学习·llm