@demo 直接用我的参数,vllm用最新版本,AWQ-INT4量化模型,kv-cache开fp8,MTP也开启,256K上下文毫无问题。60tps是单线程的速度。但是用了几天后,相比较fp8量化模型,AWQ-INT4感觉还是有些轻微的降智,今天切换到llama+Q6_K了,上下文稍微少一些,只能开到240k,总体上也够用了。单线程速度50tps,coding效果还没测试,理论上应该比INT4好一点
aspro
-
Claude Code方案:4080s 32G + vLLM + Qwen27b 256K MTP部署 60tokens/s -
Claude Code方案:4080s 32G + vLLM + Qwen27b 256K MTP部署 60tokens/s@566656661 TurboQuant 4-bit KV Cache会不会影响模型的智力呢?尝试配置过,启动报错就放弃了
-
4080s 32g,ubuntu虚拟机 40g内存跑qwen3.6 27b int4参考我的贴子,4080s部署qwen3.6 27b,256k上下文,60tokens/s
-
Claude Code方案:4080s 32G + vLLM + Qwen27b 256K MTP部署 60tokens/s4080s 32G推出以来,一直广受关注。全新显卡的价格也从8500一路上涨到目前的1.1w,也多次被老特在视频中推荐。相比较两万多的5090,4080s的价格非常亲民,32G显存也刚好处在小模型的甜点。
虽然关注度很高,但是论坛里一直没有相关的帖子。经过一段时间的折腾,目前总算跑到了一个性能,速度都还满意的配置。下面简单介绍一下我的配置,以及为什么需要这样配,给网友们提供一些思路和避坑指南。
再说说我的工作环境与需求:题主主要用AI来做本地知识库的整理以及辅助完成工作中的编程任务,主要工具是claude code。众所周知,claude对上下文长度要求很高,用deepseek v4 flash,几轮对话之后,上下文长度经常在400k以上,因此,上下文长度对于题主来说是刚需,128k以下长度可能无法坚持一轮对话。生成速度方面,ollama默认配置下,27b模型在4080s上速度大概33tokens/s,虽然还算可观,但是对于长编程而言还是有点慢了,50tokens/s以上属于可以接受的范畴。部署工具方面,ollama,lamma.cpp,vllm等工具对比下来,在长上下文场景下,无疑vllm是最优秀的,稳定性也是这几个工具中最好的,通过细致的参数,可以最大化的利用显卡性能。
因此,考虑到隐私性需求,综合考虑上下文长度,速度等方面因素,最终选择了量化版本的Qwen27b模型。经过几轮调优,单用户在4080s下最终达到了60tokens/s的峰值速度,256k上下文对于小型项目而言基本足够。
最终模型选取了cyankiwi/Qwen3.6-27B-AWQ-INT4,这是一个很热门的Q4量化的版本,AWQ格式对于vllm来说性能也更优。搭建流程如下:
-
vLLM安装
uv venv source .venv/bin/activate uv pip install -U vllm --torch-backend=auto -
huggingface下载模型
source .venv/bin/activate hf download cyankiwi/Qwen3.6-27B-AWQ-INT4 --local-dir ./qwen3.6-27b-awq-agent -
启动模型
#!/bin/bash # ============================================================ # vLLM 启动脚本 — Qwen3.6 27B AWQ Int4 【满血均衡版】 # 核心策略: 显式 AWQ 量化 + 256K上下文 + 极速 CUDA 计算图 + MTP加速 # ============================================================ # ---- 底层防碎片化,为 CUDA Graphs 预留纯净空间 ---- export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True exec /your/path/vllm-venv/.venv/bin/python3 -m vllm.entrypoints.openai.api_server \ --model /your/path/qwen3.6-27b-awq-int4 \ --served-model-name qwen3-27b \ --host 0.0.0.0 \ --port 11435 \ \ `# ---- 1. 空间折叠与防 OOM 护城河 ----` \ --kv-cache-dtype fp8 \ --gpu-memory-utilization 0.97 \ --max-model-len 262144 \ --max-num-seqs 1 \ \ `# ---- 2. 前端防超时调度 (解决 Timeout 痛点) ----` \ --enable-chunked-prefill \ --max-num-batched-tokens 3072 \ --scheduling-policy priority \ \ `# ---- 3. Agent 解析器与缓存外挂 ----` \ --language-model-only \ --enable-auto-tool-choice \ --reasoning-parser qwen3 \ --tool-call-parser qwen3_coder \ --enable-prefix-caching \ \ `# ---- 4. 引擎加速 (不再受限于 Eager 模式) ----` \ --max-cudagraph-capture-size 128 \ --no-enable-log-requests \ --speculative-config '{"method":"qwen3_next_mtp","num_speculative_tokens":2}' -
添加守护进程
创建守护进程脚本:sudo nano /etc/systemd/system/vllm.service
粘贴下面的内容:[Unit] Description=vLLM Qwen3.6 27B API Server (FP8 256K Version) After=network.target [Service] User=youruser Group=yourgroup WorkingDirectory=/your/path Restart=always RestartSec=10 # 使用 -lc 参数(Login Command),让系统先加载你的终端环境变量,再去执行脚本! ExecStart=/bin/bash -lc '/your/path/vllm-start.sh'创建守护进程实现开机自启:
sudo systemctl daemon-reload sudo systemctl enable vllm sudo systemctl start vllm启动后查看vllm日志:
journalctl -u vllm.service -f
-