主题
7.3 vLLM 生产级部署
Ollama 适合个人开发,vLLM 适合生产环境——支持并发、量化、多卡,吞吐量是 Ollama 的 5-10 倍。
这一节在讲什么?
Ollama 简单易用,但它不适合生产环境——它不支持并发请求、不支持量化、不支持多卡并行。vLLM 是专门为生产环境设计的 LLM 推理引擎——支持 Continuous Batching、Flash Attention、多卡并行、AWQ/GPTQ 量化。这一节我们学习用 vLLM 部署 DeepSeek 模型,实现生产级的推理服务。
安装 vLLM
bash
# 安装 vLLM(需要 CUDA 12.1+)
pip install vllm启动推理服务
bash
# 单卡部署蒸馏模型
python -m vllm.entrypoints.openai.api_server \
--model deepseek-ai/DeepSeek-R1-Distill-Qwen-7B \
--tensor-parallel-size 1 \
--max-model-len 32768 \
--host 0.0.0.0 \
--port 8000启动后,vLLM 提供兼容 OpenAI 格式的 API:
python
from openai import OpenAI
client = OpenAI(
api_key="vllm",
base_url="http://localhost:8000/v1"
)
response = client.chat.completions.create(
model="deepseek-ai/DeepSeek-R1-Distill-Qwen-7B",
messages=[{"role": "user", "content": "写一个快速排序"}]
)多卡部署
bash
# 2 卡并行
python -m vllm.entrypoints.openai.api_server \
--model deepseek-ai/DeepSeek-R1-Distill-Qwen-32B \
--tensor-parallel-size 2 \
--max-model-len 32768
# 4 卡并行
python -m vllm.entrypoints.openai.api_server \
--model deepseek-ai/DeepSeek-R1-Distill-Llama-70B \
--tensor-parallel-size 4 \
--max-model-len 16384--tensor-parallel-size 控制 GPU 并行数量——模型参数会被均匀分配到多张 GPU 上,推理速度随 GPU 数量线性提升。
量化部署
量化可以大幅降低显存需求,牺牲少量精度换取更低的硬件成本:
bash
# AWQ 4-bit 量化(显存需求降低约 70%)
python -m vllm.entrypoints.openai.api_server \
--model deepseek-ai/DeepSeek-R1-Distill-Qwen-7B-AWQ \
--quantization awq \
--max-model-len 32768性能优化
| 优化技术 | 说明 | 效果 |
|---|---|---|
| Flash Attention | 优化的注意力计算 | 推理速度提升 20-30% |
| Continuous Batching | 动态批处理 | 吞吐量提升 2-3 倍 |
| KV Cache | 缓存注意力键值 | 减少重复计算 |
| AWQ/GPTQ 量化 | 降低精度减少显存 | 显存需求降低 60-70% |
常见误区
误区一:vLLM 只能部署蒸馏模型
vLLM 也能部署满血版 671B,但需要 8 卡 H100 级别的硬件。对于普通企业,蒸馏模型 + vLLM 是更实际的选择。
误区二:量化会严重降低质量
AWQ 4-bit 量化的质量损失通常不到 1%——在大多数场景下可以忽略不计。但如果你需要最高精度(如数学证明),建议使用 FP16 不量化。
误区三:vLLM 跟 Ollama 一样简单
vLLM 的配置比 Ollama 复杂——需要选择并行策略、量化方式、最大上下文长度等。但它提供了 Ollama 无法比拟的生产级能力:并发、量化、多卡、监控。
误区四:vLLM 不需要 GPU
vLLM 必须使用 GPU——它不支持 CPU-only 推理。如果你没有 GPU,用 Ollama 的 CPU 模式。
小结
这一节我们学习了用 vLLM 部署 DeepSeek:单卡部署蒸馏模型、多卡并行(--tensor-parallel-size)、AWQ/GPTQ 量化降低显存需求。vLLM 适合生产环境——支持并发、量化、多卡,吞吐量远超 Ollama。下一章我们进入生产化与成本优化。