从魔搭社区拉取 GPTQ 量化模型的核心思路是:先使用 modelscope 工具把模型下载到本地,然后让 vLLM 从本地路径加载。这样做比直接设置环境变量更稳妥,也方便你确认模型文件确实完整。
📋 第 1 步:确认硬件与环境
先确认你的机器满足运行条件。
硬件要求 :需要 NVIDIA GPU。GPTQ W4A16 量化后的 Qwen3-8B 权重约 6.07GB ,推理时加上 KV Cache,8GB 显存是起步线。
检查命令(在终端逐条执行):
bash
cat /etc/os-release
nvidia-smi
nvidia-smi 能正常输出显卡信息即可继续。
📥 第 2 步:下载模型到本地
2.1 安装 modelscope 工具
bash
pip install modelscope
2.2 下载 GPTQ 量化模型
目前魔搭社区上可直接使用的 Qwen3-8B GPTQ 量化仓库地址是 hiruyun/gptq-Qwen3-8B。执行下载:
bash
modelscope download --model Qwen/Qwen3-8B-AWQ --local_dir ./Qwen3-8B-AWQ
下载完成后,当前目录下会生成 Qwen3-8B-AWQ 文件夹,
🐍 第 3 步:准备 Python 环境并安装 vLLM
如果你之前已经创建过 vLLM 环境,可以跳过这一步。如果是从零开始:
bash
# 安装 uv
curl -LsSf https://astral.sh/uv/install.sh | sh
source ~/.bashrc
# 创建虚拟环境
uv venv qwen3-env --python 3.12
source qwen3-env/bin/activate
注意:安装 vLLM,默认会拉取最新版本,如果cuda版本不支持的话,启动会报错
bash
uv pip install vllm --torch-backend=auto
如果vllm不支持cuda版本,也可以指定版本,笔者是这样做的:
bash
uv pip install vllm==0.22.0 \
--torch-backend=cu129 \
--extra-index-url https://wheels.vllm.ai/0.22.0/cu129/ \
--index-strategy unsafe-best-match
验证安装:
bash
python -c "import vllm; print(vllm.__version__)"
🚀 第 4 步:从本地路径启动 vLLM 服务
这是关键一步------把模型路径指向刚才下载的本地文件夹,vLLM 就不会再去联网拉取了。
bash
vllm serve ./Qwen3-8B-AWQ \
--served-model-name qwen3-8b-awq \
--host 0.0.0.0 \
--port 8000 \
--max-model-len 16384 \
--gpu-memory-utilization 0.85
参数说明:
./Qwen3-8B-GPTQ:本地模型路径,根据你实际下载位置调整。--max-model-len 16384:最大上下文长度。如果启动时报显存不足,把它降到8192或4096。--gpu-memory-utilization 0.85:显存使用比例上限。
看到 Uvicorn running on http://0.0.0.0:8000 即表示服务已就绪。
✅ 第 5 步:测试服务
另开一个终端窗口,执行:
bash
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3-8b-awq",
"messages": [{"role": "user", "content": "你好,请用一句话介绍你自己。"}],
"max_tokens": 100
}'
返回 JSON 中包含 "choices" 和回复内容即部署成功。
⚠️ 常见问题
显存不足 :优先调小 --max-model-len,这是最有效的手段。如果还不行,把 --gpu-memory-utilization 降到 0.7。
路径写错 :vllm serve 后面跟的路径,要么是本地文件夹的相对/绝对路径,要么是魔搭或 HuggingFace 的仓库名。如果本地路径存在,vLLM 会优先加载本地文件,不会联网下载。
关于思考模式 :Qwen3 默认会输出思考内容。如果你希望 API 返回中把思考内容单独分离到 reasoning_content 字段,可以在启动命令末尾加上 --reasoning-parser qwen3 。不加也不影响使用。