用 vLLM 启动一个大模型 API 服务,相当于把 DeepSeek 大模型变成一个可调用的接口(类似 OpenAI API)。
完整命令拆解(超清晰版)
bash
vllm serve /root/autodl-tmp/Models/DeepSeek-R1-0528/ \
--served-model-name DeepSeek-R1 \
--tensor-parallel-size 1 \
--gpu-memory-utilization 0.85 \
--max-model-len 8192 \
--host 127.0.0.1 \
--port 8000 \
--api-key magedu.com
每个参数详细解释
1. vllm serve
- 作用 :vLLM 的启动命令,启动模型 API 服务
- 意思:把模型跑起来,提供 HTTP 接口供外部调用(聊天、续写、问答)
2. /root/autodl-tmp/Models/DeepSeek-R1-0528/
- 作用 :模型文件所在的本地路径
- 必须是你下载好模型的文件夹
- 你这里就是 DeepSeek-R1 模型的存放位置
3. --served-model-name DeepSeek-R1
- 作用 :给启动的服务起一个模型名字
- 调用 API 时需要用这个名字
- 比如请求时要传:
model: "DeepSeek-R1"
4. --tensor-parallel-size 1
- 作用 :张量并行(多卡并行)
- 数字 = 使用几张 GPU
- 你写 1 = 只用 1 张显卡
- 如果是 2 张卡就写 2,以此类推
5. --gpu-memory-utilization 0.85
- 作用 :模型最多占用多少显存
- 0.85 = 最多用 85% 的显存
- 目的:
- 不把显存吃满
- 防止爆显存
- 留一点给系统
6. --max-model-len 8192
- 作用 :模型最大上下文长度
- 8192 = 最多支持 8192 个 token(约 6000 汉字)
- 超过会被截断
- 模型支持多长就设多长(DeepSeek-R1 支持很长,你这里设 8k)
7. --host 127.0.0.1
- 作用 :服务监听地址
- 127.0.0.1 = 只能本机访问
- 如果你想让外部机器访问,要改成
0.0.0.0
8. --port 8000
- 作用 :API 服务端口号
- 访问地址:
http://127.0.0.1:8000
9. --api-key magedu.com
- 作用 :API 密钥
- 调用接口时必须带上这个 key 才能访问
- 相当于密码,防止别人乱调用你的模型
一句话总结这条命令
用 vLLM 在本机 8000 端口启动 DeepSeek-R1 模型服务,单卡运行,最多占用 85% 显存,支持 8k 上下文,只有本机能访问,调用需要密钥 magedu.com。
最常用的修改建议(你可能会用到)
-
想让外部机器访问
--host 0.0.0.0 -
模型更长上下文
--max-model-len 32768 -
用多张显卡
--tensor-parallel-size 2
总结
vllm serve:启动模型 API- 路径:模型位置
served-model-name:API 用的模型名tensor-parallel-size:用几张卡gpu-memory-utilization:显存占用比例max-model-len:最大上下文长度host/port:访问地址api-key:接口密码
我用最直白、运维能听懂 的话,给你讲清楚:vLLM 多卡并行(tensor-parallel-size > 1)到底有什么用、好处是什么、什么时候必须开。
多卡并行(tensor-parallel-size=N)核心好处
-
能跑更大的模型
- 单卡装不下 7B/14B/32B/70B 模型
- 多卡 = 把模型切分到多张显卡上一起跑
- 你卡越多,能跑的模型越大
-
支持更长上下文(context length)
- 单卡显存有限,
max-model-len设不大 - 多卡 = 总显存变大
- 你可以开到 16k、32k、64k、128k 而不爆显存
- 单卡显存有限,
-
推理速度更快、吞吐量更高
- 多张卡同时计算
- 每秒生成 token 更多
- 并发用户多时,不卡、不排队
-
不爆显存,服务更稳
- 单卡跑大模型很容易 OOM
- 多卡分担压力,服务稳定很多
- 适合生产环境、长期挂服务
用你这条命令举例
你现在是:
--tensor-parallel-size 1
意思:只用 1 张卡。
如果改成:
--tensor-parallel-size 2
就变成:
- 模型分到 2 张 GPU 跑
- 总显存 ≈ 两张卡加起来
- 速度更快、能跑更大模型、更长上下文
什么时候必须开多卡?
- 模型 ≥ 14B,单卡跑不动
- 想跑 8k、16k、32k 上下文
- 要高并发(多人同时调用)
- 生产环境,要稳定不崩
极简总结
多卡并行 =
更大模型 + 更长上下文 + 更快速度 + 更稳服务