基于 1Panel 部署 vLLM + Qwen3.6-27B 本地模型

基于 1Panel 部署 vLLM + Qwen3.6-27B 本地模型

一、背景

随着 AI Coding 在企业内网场景下的需求激增,越来越多的团队希望在内网环境中部署本地大模型,既保证代码和数据不出域,又获得高效的编程辅助能力。本文将详细介绍如何在一台服务器上,通过 1Panel 可视化部署 vLLM 推理引擎,并加载 Qwen3.6-27B 模型的全过程,同时详细解析每个核心配置参数的含义。


二、硬件及软件环境

本次使用的硬件服务器具体配置参见如下:

组件

规格

GPU

4× Intel Arc Pro B70(英特尔锐炫 Pro 系列)

显存(VRAM)

128 GB(4卡合计)

AI 算力

1468 TOPS(int8峰值)

CPU

Intel Xeon 系列(具体型号视批次)

系统内存

256 GB DDR5

系统盘

2 × 1 TB NVMe SSD(RAID1)

数据盘

4 × 8 TB SATA SSD

本次使用的软件环境

组件

版本/说明

操作系统

Ubuntu 22.04 LTS

1Panel

专业版/企业版

Docker

24.x

NVIDIA Container Toolkit

NVIDIA Container Toolkit

GPU 驱动

Intel GPU Driver

三、前置条件准备

在开始部署之前,先准备模型文件

3.1 检查 GPU 驱动

nvidia-smi

正常输出应显示 GPU 型号、驱动版本、CUDA 版本以及显存信息。

3.2 检查 Docker GPU 能力

docker run --rm --gpus all nvidia/cuda:12.4.1-base-ubuntu22.04 nvidia-smi

如果正常输出 nvidia-smi 信息,说明 Docker 已具备 GPU 运行能力。

3.3 准备模型文件

提前将 Qwen3.6-27B 模型文件下载到服务器本地目录,例如:

# 从 Hugging Face 下载(有外网条件时预下载好)
# 或从一体机预装存储中获取
ls /models/Qwen3.6-27B/

模型目录应包含以下关键文件:

  • config.json — 模型配置文件

  • tokenizer.json / tokenizer_config.json — 分词器文件

  • model-00001-of-XXXXX.safetensors — 分片模型权重文件

  • *.py 等相关代码文件


四、通过 1Panel 部署 vLLM

4.1 进入 vLLM 管理页面

打开 1Panel 面板,进入 AI → 模型 页面,切换到 vLLM 标签页,点击【创建】

4.2 填写部署参数

在弹出的表单中,按以下配置填写:

参数

填写值

说明

名称

Qwen3.6-27B

服务名称,用于列表展示和管理

版本

intel-0.14.0-b8.3.1

镜像

vllm的安装镜像

1Panel内置的vllm的安装镜像

端口

8000

输入vllm对外暴露的端口

模型目录

/models/Qwen3.6-27B

选择服务器上的下载好的模型目录

启动命令模版

B70-Qwen3.6-27B-FB8

选择启动命令模版

启动命令

见下方

核心推理参数

4.3 启动命令详解

这是最关键的部分。完整的启动命令:

--model /models/Qwen3.6-27B
--served-model-name Qwen3.6-27B
--port 8000
--quantization fp8
--gpu-memory-util 0.9
--max-num-batched-tokens 8192
--max-model-len 262144
--block-size 64
--dtype float16
--enforce-eager
--trust-remote-code
--disable-log-requests
--enable-prefix-caching
--enable-prompt-tokens-details
--enable-auto-tool-choice
--tool-call-parser qwen3_coder
--tensor-parallel-size 4

下面逐一解析每个参数的含义:

4.3.1 模型路径与标识

参数

说明

--model /models/Qwen3.6-27B

模型路径。 指定服务器上模型文件所在的目录路径,vLLM 会从该目录加载模型权重和配置文件

--served-model-name Qwen3.6-27B

