在受支持的 Linux GPU 环境中,可以用 vLLM 把 deepseek-ai/DeepSeek-R1-Distill-Qwen-7B 启动为 OpenAI 兼容服务。完整验收包含三步:服务启动日志没有加载错误,/v1/models 能看到确切模型名,/v1/chat/completions 能返回非空回答。只看到进程占用 GPU 还不能说明 API 可用。
适用环境和前提
先阅读 vLLM 的GPU 安装说明并核对当前受支持的操作系统、GPU、驱动和 Python 组合。本文以单机 Linux GPU 为例,没有覆盖 Windows 原生安装、CPU 推理、多机并行或生产鉴权。

- 能在终端执行 Python,并已进入独立虚拟环境。
- GPU 驱动可用,且资源足以加载所选模型和 KV Cache。
- 能访问 Hugging Face 模型文件;受限网络环境要先准备合规的本地缓存。
- 8000 端口没有被其他程序占用。
步骤一:安装 vLLM
vLLM 当前快速入门建议使用 uv 自动选择匹配的 PyTorch 后端。命令应以vLLM Quickstart的当前版本为准:
uv pip install vllm --torch-backend=auto
python -c "import vllm; print(vllm.__version__)"
第二条命令应输出版本号。如果导入失败或安装过程报告 CUDA/PyTorch 不匹配,先按 GPU 安装页修复环境,不能跳过错误继续启动服务。
步骤二:启动 7B 蒸馏模型服务
DeepSeek 的 DeepSeek-R1 官方仓库说明蒸馏模型可以按 Qwen 或 Llama 模型方式运行,并给出 vLLM 服务示例。这里把模型换成 7B,并先使用 4096 的最大上下文做连通性验证:
vllm serve deepseek-ai/DeepSeek-R1-Distill-Qwen-7B \
--dtype auto \
--max-model-len 4096
保持这个终端运行。首次启动需要下载权重,实际时间取决于网络和缓存。模型身份、底座和模型卡可在 DeepSeek-R1-Distill-Qwen-7B 官方模型页核对。
步骤三:检查模型列表和聊天接口
打开第二个终端,先确认服务公布的模型:
curl http://localhost:8000/v1/models
返回 JSON 中应出现 deepseek-ai/DeepSeek-R1-Distill-Qwen-7B。然后发送一次聊天请求:
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-ai/DeepSeek-R1-Distill-Qwen-7B",
"messages": [
{"role": "user", "content": "只回答一个数字:17 加 25 等于多少?"}
],
"temperature": 0.6,
"max_tokens": 128
}'
验收时检查 HTTP 请求成功、choices[0].message.content 非空、最终答案包含 42,并确认响应中的模型字段。该问题只验证接口和基本生成,不代表业务任务质量。
启动失败时按这个顺序排查
- 安装失败:记录 Python、vLLM、PyTorch、驱动与 GPU 型号,对照官方 GPU 安装矩阵。
- 下载失败:确认模型访问权限、网络、缓存目录和磁盘空间。
- 加载时显存不足:先关闭其他 GPU 任务并查看完整报错。缩短上下文可减少 KV Cache,但如果模型权重本身无法放入设备,仅缩短上下文不会解决根本问题。
- 模型列表可见但聊天失败:核对请求中的模型名必须与
/v1/models返回一致,并检查服务端日志。 - 回答异常重复:按 DeepSeek 官方使用建议检查采样参数,并用多条固定任务复测,不要用一次回答下结论。
从“能调用”到“可提供服务”还要检查什么
- 用固定评测集检查正确性和失败边界。
- 分别记录首字延迟、完整响应时间、并发吞吐量和峰值显存。
- 在对外开放前增加网络隔离、鉴权、请求大小限制、日志脱敏和超时处理。
- 固定模型修订版本和依赖版本,升级后重新执行同一评测集。
本文没有在你的 GPU 上安装 vLLM 或下载 7B 权重,也没有给出适用于所有硬件的显存和速度承诺。vLLM 与模型依赖更新较快;如果当前官方安装页与文中命令不同,应以官方页面为准,并把实际版本写入部署记录。
Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/29729.html