MTP Multi-Token Prediction - Gemma 4 เร่งรัน 2-3x

"MTP" คำใหม่ local ai จำแล้วเอาไปใช้ model จะตอบไวขึ้น 2x-3x

MTP = Multi-Token Prediction

แปลง่าย ๆ คือ "การเดาโทเค็นหลายตัวพร้อมกัน" มันคือฟีเจอร์ใหม่ใน Gemma 4 ของ Google ที่ทำให้ Local LLM ที่เรารันเองบน GPU บ้าน ๆ เร็วขึ้นแบบก้าวกระโดด

vLLM (เครื่องมือรัน LLM ที่เร็วที่สุด) ยังประกาศรองรับ Day-0 ทันทีที่โมเดลออกเลย

สรุปสั้น ๆ

MTP คือ "อัปเกรด" ที่เปลี่ยนจาก "เดา 1 คำต่อครั้ง" เป็น "เดา 2-4 คำพร้อมกัน" โดยไม่เสียคุณภาพข้อความเลยสักนิด

เหมือนเปลี่ยนจากเพื่อนที่พูดช้า ๆ เป็นคำเดียว เป็นเพื่อนที่พูดเป็นประโยคยาว ๆ เลยทันที!

มันทำงานยังไง? ใช้ RAM เยอะมั้ย? เร็วขึ้น X เท่า?

ทำงานยังไง (แบบเข้าใจง่ายสุด ๆ)

วิธีเก่า (ปกติ): โมเดลต้อง "คิด → เดา 1 โทเค็น → คิด → เดา 1 โทเค็น" ไปเรื่อย ๆ (ช้าเหมือนเดินทีละก้าว)

วิธี MTP (ใหม่): มี "ผู้ช่วยพิเศษ" ชื่อ MTP Drafter (ตัวเบา ๆ) ที่เดาล่วงหน้า 2-4 โทเค็นพร้อมกัน โมเดลหลักแค่ตรวจสอบก้อนใหญ่ ๆ ครั้งเดียว ถ้าผ่านก็รับทั้งก้อนเลย

เทคนิคพิเศษของ Gemma 4

  • ใช้ Centroids Masking ทำให้การคำนวณเร็วขึ้น 45 เท่า

  • Drafter กับโมเดลหลักแชร์ KV Cache กัน (ไม่กินหน่วยความจำซ้ำ)

  • รับประกันคุณภาพ 100% เหมือนเดิม (เพราะทุกคำที่ drafter เดาจะถูกตรวจสอบก่อน)

ใช้ RAM เยอะมั้ย?

ไม่เยอะครับ!

  • Drafter เป็นตัวเบามาก (lightweight assistant)

  • แชร์ KV Cache กับโมเดลหลัก → Overhead เพิ่มแค่เล็กน้อย (ประมาณ 5-10% หรือน้อยกว่า)

  • หลายคนรายงานว่า RAM โดยรวมแทบไม่ต่างจากรันปกติ แต่ได้ความเร็วเพิ่มมหาศาล

เร็วขึ้น X เท่า?

  • Google ประกาศ สูงสุด 3 เท่า (up to 3x)

  • Sequential (ใช้คนเดียว) → เร็วขึ้น 2.3x

  • Concurrent (หลายคนใช้พร้อมกัน) → เร็วขึ้น 1.9x

  • ตัวอย่างจริง: จาก 104 tok/s → พุ่งไป 175 tok/s

ลองได้ยังไงบ้าง? (ทำตามง่าย ๆ)

วิธีที่ง่ายและเร็วที่สุด (แนะนำ): ใช้ vLLM + Docker (รองรับ Day-0 ทันที)

ตัวอย่าง recipe สำหรับ Gemma 4 26B-A4B: https://recipes.vllm.ai/Google/gemma-4-26B-A4B-it

docker run --rm -it \
  --gpus all \
  -p 8000:8000 \
  vllm/vllm-openai:latest \
  --model google/gemma-4-26B-A4B-it \
  --speculative-config '{"method": "mtp", "num_speculative_tokens": 4}'

เปลี่ยน --model เป็นตัวที่ต้องการ (มี E2B, E4B, 26B-A4B, 31B) num_speculative_tokens = 4 คือเดา 4 โทเค็น (ยิ่งสูงยิ่งเร็ว แต่ overhead นิดหน่อย)

วิธีอื่น ๆ ที่ลองได้

  • Ollama → รออัปเดตหรือใช้ backend vLLM

  • Hugging Face Transformers + vLLM backend

  • LM Studio หรือ SillyTavern (กำลังอัปเดต support)

เคล็ดลับ

เริ่มด้วย Gemma 4 รุ่นเล็กอย่าง E4B ก่อน (กิน RAM น้อย เหมาะเครื่องบ้าน) แล้วค่อยขยับไปรุ่นใหญ่เมื่อชิน