**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.