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 [***] | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg curl -s -L [***] | \ sed 's#deb [***] [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] [***] | \ 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 xuanyuan.cloud/r/vllm/vllm-openai:latest # 拉取指定版本 docker pull xuanyuan.cloud/r/vllm/vllm-openai:v0.7.3
注意:镜像约 21GB,拉取时需注意网络稳定性,建议使用镜像加速或***。
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
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 *** \ --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),确保环境配置正确后再部署大模型。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429