API 暴露的模型名称。 调用 OpenAI 兼容接口时,model 字段使用的名称。可以自定义,不影响实际加载的模型

4.3.2 服务端口

参数

说明

--port 8000

API 监听端口。 vLLM 默认使用 8000。

4.3.3 量化与精度

参数

说明

--quantization fp8

FP8 量化。 使用 8 位浮点数对模型权重进行量化,相比 FP16 可以减少约 50% 的显存占用,同时推理速度更快。一体机 RTX Pro 5000 支持硬件 FP8 加速,这是推荐的量化方式

--dtype float16

计算精度。 使用 FP16(半精度浮点)进行计算。auto 会根据模型自动选择,但对于量化模型通常显式指定为 float16。结合 FP8 量化,权重存为 FP8,但计算核心仍以 FP16 精度运行

4.3.4 GPU 资源管理

参数

说明

--gpu-memory-util 0.9

GPU 显存利用率。 限制 vLLM 最多使用 90% 的 GPU 显存。预留 10% 给其他系统进程或 KV cache 的临时扩展。值越高(如 0.95)可利用更多显存,但风险也越大;值过低(如 0.8)可能限制 batch size

--tensor-parallel-size 4

张量并行度。 将模型切分到 4 块 GPU 上并行推理。Qwen3.6-27B 单卡无法完整加载(27B FP16 约需 54GB),通过张量并行将模型分布到多卡上。一体机配置了多块 RTX Pro 5000 时,推荐设为 GPU 卡数

4.3.5 上下文长度与批处理

参数

说明

--max-model-len 262144

最大上下文长度。256K tokens,这是 Qwen3.6 的原生支持长度。超过此长度的请求会被拒绝。更大的上下文意味着能处理更长的代码文件和对话历史,但会显著增加显存占用

--max-num-batched-tokens 8192

单批最大 token 数。 控制一次推理批处理的总 token 上限。8192 意味着如果多个请求的总 token 数不超过 8192,vLLM 会将它们合并为一次推理,大幅提升吞吐量。对于偏实时交互的 AI 编程场景,8192 是个不错的平衡点

--block-size 64

KV cache 块大小。 vLLM 使用 PagedAttention 管理 KV cache,将 cache 分成固定大小的块。64 表示每块 64 个 token。块越小(如 16)内存利用率越高但管理开销也大;块越大(如 128)管理效率高但可能浪费内存。64 是推荐平衡值

4.3.6 推理优化

参数

说明

--enforce-eager

强制 Eager 模式。 禁用 CUDA Graph 优化,每个算子直接执行。虽然会略降低推理速度,但能提高兼容性,避免某些模型结构在多卡并行时的 Graph 编译错误。初次部署建议开启,稳定后可尝试去掉以提升性能

--enable-prefix-caching

前缀缓存。 自动缓存 Prompt 中的公共前缀(如系统提示词、对话历史的前面部分)。当多个请求共享相同前缀时,可以直接复用 KV cache,显著减少重复计算。在 AI 编程场景中效果非常好

4.3.6 调试与日志

参数

说明

--disable-log-requests

关闭请求日志。 生产环境中关闭每个请求的详细日志输出,减少日志量,避免敏感信息泄露

--enable-prompt-tokens-details

启用在 API 响应中包含详细 token 信息。 返回结果中会包含 prompt 和 completion 的 token 数量明细,便于排查问题和调优

4.3.7 工具调用(Function Calling)

参数

说明

--enable-auto-tool-choice

自动工具选择。 启用后模型可以自动决定是否调用外部工具(function calling),无需手动指定。对于 AI 编程场景,模型可以自主决定调用代码搜索、文件读写等工具

--tool-call-parser qwen3_coder

工具调用解析器。 使用 Qwen3.6 专有的 Tool Call 解析器,确保模型输出的工具调用格式能被正确解析。不同的模型系列需要不同的解析器

4.4 其它部署参数

设置项

设置说明

说明

模型账号

同步到模型账号

