模型部署概览
模型部署(Model Deployment)是把训练好的模型变成生产可用形态的过程——在服务器上提供推理服务(Inference Service),或打包到边缘设备(Edge Device)、手机等端侧环境运行。训练只解决「模型准不准」,部署才解决「用户能不能用上」:延迟多低、吞吐多高、显存/内存占多少、成本几何,这些都是部署阶段要回答的问题。
对初学者来说,一个常见的认知落差是:一个在 Jupyter Notebook 里跑通的模型,距离一个 7×24 小时稳定运行、能扛住并发请求的服务,中间还有很长的路要走。本分类就是要补上这一段。
本分类围绕四篇文章展开:
- CV 模型部署:计算机视觉模型的落地路径。讲解 PyTorch → ONNX → TensorRT/OpenVINO 的转换链路,量化(Quantization)加速,以及在 Jetson 等嵌入式平台上的部署实践。
- LLM 模型部署:大语言模型(LLM)的推理服务。对比 vLLM、Ollama、llama.cpp、TensorRT-LLM 等主流方案,分别适用于什么规模与场景。
- 量化与加速:让模型更快更省的核心技术。涵盖 AWQ/GPTQ/FP16/INT8 等量化方法,以及 Continuous Batching、PagedAttention 等推理优化机制。
- GPU 与多卡:多 GPU 环境下的并行推理。介绍 CUDA/NCCL 基础,以及张量并行(TP)、数据并行(DP)、流水线并行(PP)三种并行策略。
部署路线怎么选
Section titled “部署路线怎么选”部署方案没有「最好」,只有「最合适」。可以从两个维度判断:部署在哪里、部署什么类型的模型。
| 场景 | 典型硬件 | CV 模型方案 | LLM 方案 |
|---|---|---|---|
| 服务器 GPU | 数据中心 GPU(A100/4090 等) | ONNX Runtime / TensorRT | vLLM / TensorRT-LLM |
| 边缘设备 | Jetson、工业盒子 | TensorRT / OpenVINO | llama.cpp(小模型) |
| 端侧 / 本地 | 手机、笔记本、无 GPU 环境 | NCNN / Core ML | Ollama / llama.cpp |
几条经验法则:
- 先明确约束:延迟要求、并发量、显存/内存上限、预算,这些约束会自动筛掉大部分选项。
- CV 模型优先走格式转换链路:PyTorch → ONNX → 目标平台推理引擎,这是最通用的路径。
- LLM 部署先估显存:参数量 × 精度字节数是下限,量化(如 INT8/INT4)可以把门槛降一半以上。
- 端侧跑 LLM 选小模型:7B 量级以下的模型配合量化,才能在消费级硬件上获得可用速度。
模型部署与站内其他分类联系紧密,推荐配合阅读:
建议的学习顺序:先读 CV 模型部署 或 LLM 模型部署(按你当前的方向选),再读 量化与加速 深入优化手段,最后用 GPU 与多卡 补齐多卡并行知识。