1. 17:28 14/10/2026
**Giới thiệu**
Khi triển khai các mô hình ngôn ngữ lớn (LLM) trên phần cứng tiêu dùng (RTX 3080/3090, 4080/4090), dung lượng VRAM thường là rào cản lớn. Quantization (lượng tử hóa) giảm độ chính xác trọng số từ FP16/BF16 xuống INT4/INT8 giúp mô hình vừa vặn VRAM mà vẫn giữ hiệu năng chấp nhận được. Kết hợp với vLLM – một inference engine tối ưu cho LLM – ta có thể đạt throughput cao, latency thấp mà không cần cluster GPU đắt tiền.
**Các phương pháp quantization phổ biến**
- **GPTQ**: pós‑training quantization 4‑bit dựa trên Hessian, giữ độ chính xác tốt trên nhiều benchmark.
- **AWQ (Activation‑aware Weight Quantization)**: quan tâm đến phân phối activation, thường nhanh hơn GPTQ khi quantize on‑the‑fly.
- **bitsandbytes (NF4/INT8)**: tích hợp sẵn trong Hugging Face Transformers, phù hợp cho fine‑tuning LoRA và inference nhanh.
**Quy trình thực tế với vLLM**
1. **Chuẩn bị mô hình quantized**
```bash
# Ví dụ quantize LLaMA‑2‑7B sang INT4 GPTQ
python -m auto_gptq --model_name_or_path meta-llama/Llama-2-7b-hf \
--quantize_config bits=4 group_size=128 desc_act=True \
--output_dir ./Llama-2-7b-GPTQ-4bit
```
2. **Cài đặt vLLM**
```bash
pip install vllm
```
3. **Khởi động server**
```bash
python -m vllm.entrypoints.openai.api_server \
--model ./Llama-2-7b-GPTQ-4bit \
--tensor-parallel-size 1 \
--gpu-memory-utilization 0.9 \
--max-model-len 4096
```
4. **Gọi API** (curl hoặc client OpenAI SDK) để đo latency, throughput.
**Mẹo tối ưu thêm**
- **Batch size động**: vLLM tự động gom request thành batch (continuous batching) – tận dụng bằng cách gửi nhiều request song song.
- **KV‑cache quantization**: bật `--kv-cache-dtype fp8` trên GPU Hopper (H100) hoặc `--kv-cache-dtype int8` trên Ampere để tiết kiệm VRAM thêm.
- **Chunked prefill**: cho phép prefill dài hơn `max-model-len` bằng cách chia nhỏ, hữu ích cho context window lớn.
- **Monitoring**: gắn Prometheus exporter của vLLM (`--enable-metrics`) để theo dõi `request_latency_seconds`, `gpu_memory_usage_bytes`.
**Kết luận**
Kết hợp quantization (GPTQ/AWQ/bitsandbytes) với vLLM cho phép chạy LLM 7‑13B trên một card RTX 3090/4090 với latency < 100 ms/token và throughput > 30 token/s. Đây là giải pháp chi phí thấp cho prototype, demo nội bộ hoặc sản phẩm nhỏ trước khi scale lên cluster GPU chuyên dụng.