https://huggingface.co/havenoammo/Qwen3.6-27B-MTP-UD-GGUF
https://www.reddit.com/r/LocalLLaMA/comments/1t5ageq/qwen3627b_with_mtp_grafted_on_unsloth_ud_xl_25x/
Ini adalah versi kuantisasi UD XL dari Qwen3-27B yang disediakan oleh Unsloth, dengan kepala draft MTP format Q8_0 yang ditanamkan. Model dasar mempertahankan kuantisasi bit rendah yang sama seperti sebelumnya, dan hanya 3 lapisan MTP yang dipertahankan dalam Q8 untuk menjaga akurasi.
Saya membagikan file GGUF yang ditanamkan (basis UD XL + Q8 MTP), sumber lapisan MTP asli yang diekstrak (MTP_Q8_0.gguf), dan skrip transplantasi yang dimodifikasi dengan merujuk ke gist ini (convert.py) untuk mereka yang ingin menerapkan tugas yang sama ke model lain. Panduan lengkap untuk membangun llama.cpp kustom juga disertakan.
Qwen3 dilatih dengan MTP 3-tahap, memprediksi 4 token sekaligus pada setiap langkah maju. Karena cabang utama llama.cpp saat ini belum mendukung MTP, saya mengambil dukungan dekoding spekulatif dari PR #22673 yang terbuka, menggabungkannya ke cabang master, dan kemudian membangun llama-server dengan sumber tersebut. Gunakan opsi berikut saat menjalankan:
--spec-type mtp --spec-draft-n-max 3
Hasil: Menunjukkan peningkatan throughput token sekitar 2,5x dibandingkan dengan GGUF UD XL yang sama tanpa MTP, dan mencatat tingkat penerimaan yang stabil dengan sebagian besar token draft diterima. Ini berarti kepala MTP tidak hanya mengkonsumsi sumber daya komputasi tetapi benar-benar berfungsi dengan berguna. Selain itu, lapisan Q8 MTP menempati proporsi yang sangat kecil dari model secara keseluruhan, sehingga overhead VRAM hampir tidak ada.
MTP adalah salah satu faktor peningkatan efisiensi terbesar yang dapat diperoleh dari dekoding spekulatif, tetapi saat ini praktis tidak didukung kecuali untuk distribusi Qwen3 yang didukung secara resmi di SGLang dan vLLM. Melalui pekerjaan ini, MTP sekarang dapat digunakan di GGUF dan llama.cpp, dan dapat dijalankan di lingkungan lokal dengan alat yang biasanya digunakan. Diharapkan akan segera tersedia langsung dari kotak ketika PR #22673 digabungkan. Sampai saat itu, proses penggabungan sederhana (hanya 3 perintah git).
Jika Anda memiliki pertanyaan atau membutuhkan bantuan untuk menjalankan, saya dengan senang hati akan menjawab kapan saja. Jika Anda telah mencobanya sendiri, beri tahu saya kecepatan apa yang Anda dapatkan!
Panduan lengkap langkah demi langkah tersedia secara detail di repositori HuggingFace, tetapi versi singkatnya adalah sebagai berikut:
bash
# 1. Membangun llama.cpp dengan dukungan MTP
git clone https://github.com/ggml-org/llama.cpp.git
cd llama.cpp
git fetch origin
git fetch origin pull/22673/head:pr-22673
git checkout master
git reset --hard origin/master
git merge --no-ff pr-22673 -m "Merge PR #22673: llama + spec: MTP Support"
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release --target llama-server
# 2. Unduh file GGUF dari HuggingFace
# https://huggingface.co/havenoammo/Qwen3.6-27B-MTP-UD-GGUF
# 3. Jalankan dengan opsi MTP
./build/bin/llama-server -m your-model.gguf --spec-type mtp --spec-draft-n-max 3
Sistem saya adalah sistem RTX 3090 24G sehingga saya membuat beberapa perubahan.
ExecStart=/usr/local/bin/llama-server \
-m /home/models/havenoammo/Qwen3.6-27B-MTP-UD-GGUF/Qwen3.6-27B-MTP-UD-Q4_K_XL.gguf \
--alias Qwen3.6-27B \
--host 0.0.0.0 \
--port 8000 \
--reasoning off \
--temp 0.7 \
--top-p 0.80 \
--top-k 20 \
--min-p 0.0 \
--presence-penalty 1.5 \
--repeat-penalty 1.0 \
--kv-unified \
--cache-type-k q4_0 \
--cache-type-v q4_0 \
--flash-attn on \
--fit on \
--ctx-size 163840 \
-n 32768 \
--api-key sk........ \
-ngl 99 \
--parallel 1 \
--mlock \
--threads-http 8 \
--spec-type mtp \
--spec-draft-n-max 3
Untuk referensi, Anda harus menggunakan v=q8_0 agar tidak ada degradasi kualitas. Dengan v=q4_0, ada keuntungan kecepatan tetapi mungkin ada degradasi kualitas, sehingga tidak cocok untuk pengkodean.
Tambahan - Saya mengubahnya ke q4_0 dan semuanya tampak baik-baik saja. Coba gunakan secara praktis dulu dan kemudian sesuaikan.
Tambahan 2 - Karena kecepatan prefill dan pembuatan token meningkat, coding terasa lebih menyenangkan. ^^