
vLLM 部署 Qwen3.6-27Bflyfish一、vLLM 运行基础环境Ubuntu22.04.5 LTS Driver Version:560.35.05 CUDA Version:12.6Python3.10.12 NVIDIA-SMI560.35.05 torch2.10.0cu126 torchaudio2.10.0cu126 torchvision0.25.0cu126 transformers5.14.1 vllm0.19.1对应的cudawgethttps://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.debsudodpkg-icuda-keyring_1.1-1_all.debsudoapt-getupdatesudoapt-get-yinstallcuda-toolkit-12-6二、Python 3.10 虚拟环境创建、激活与退出安装 venv 模块sudoaptupdatesudoaptinstallpython3.10-venv1. 创建虚拟环境在指定目录下创建独立虚拟环境示例命名为vllm-env可自定义python3.10-mvenv vllm-env执行后会在当前目录生成vllm-env文件夹包含独立的 Python 解释器、pip 和包安装目录。2. 激活虚拟环境sourcevllm-env/bin/activate激活成功后终端命令行前缀会出现(vllm-env)标识此时所有python/pip操作仅作用于该虚拟环境不会影响系统全局 Python。3. 退出虚拟环境deactivate执行后回到系统默认 Python 环境。三、vllm指定版本安装pipinstallvllm0.19.1 --extra-index-url https://download.pytorch.org/whl/cu126快速克隆环境安装克隆工具可以直接安装到系统 Python或者在原环境中安装# 系统级安装推荐全局可用pipinstallvirtualenv-clone如果执行命令提示找不到可改用python3 -m virtualenv-clone调用。一键克隆虚拟环境命令格式virtualenv-clone 原环境路径 新环境路径virtualenv-clone ./vllm-env ./vllm-env-new四、启动 Qwen3.6-27命令vllm serve /media/model/qwen/Qwen3.6-27B\--tensor-parallel-size8\--gpu-memory-utilization0.7\--max-model-len32768\--max-num-seqs8\--dtypefloat16\--enable-prefix-caching\--host0.0.0.0\--port8000\--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-size8\--gpu-memory-utilization0.7\--max-model-len65536\--max-num-seqs8\--dtypefloat16\--enable-prefix-caching\--host0.0.0.0\--port8000\--served-model-name qwen-27b\--trust-remote-code\--language-model-only\--enable-auto-tool-choice\--tool-call-parser qwen3_coder\--reasoning-parser qwen31.--enable-auto-tool-choice定位工具调用功能的总开关启用自动工具选择能力开启后模型可以根据用户提问的上下文自主判断是直接回复文本还是调用给定的工具/函数来补充信息后再作答对应 OpenAI API 规范中的tool_choiceauto模式。这是 vLLM 实现原生工具调用的必填前置参数开启后服务端才会处理请求中的tools字段并对模型输出做工具调用检测。强制依赖使用该参数时必须同时搭配--tool-call-parser指定对应解析器否则服务启动会报错——框架需要知道按哪种格式规则去解析模型输出的工具调用文本。2.--tool-call-parser qwen3_coder定位指定 Qwen3 Coder 专属的工具调用格式解析器不同模型家族的工具调用输出格式差异很大有的是 JSON 代码块、有的是 XML 标签解析器的作用是把模型生成的纯文本提取并转换成标准的tool_calls结构化对象供上层代码执行。qwen3_coder是专门适配Qwen3 Coder 系列模型的解析器该系列模型使用 XML 标签风格的工具调用格式典型输出如下tool_callfunctionget_weather parametercity济南/parameterparametertype实时气温/parameter/function/tool_call该解析器支持流式增量解析、参数自动类型转换字符串转数字/布尔值/对象能精准提取函数名与参数最终输出符合 OpenAI 协议标准的工具调用结构。3.--reasoning-parser qwen3定位指定 Qwen3 专属的思考链解析器分离推理过程与最终回答Qwen3 系列具备内生思考能力生成答案前会先输出一段被...包裹的内部推理过程再给出最终回复。该解析器负责对这两部分内容做结构化拆分。具体作用识别模型输出中的和边界标签把思考过程提取到 API 响应的reasoning_content或reasoning字段最终的正式回答保留在content字段中实现二者分离。业务价值前端可以选择单独展示模型的思考步骤也可以隐藏思考过程只展示最终答案适配复杂推理、数学解题、代码排错等场景。配套开关可以通过--default-chat-template-kwargs {enable_thinking: false}全局关闭思考模式让模型直接输出最终答案提升响应速度。快速结束进程|0N/A N/A2835758C VLLM::Worker_TP0 57344MiB||1N/A N/A2835759C VLLM::Worker_TP1 57344MiB||2N/A N/A2835760C VLLM::Worker_TP2 57344MiB||3N/A N/A2835761C VLLM::Worker_TP3 57344MiB||4N/A N/A2835762C VLLM::Worker_TP4 57344MiB||5N/A N/A2835763C VLLM::Worker_TP5 57344MiB||6N/A N/A2835764C VLLM::Worker_TP6 57344MiB||7N/A N/A2835765C VLLM::Worker_TP7 57344MiB|pkill-9-fVLLM::Worker_TP