vLLM 部署 Qwen3.6-27B

flyfish

一、vLLM 运行基础环境

Ubuntu 22.04.5 LTS           
Driver Version: 560.35.05      
CUDA Version: 12.6  
Python 3.10.12
NVIDIA-SMI 560.35.05   
torch                                    2.10.0+cu126
torchaudio                               2.10.0+cu126
torchvision                              0.25.0+cu126
transformers                             5.14.1
vllm                                     0.19.1

对应的cuda

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-6

二、Python 3.10 虚拟环境创建、激活与退出

安装 venv 模块

sudo apt update && sudo apt install python3.10-venv

1. 创建虚拟环境

在指定目录下创建独立虚拟环境(示例命名为 vllm-env,可自定义):

python3.10 -m venv vllm-env

执行后会在当前目录生成 vllm-env 文件夹,包含独立的 Python 解释器、pip 和包安装目录。

2. 激活虚拟环境

source vllm-env/bin/activate

激活成功后,终端命令行前缀会出现 (vllm-env) 标识,此时所有 python/pip 操作仅作用于该虚拟环境,不会影响系统全局 Python。

3. 退出虚拟环境

deactivate

执行后回到系统默认 Python 环境。

三、vllm指定版本安装

pip install vllm==0.19.1 --extra-index-url https://download.pytorch.org/whl/cu126

快速克隆环境

  1. 安装克隆工具
    可以直接安装到系统 Python,或者在原环境中安装:
# 系统级安装(推荐,全局可用)
pip install virtualenv-clone

如果执行命令提示找不到,可改用 python3 -m virtualenv-clone 调用。

  1. 一键克隆虚拟环境
    命令格式:virtualenv-clone 原环境路径 新环境路径
virtualenv-clone ./vllm-env ./vllm-env-new

四、启动 Qwen3.6-27

命令

vllm serve /media/model/qwen/Qwen3.6-27B \
  --tensor-parallel-size 8 \
  --gpu-memory-utilization 0.7 \
  --max-model-len 32768 \
  --max-num-seqs 8 \
  --dtype float16 \
  --enable-prefix-caching \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen-27b \
  --trust-remote-code

参数含义详解

按功能分为 5 类逐一说明:

模型基础配置
参数 含义说明
/media/model/qwen/Qwen3.6-27B 本地模型权重的存放路径,vLLM 从该目录加载模型文件
--trust-remote-code 信任并执行模型目录中的自定义代码。
多卡并行与显存控制
参数 含义说明
--tensor-parallel-size 8 张量并行度,设置为 8 表示将模型权重按张量维度拆分到 8 张 GPU 上并行计算。
27B 参数量的模型单卡通常无法容纳,通过张量并行降低单卡显存占用;数值必须 ≤ 机器可用 GPU 数量
--gpu-memory-utilization 0.7 单卡显存利用率上限,取值范围 0~1。
此处 0.7 表示 vLLM 最多占用单卡 70% 的显存,剩余 30% 留给 CUDA 上下文、系统开销等,避免显存溢出(OOM);显存紧张时可适当调低
推理上下文与并发配置
参数 含义说明
--max-model-len 32768 最大上下文长度(单位:token),即单条请求「输入+输出」的总 token 上限。
不能超过模型原生支持的上下文窗口,此处设置为 32K
--max-num-seqs 8 最大并发序列数,即服务端同时处理的请求(序列)最大数量。
数值越高并发能力越强,但 KV 缓存显存占用也越高;此处限制为 8,适配低并发、长上下文的场景
精度与性能优化
参数 含义说明
--dtype float16 模型计算与权重的数据精度,使用半精度浮点数(FP16)。
--enable-prefix-caching 启用前缀缓存(Automatic Prefix Caching)
自动缓存相同的前缀内容(如系统提示词、公共上下文),后续请求遇到相同前缀时直接复用 KV 缓存,大幅提升多轮对话、批量相同前缀请求的推理速度,降低显存开销
API 服务网络配置
参数 含义说明
--host 0.0.0.0 服务监听的 IP 地址。
0.0.0.0 表示允许所有 IP 访问(局域网/公网均可调用);若仅本地使用,可改为 127.0.0.1
--port 8000 服务监听的端口号,调用 API 时通过此端口访问,例如 http://服务器IP:8000/v1/chat/completions
--served-model-name qwen-27b 对外暴露的模型名称
调用 API 时 model 参数填写的值与此处一致即可,和本地模型路径无关,方便统一接口命名

纯文本模式+工具调用:以下命令跳过视觉编码器和多模态分析,以释放内存用于额外的 KV 缓存