容器地址适合智能体容器调用;127.0.0.1、本机 IP 或自定义地址适合 AI 网关或外部服务调用

访问地址

访问地址的配置

包含容器地址、本地访问地址、默认访问地址以及自定地址等

容器名称

可为空

定义部署的容器名称,如:1Panel-vllm-JGS0

端口外部访问

勾选

允许端口外部访问会放开防火墙端口

绑定主机 IP

留空

默认监听所有网卡

重启规则

always

容器异常退出后自动重启

CPU/内存限制

留空

不限制,让 vLLM 充分利用硬件资源

4.5 点击确认

填写完成后,点击「确认」开始创建。1Panel 会在后台执行创建任务,包括拉取镜像、挂载模型目录、启动容器等。

等待任务完成后,在 vLLM 列表中可以看到服务状态变为「已启动」。


4.6 模型账号添加

进入模型账号点击创建,输入名称、选择模型供应商vLLM,输入任意字符作为API Key,同时输入当前模型部署对外访问的服务器IP地址以及端口号即可,API 类型选择openai-completions。参见如下图所示:

五、验证服务

5.1 部署OpenClaw选择 vLLM 模型

进入AI模块的智能体模块,点击创建,选择OpenClaw ,输入基本参数后,选择模型供应商vLLM、vLLM的模型账号以及对应本地模型 Qwen 3.6-27B ,的具体参见如下图所示:

5.2 基于本地模型OpenClaw对话试用


5.3 效果呈现

推箱子游戏:大概 1 分钟左右展示出成果。

俄罗斯方块:用时大概 2-3 分钟

六、常用参数调优建议

场景一:追求吞吐量(多人并发)

--max-num-batched-tokens 16384 \
--gpu-memory-util 0.95 \
--block-size 128

场景二:追求低延迟(单人交互)

--max-num-seqs 1 \
--max-num-batched-tokens 4096 \
--block-size 32

场景三:支持超长上下文(代码仓库级)

--max-model-len 524288 \
--block-size 64 \
--enable-prefix-caching

⚠️ 超长上下文会显著增加显存占用,请确保 GPU 显存充足。


七、常见问题

Q1: 启动后报 "Out of memory"

原因: Qwen3.6-27B 量化后仍需较大显存,FP8 量化约需 16-18GB/卡。

解决:

  • 降低 --gpu-memory-util 到 0.8

  • 增加 --tensor-parallel-size 使用更多 GPU 卡

  • 确认没有其他进程占用 GPU 显存

Q2: 模型加载速度很慢

原因: 首次加载需要从磁盘读取模型文件并初始化 KV cache。

解决:

  • 确保模型文件放在 SSD 上

  • 首次加载后后续重启会快很多

  • 使用 --enforce-eager 可跳过 Graph 编译时间

Q3: 工具调用格式解析错误

原因: 不同的模型需要不同的 tool call parser。

解决: 确认使用了 --tool-call-parser qwen3_coder,且模型确实支持 tool calling。

Q4: API 返回 503 Service Unavailable

原因: 模型尚未完全加载完成,或者正在处理前一个请求。

解决: 等待模型加载完成后再请求,通常需要 1-3 分钟。


九、总结

通过 1Panel 的可视化界面,我们可以轻松地部署 vLLM 推理服务并加载 Qwen3.6-27B 模型。整个过程只需以下几个步骤:

  1. ✅ 软硬件环境准备

  2. ✅ 将模型文件放置到本地目录

  3. ✅ 通过 1Panel UI 创建 vLLM 服务

  4. ✅ 填写启动命令和参数

  5. ✅ 启动验证并接入应用

核心参数 --quantization fp8--tensor-parallel-size 4--enable-prefix-caching--enable-auto-tool-choice 等为 Qwen3.6-27B 在一体机上的最佳实践配置,确保了推理效率、上下文长度和工具调用能力的完美平衡。

从晶体管到 GPU,一文读懂AI算力的基础 2026-06-16
🦞 OpenClaw 2026.6.8 更新 2026-06-17

评论区