vLLM 全部8种部署方式(按从简单到企业级排序,附适用场景+最简命令)
目录
- 一、原生 Python 脚本部署
- 二、命令行直接启 API 服务(无代码)
- 三、官方 Docker 镜像部署(单机生产首选)
- 四、Docker Compose 部署
- 五、Kubernetes K8s 部署(企业级生产)
- 六、内网离线部署(无外网环境)
- 七、多机多卡分布式部署(70B+超大模型)
- 八、负载均衡+反向代理部署(高可用线上)
- 部署方式快速选型
一、原生 Python 脚本部署
适用:本地开发、调试、二次开发、嵌入RAG/Agent项目
特点:最灵活,可自定义推理逻辑、接入业务代码
最简用法
pipinstallvllmfromvllmimportLLM,SamplingParams llm=LLM(model="Qwen-7B-Chat",quantization="AWQ")sp=SamplingParams(max_tokens=512)outputs=llm.generate("你好",sampling_params=sp)print(outputs[0].outputs[0].text)二、命令行直接启 API 服务(无代码)
适用:快速搭OpenAI兼容接口、临时测试、内网小服务
特点:一条命令启动,自动暴露接口,无需写代码
最简命令
vllm serve Qwen-7B-Chat\--port8000\--quantizationawq\--tensor-parallel-size1自动兼容 OpenAI 接口: http://ip:8000/v1
三、官方 Docker 镜像部署(单机生产首选)
适用:单机GPU服务器、私有化部署、环境统一隔离
特点:不用装CUDA、不用配依赖,镜像自带运行环境
最简命令
dockerpull vllm/vllm-openai:latestdockerrun-d\--gpusall\-p8000:8000\-v/本地模型目录:/model\vllm/vllm-openai:latest\--model/model/Qwen-7B-Chat\--quantizationawq四、Docker Compose 部署
适用:本地多服务组合(vLLM+RAG+前端)、小团队运维
特点:配置文件管理,一键启停、方便迁移
docker-compose.yml 核心:
services:vllm:image:vllm/vllm-openai:latestports:-"8000:8000"volumes:-./model:/modeldeploy:resources:reservations:devices:-driver:nvidiacount:allcapabilities:[gpu]启动: docker-compose up -d
五、Kubernetes K8s 部署(企业级生产)
适用:线上高并发、多GPU节点、自动扩缩容、灰度发布
特点:集群化管理、故障自愈、负载均衡、多模型统一调度
核心能力
- 限制GPU显存/CPU资源
- 多副本负载均衡
- 自动根据QPS扩缩容
- 模型挂载共享存储
六、内网离线部署(无外网环境)
适用:政务、金融、涉密内网,不能联网
做法
- 外网下载vLLM镜像、模型权重、pip离线包
- 打包镜像导入内网Docker
- 内网本地加载模型,不走外网下载
核心:全程离线,模型和镜像本地存量
七、多机多卡分布式部署(70B+超大模型)
适用:70B、110B、MoE大模型,单张GPU放不下
特点:张量并行TP、流水线并行PP,拆分模型到多卡/多机
最简命令(单机多卡)
vllm serve Qwen-72B-Chat\--tensor-parallel-size4# 用4张GPU拆分模型多机需配置分布式主机地址、节点列表。
八、负载均衡+反向代理部署(高可用线上)
适用:多台vLLM实例集群、对外统一服务入口
架构:
用户请求 → Nginx/Ingress → 多台vLLM实例
能力:流量分发、限流、熔断、接口统一域名、隐藏后端实例
部署方式快速选型
- 个人测试/开发:Python脚本 / 命令行serve
- 单机私有化上线:Docker 部署
- 多服务组合本地运维:Docker Compose
- 超大模型70B+:多机多卡分布式
- 企业生产、高并发、集群:K8s + 负载均衡
- 涉密内网:离线镜像部署