vllm serve /media/model/qwen/Qwen3.6-27B \
  --tensor-parallel-size 8 \
  --gpu-memory-utilization 0.7 \
  --max-model-len 65536 \
  --max-num-seqs 8 \
  --dtype float16 \
  --enable-prefix-caching \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen-27b \
  --trust-remote-code \
  --language-model-only \
  --enable-auto-tool-choice \
  --tool-call-parser qwen3_coder \
  --reasoning-parser qwen3

1. --enable-auto-tool-choice

定位:工具调用功能的总开关,启用自动工具选择能力

开启后,模型可以根据用户提问的上下文,自主判断是直接回复文本,还是调用给定的工具/函数来补充信息后再作答,对应 OpenAI API 规范中的 tool_choice="auto" 模式。
这是 vLLM 实现原生工具调用的必填前置参数,开启后服务端才会处理请求中的 tools 字段,并对模型输出做工具调用检测。
强制依赖:使用该参数时必须同时搭配 --tool-call-parser 指定对应解析器,否则服务启动会报错——框架需要知道按哪种格式规则去解析模型输出的工具调用文本。

2. --tool-call-parser qwen3_coder

定位:指定 Qwen3 Coder 专属的工具调用格式解析器

不同模型家族的工具调用输出格式差异很大(有的是 JSON 代码块、有的是 XML 标签),解析器的作用是把模型生成的纯文本,提取并转换成标准的 tool_calls 结构化对象,供上层代码执行。

qwen3_coder 是专门适配 Qwen3 Coder 系列模型的解析器,该系列模型使用 XML 标签风格的工具调用格式,典型输出如下:

<tool_call>
<function=get_weather>
<parameter=city>济南</parameter>
<parameter=type>实时气温</parameter>
</function>
</tool_call>

该解析器支持流式增量解析、参数自动类型转换(字符串转数字/布尔值/对象),能精准提取函数名与参数,最终输出符合 OpenAI 协议标准的工具调用结构。

3. --reasoning-parser qwen3

定位:指定 Qwen3 专属的思考链解析器,分离推理过程与最终回答

Qwen3 系列具备内生思考能力:生成答案前会先输出一段被 ... 包裹的内部推理过程,再给出最终回复。该解析器负责对这两部分内容做结构化拆分。

具体作用:识别模型输出中的 边界标签,把思考过程提取到 API 响应的 reasoning_content(或 reasoning)字段,最终的正式回答保留在 content 字段中,实现二者分离。
业务价值:前端可以选择单独展示模型的思考步骤,也可以隐藏思考过程只展示最终答案,适配复杂推理、数学解题、代码排错等场景。
配套开关:可以通过 --default-chat-template-kwargs '{"enable_thinking": false}' 全局关闭思考模式,让模型直接输出最终答案,提升响应速度。

快速结束进程

|    0   N/A  N/A   2835758      C   VLLM::Worker_TP0                            57344MiB |
|    1   N/A  N/A   2835759      C   VLLM::Worker_TP1                            57344MiB |
|    2   N/A  N/A   2835760      C   VLLM::Worker_TP2                            57344MiB |
|    3   N/A  N/A   2835761      C   VLLM::Worker_TP3                            57344MiB |
|    4   N/A  N/A   2835762      C   VLLM::Worker_TP4                            57344MiB |
|    5   N/A  N/A   2835763      C   VLLM::Worker_TP5                            57344MiB |
|    6   N/A  N/A   2835764      C   VLLM::Worker_TP6                            57344MiB |
|    7   N/A  N/A   2835765      C   VLLM::Worker_TP7                            57344MiB |
pkill -9 -f "VLLM::Worker_TP"

详细的日志

vllm serve /media/model/qwen/Qwen3.6-27B \
  --tensor-parallel-size 8 \
  --gpu-memory-utilization 0.7 \
  --max-model-len 65536 \
  --max-num-seqs 8 \
  --dtype float16 \
  --enable-prefix-caching \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen-27b \
  --trust-remote-code \
  --language-model-only \
  --enable-auto-tool-choice \
  --tool-call-parser qwen3_coder \
  --enable-log-requests \
  --enable-log-outputs \
  --max-log-len 2000 \
  > /media/model/qwen/vllm_run.log 2>&1 &

控制台和日志都显示

vllm serve /media/model/qwen/Qwen3.6-27B \
  --tensor-parallel-size 8 \
  --gpu-memory-utilization 0.9 \
  --max-model-len 262144 \
  --max-num-seqs 8 \
  --dtype float16 \
  --enable-prefix-caching \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen-27b \
  --trust-remote-code \
  --language-model-only \
  --enable-auto-tool-choice \
  --tool-call-parser qwen3_coder \
  --enable-log-requests \
  --enable-log-outputs \
  --max-log-len 2000 \
2>&1 | tee /media/model/qwen/vllm_run.log

更多推荐