昨天,Daniel Han(UnslothAI 創始人)又把完整 Qwen3.6+MTP Guide 補全了,包括需要哪個 PR 分支、怎么編譯、不同模式的參數、官方 benchmarks
我感覺這是本地部署+Claude Code一個極佳選擇,雖然之前介紹的已經很詳細了,忍不住把整個流程串起來再分享一下
? Qwen3.6 27B 現在能跑到 140 tokens/s,35B-A3B 能跑到 220 tokens/s,相比原始 GGUF 直接 >1.4x 加速、精度不變MTP 是什么、為什么能更快
簡單一句話:MTP(Multi Token Prediction)= 投機解碼的「自帶 draft model」版本
普通投機解碼要你額外維護一個小模型當 draft,挺麻煩。Qwen3.6 在訓練時就內置了 MTP 頭:
模型一次性預測「未來幾個 token」
主模型并行把這幾個 token 驗證一遍
接受率高的部分直接吐出去,少跑幾次前向
實際跑下來:
dense 模型 (27B):draft tokens = 2 時平均 1.4x 加速
MoE 模型 (35B-A3B):平均 1.15–1.2x 加速
下圖是 Unsloth 官方給出的 MTP 加速曲線和吞吐對比:
![]()
Qwen3.6 MTP 加速曲線
Qwen3.6 MTP 吞吐對比
為什么 --spec-draft-n-max 卡在 2?官方測了一下:draft tokens 從 2 漲到 4 時,接受率從 **83% 直接掉到 50%**,前向開銷反而把收益吃光![]()
所以別貪心
編譯:必須用特定的 llama.cpp PR 分支
這是最容易踩的坑 —— 不能直接用 master 的 llama.cpp
MTP 的支持還在合并中,要用 Aman 的 PR 分支(ggml-org/llama.cpp#22673)
完整編譯命令(Linux / WSL,要 CUDA 改 -DGGML_CUDA=ON):
apt-get install pciutils build-essential cmake curl libcurl4-openssl-dev -y
git clone -b mtp-clean https://github.com/am17an/llama.cpp.git
cmake llama.cpp -B llama.cpp/build -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON
cmake --build llama.cpp/build --config Release -j --clean-first --target llama-cli llama-server
cp llama.cpp/build/bin/llama-* llama.cpp
Mac / Metal 設備改成 -DGGML_CUDA=OFF 即可,Metal 默認就開
?? CUDA 13.2 千萬別用,NVIDIA 自己確認有 bug,會輸出亂碼
跑起來:27B 與 35B-A3B 的實操命令
27B MTP(thinking 模式,通用任務):
export LLAMA_CACHE="unsloth/Qwen3.6-27B-MTP-GGUF"
./llama.cpp/llama-cli \
-hf unsloth/Qwen3.6-27B-GGUF:UD-Q4_K_XL \
--temp 1.0 --top-p 0.95 --top-k 20 \
--presence-penalty 1.5 --min-p 0.00 \
--spec-type mtp --spec-draft-n-max 2
35B-A3B MTP(non-thinking 模式起 server,方便對接 OpenAI 兼容客戶端):
export LLAMA_CACHE="unsloth/Qwen3.6-35B-A3B-MTP-GGUF"
./llama.cpp/llama-server \
-hf unsloth/Qwen3.6-35B-A3B-MTP-GGUF:UD-Q4_K_XL \
--temp 0.7 --top-p 0.8 --top-k 20 \
--presence-penalty 1.5 --min-p 0.00 \
--spec-type mtp --spec-draft-n-max 2 \
--chat-template-kwargs '{"enable_thinking":false}'
一些容易忽略的參數:
thinking 模式 用
temperature=1.0, top_p=0.95, presence_penalty=1.5non-thinking 模式 用
temperature=0.7, top_p=0.8, presence_penalty=1.5精確編程任務統一壓到
temperature=0.6/1.0,presence_penalty=0.0想關掉 thinking:
--chat-template-kwargs '{"enable_thinking":false}'輸出亂碼大概率是上下文長度太小,或者加上
--cache-type-k bf16 --cache-type-v bf16試試
按總內存(VRAM + 系統 RAM 或 unified memory)算:
模型
2-bit
4-bit (UD-Q4_K_XL)
8-bit
BF16
Qwen3.6-27B
15 GB
18 GB
30 GB
55 GB
Qwen3.6-35B-A3B
17 GB
23 GB
38 GB
70 GB
不夠的話 llama.cpp 還能 SSD/HDD offload,只是會慢
?? 目前 Ollama 跑不了 Qwen3.6 GGUF(mmproj 視覺文件是分開的),用 llama.cpp 路線就對了
One More Thing:用本地 Qwen3.6 驅動 Claude Code
跑起來不接 Agent 就有點虧。Unsloth 在 docs/basics/claude-code 里把整條流水線寫得很完整,我把關鍵步驟拎出來
第一步:裝 Claude Code
curl -fsSL https://claude.ai/install.sh | bash
cd ~/projects/my-project
claude
第二步:起本地 llama-server(接前面 35B-A3B 的命令)
./llama.cpp/llama-server \
--model unsloth/Qwen3.6-35B-A3B-GGUF/Qwen3.6-35B-A3B-UD-Q4_K_XL.gguf \
--alias "unsloth/Qwen3.6-35B-A3B" \
--temp 0.6 --top-p 0.95 --top-k 20 --min-p 0.00 \
--ctx-size 16384 --port 8001
第三步:踩坑預警 —— 一個讓推理慢 90% 的隱藏開關
這是文檔里我覺得全網最值得抄的一條:
? Claude Code 最近開始往請求里加一個 Claude Code Attribution Header,這玩意兒會讓 KV Cache 失效,本地模型推理直接慢 90%
而且更坑的是 export CLAUDE_CODE_ATTRIBUTION_HEADER=0不管用
必須改 ~/.claude/settings.json,在 env 段里加:
{
"env": {
"CLAUDE_CODE_ATTRIBUTION_HEADER": "0"
}
}
第四步:把 Claude Code 指向本地端口
export ANTHROPIC_BASE_URL="http://127.0.0.1:8001"
export ANTHROPIC_AUTH_TOKEN="sk-no-key-required"
export ANTHROPIC_MODEL="unsloth/Qwen3.6-35B-A3B"
再 claude 就能在終端用本地 Qwen3.6 跑 Agent 了。Unsloth Studio 那條路(帶 web UI + 自帶 API key + 自愈式 tool calling)也寫得很清楚,喜歡圖形界面的可以走那條:
總結
挑重點:
MTP 不是新模型,是一種 draft-free 的投機解碼 ,靠 Qwen3.6 訓練時自帶的 MTP 頭實現
--spec-draft-n-max 2是甜點位,多了反而慢必須用 Aman 的 PR 分支,不能用 master
CUDA 13.2 別碰
接 Claude Code 一定記得改
~/.claude/settings.json關掉 Attribution Header,不然你本地速度優化全白做
適合誰:
24GB 顯存的本地玩家 :27B MTP + Q4 量化是新甜點
小作坊和私有化部署 :拿 35B-A3B 跑 server 接 Claude Code,足夠日常代碼 Agent
不接受 Ollama 短板的用戶 :直接 llama.cpp + MTP
.6
制作不易,如果這篇文章覺得對你有用,可否點個關注。給我個三連擊:點贊、轉發和在看。若可以再給我加個,謝謝你看我的文章,我們下篇再見!
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.