
vllm/vllm-openai 是 vLLM 高性能大模型推理框架的官方 Docker 容器镜像,由加州大学伯克利分校发起,专门用于快速部署兼容 OpenAI API 的大模型推理服务。该镜像将 vLLM 的高性能推理能力封装为标准的 OpenAI API 接口,开发者无需手动配置 vLLM 环境,即可快速启动支持 *** 同款接口(如 /v1/completions、/v1/chat/completions)的大模型推理服务,无缝替代 OpenAI 官方后端。
/v1/chat/completions、/v1/completions、/v1/embeddings 等接口借鉴操作系统「分页管理」思想,将大模型推理中的「键值缓存(KV Cache)」分割为固定大小的块,动态分配给不同请求,有效解决内存碎片问题。
优势:内存利用率提升 3-5 倍,可在相同显存下部署更大规模的模型或处理更多并发请求。
动态合并新请求到正在处理的批次中,避免传统静态批处理的资源闲置,实现请求队列的实时管理与调度。
优势:吞吐量可达传统推理引擎(如 HuggingFace Transformers)的 10-24 倍,显著提升 GPU 利用率。
硬件支持:
模型支持:
开发者无需手动安装 vLLM 依赖(如 CUDA、PyTorch),通过 Docker 拉取镜像后,仅需一条命令即可启动大模型服务:
bashdocker run --gpus all -p 8000:8000 vllm/vllm-openai:latest --model meta-llama/Llama-3-70b-chat-hf --api-server
企业或个人为降低 API 调用成本、保障数据隐私,将原有依赖 OpenAI 的应用切换为本地服务,直接复用原有 API 调用代码。
典型场景:AI 助手、内容生成工具、聊天机器人等应用。
在多租户、高请求量场景(如客服 AI、批量内容生成)中,利用该镜像的高性能特性(连续批处理、PagedAttention),在相同 GPU 资源下处理更多请求,降低延迟。
基于该镜像扩展自定义功能,例如通过 FROM vllm/vllm-openai:v0.7.3 构建定制镜像,升级 NCCL 版本解决通信稳定性问题,适配多节点分布式部署。
| 项目 | 要求 |
|---|---|
| 硬件 | NVIDIA GPU(推荐 A100/H100/V100,算力 ≥7.0),显存需满足模型要求 |
| 操作系统 | Linux(推荐 Ubuntu 20.04+),macOS(需 Docker Desktop + WSL2),Windows 需 WSL2+Docker |
| 容器工具 | Docker 19.03+,需安装 NVIDIA Container Runtime |
| 存储空间 | 建议预留 ≥50GB(镜像约 21GB + 模型文件) |
| 网络环境 | 首次使用需联网下载模型,建议***提升速度 |
bash# Ubuntu/Debian distribution=$(. /etc/os-release;echo $ID$VERSION_ID) curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \ sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \ sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list sudo apt-get update sudo apt-get install -y nvidia-container-toolkit sudo systemctl restart docker
bash# 检查 NVIDIA 驱动 nvidia-smi # 验证 Docker GPU 支持 docker run --rm --gpus all nvidia/cuda:12.0.0-base-ubuntu22.04 nvidia-smi
bash# 拉取最新版本 docker pull docker.xuanyuan.run/r/vllm/vllm-openai:latest # 拉取指定版本 docker pull docker.xuanyuan.run/r/vllm/vllm-openai:v0.7.3
注意:镜像约 21GB,拉取时需注意网络稳定性,建议使用镜像加速或***。
启动 Llama 3 70B 模型
bashdocker run -d \ --name vllm-openai \ --gpus all \ -p 8000:8000 \ xuanyuan.cloud/r/vllm/vllm-openai:latest \ --model meta-llama/Llama-3-70b-chat-hf \ --api-server
启动 Qwen 模型(支持量化)
bashdocker run -d \ --name vllm-qwen \ --gpus all \ -p 8000:8000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ xuanyuan.cloud/r/vllm/vllm-openai:latest \ --model Qwen/Qwen2.5-72B-Instruct-GPTQ-Int4 \ --quantization gptq \ --api-server
启动自定义模型(挂载本地模型)
bashdocker run -d \ --name vllm-custom \ --gpus all \ -p 8000:8000 \ -v /宿主机/模型路径:/models \ xuanyuan.cloud/r/vllm/vllm-openai:latest \ --model /models/your-model \ --api-server \ --host 0.0.0.0
| 参数 | 说明 | 示例 |
|---|---|---|
--model | 模型名称或路径(HuggingFace 模型 ID 或本地路径) | meta-llama/Llama-3-70b-chat-hf |
--api-server | 启动兼容 OpenAI API 的服务 | - |
--host | 服务监听地址 | 0.0.0.0(默认) |
--port | 服务端口 | 8000(默认) |
--quantization | 量化方案(awq/gptq/squeezellm/fp8) | gptq |
--tensor-parallel-size | 张量并行度(多 GPU) | 2(2 个 GPU) |
--dtype | 数据类型(auto/float16/bfloat16) | auto(默认) |
--max-model-len | 最大序列长度 | 8192 |
--gpu-memory-utilization | GPU 显存利用率 | 0.9(默认 0.9) |
bashcurl http://localhost:8000/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "meta-llama/Llama-3-70b-chat-hf", "messages": [ {"role": "user", "content": "你好,介绍一下 vLLM"} ], "temperature": 0.7, "max_tokens": 500 }'
bashcurl http://localhost:8000/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "meta-llama/Llama-3-70b-chat-hf", "messages": [ {"role": "user", "content": "写一首关于 AI 的诗"} ], "stream": true }'
pythonfrom openai import OpenAI # 指定 vLLM 服务的地址 client = OpenAI( api_key="EMPTY", # vLLM 不需要 API Key base_url="http://localhost:8000/v1" ) # 调用对话接口 response = client.chat.completions.create( model="meta-llama/Llama-3-70b-chat-hf", messages=[ {"role": "user", "content": "你好!"} ] ) print(response.choices[0].message.content)
只需修改 API 地址即可:
python# 原来使用 OpenAI client = OpenAI(api_key="your-openai-key") # 现在使用 vLLM 本地服务 client = OpenAI( api_key="EMPTY", base_url="http://localhost:8000/v1" )
使用多个 GPU 加速推理:
bashdocker run -d \ --name vllm-multi-gpu \ --gpus all \ -p 8000:8000 \ xuanyuan.cloud/r/vllm/vllm-openai:latest \ --model meta-llama/Llama-3-70b-chat-hf \ --tensor-parallel-size 2 \ --api-server
--tensor-parallel-size需等于 GPU 数量
bashdocker run -d \ --name vllm-optimized \ --gpus all \ -p 8000:8000 \ xuanyuan.cloud/r/vllm/vllm-openai:latest \ --model meta-llama/Llama-3-70b-chat-hf \ --gpu-memory-utilization 0.95 \ --max-model-len 16384 \ --api-server
使用 AWQ 量化(Automatic Weight Quantization):
bashdocker run -d \ --name vllm-quantized \ --gpus all \ -p 8000:8000 \ xuanyuan.cloud/r/vllm/vllm-openai:latest \ --model meta-llama/Llama-3-8B-Instruct-AWQ \ --quantization awq \ --api-server
bash# 查看容器运行状态 docker ps | grep vllm-openai # 查看日志 docker logs -f vllm-openai # 查看 GPU 使用情况 docker exec vllm-openai nvidia-smi
vLLM 提供内置的监控接口:
bash# 查看服务状态 curl http://localhost:8000/health # 查看模型信息 curl http://localhost:8000/v1/models
启用详细日志输出:
bashdocker run -d \ --name vllm-debug \ --gpus all \ -p 8000:8000 \ -e LOG_LEVEL=DEBUG \ xuanyuan.cloud/r/vllm/vllm-openai:latest \ --model meta-llama/Llama-3-70b-chat-hf \ --api-server
| 问题现象 | 可能原因 | 解决方案 |
|---|---|---|
| GPU 不可用或访问被拒绝 | 未安装 NVIDIA Container Runtime | 安装 nvidia-container-toolkit 并重启 Docker |
| 显存不足(OOM) | 模型过大或显存设置不合理 | 减小 --gpu-memory-utilization;使用量化模型;或减小 --max-model-len |
| 模型下载失败 | 网络问题或模型路径错误 | 使用***;检查模型名称是否正确;手动下载后挂载 |
| API 请求超时 | 显存不足或并发过高 | 调整 --max-num-seqs;增加显存利用率;使用多 GPU |
| 版本兼容性问题 | 镜像版本与模型不匹配 | 使用 v0.7.3 等稳定版本;参考官方兼容性文档 |
| Windows 无法运行 | 不支持 Windows 原生 | 使用 WSL2+Docker 或切换到 Linux 系统 |
| 多 GPU 不生效 | tensor-parallel-size 配置错误 | 确保 --tensor-parallel-size 等于可用 GPU 数量 |
如需定制镜像(如升级 NCCL 版本、添加自定义依赖),可基于官方镜像二次构建:
dockerfileFROM xuanyuan.cloud/r/vllm/vllm-openai:v0.7.3 # 安装额外依赖 RUN pip install your-package # 升级 NCCL 版本(如需要) RUN pip install --upgrade nccl # 设置工作目录 WORKDIR /workspace
构建并运行:
bash# 构建镜像 docker build -t vllm-custom:v0.7.3 . # 运行自定义镜像 docker run -d \ --name vllm-custom \ --gpus all \ -p 8000:8000 \ vllm-custom:v0.7.3 \ --model meta-llama/Llama-3-70b-chat-hf \ --api-server
注意:本镜像基于 vLLM 框架构建,需确保硬件环境满足要求(推荐 NVIDIA GPU 算力 ≥7.0)。首次使用建议从较小规模的模型开始测试(如 Llama 3 8B),确保环境配置正确后再部署大模型。
以下是 vllm/vllm-openai 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 版本下载页面。






探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务