LOCAL LLM FIELD GUIDE
Quantization: ลดอะไร และควรเลือกอย่างไร
Weight quantization ลดพื้นที่ของโมเดลที่อยู่คงที่ ส่วน KV cache quantization ลดพื้นที่ที่โตตาม context และจำนวน request. เลือก format จาก runtime ที่โหลดได้จริงก่อนเลือกจำนวนบิต.

สองก้อนที่ต้องแยก
weights อยู่คงที่. KV cache โตตามงาน
- Weights
- ลด model footprint และ bytes read ต่อ token
- KV cache
- ลด memory ต่อ context × sequence


ใช้กับงานจริง
ใช้ quant เพื่อแก้คอขวดที่ถูกจุด
เริ่มจาก runtime ที่จะรันจริง แล้วจึงเลือก artifact และจำนวนบิต. การลด weights กับการลด KV cache แก้ปัญหาคนละก้อน จึงต้องดู memory breakdown แยกกัน.
ถ้า model ยังไม่พอดี ให้ดู weight quant ก่อน. ถ้า model พอดีแล้วแต่ context หรือจำนวน request ไม่พอ ให้ดู KV cache, working context และ batch.
| อาการ | สิ่งที่ควรปรับ | ตรวจให้ชัด |
|---|---|---|
| weights ไม่พอดี memory | เลือก weight quant ที่ runtime โหลดได้ | checkpoint, kernel และคุณภาพงานจริง |
| context ยาวแล้ว KV เต็ม | เลือก KV dtype ที่ runtime รองรับ | KV ต่อ sequence และ long-context prompt |
| ใช้ Mac | เลือก MLX หรือ GGUF/Metal path | artifact ที่แปลงมาสำหรับ runtime นั้น |
เช็กก่อนดาวน์โหลด model
- บันทึก
runtimeและรุ่นของ runtime ที่จะใช้ - แยก
weight quantออกจากKV cache dtype - ตั้ง
working contextจาก request ปกติ ไม่ใช่เพดานสูงสุด - ทดสอบ prompt สำคัญก่อนลด bit เพิ่ม
runtime = vllm
weight_format = AWQ
kv_cache_dtype = fp8_e4m3
working_context = 32768Weights กับ KV cache เป็นคนละงบ
Weights อยู่ใน memory ตลอดช่วงรัน จึงเป็นตัวตัดสินว่าโมเดลเริ่มต้นพอดีหรือไม่. KV cache โตตาม tokens ที่ใช้งานและ sequence พร้อมกัน. งาน context ยาวอาจติด KV cache แม้ weights เล็กแล้ว.
เลือก artifact ให้ตรง runtime
- vLLM / SGLangใช้ checkpoint และ kernel ที่ runtime รองรับ
- llama.cpp / Ollamaใช้ไฟล์ GGUF
- MLXใช้ weights ที่แปลงสำหรับ MLX
อย่าเลือกจากชื่อ quant อย่างเดียว: Q8, AWQ หรือ GPTQ ที่ชื่อเหมือนกัน อาจโหลดข้าม runtime ไม่ได้.
ความเสี่ยงต่อคุณภาพ
4-bit มักช่วยให้โมเดลพอดีกับเครื่อง แต่ต้องตรวจ task สำคัญ เช่น reasoning, code, tool calling และภาษาไทยด้วย prompt จริง. KV ที่ลด precision อาจกระทบงาน context ยาวต่างจากการลด weights.
ใช้ calculator อย่างถูกลำดับ
เลือก hardware และ framework ก่อน ตรวจ weights, KV cache และ overhead แยกกัน จากนั้นลด quantization เฉพาะก้อนที่เป็นคอขวด และ benchmark request จริงก่อน production.
แหล่งอ้างอิง
ลองกับ configuration ของคุณ
นำ model, quantization, context, framework และ hardware ที่คิดไว้ไปลองใน calculator จากนั้นยืนยันด้วย benchmark ที่ใกล้ production.
เปิดเครื่องคำนวณ