# Inference engine (vLLM, engine suy luận)

> VI: https://5ac.vn/wiki/inference-engine/ · EN: https://5ac.vn/en/wiki/inference-engine/ · lang: vi · spec_as_of 2026-10-19 (spec no formal spec) · cluster C22

Lớp phần mềm trực tiếp chạy mô hình đã huấn luyện: gom request, quản lý cache KV, gộp kernel, lượng tử hóa. vLLM, SGLang, TensorRT-LLM, llama.cpp — tốc độ thật bạn trả tiền.

---
## Định nghĩa

Inference engine (engine suy luận) là lớp phần mềm trực tiếp chạy một mô hình đã huấn luyện: nạp trọng số, gom request thành lô, quản lý bộ nhớ cho cache KV khi hội thoại lớn dần, và biến card đồ họa thành tốc độ sinh token trên phần cứng cụ thể. Nó không phải mô hình, cũng không phải toàn bộ bài toán triển khai LLM cục bộ — engine là một mắt xích trong bài toán đó. Entry này phủ các runtime phục vụ: vLLM, SGLang, TensorRT-LLM, llama.cpp và họ ExLlama.

## Cơ chế

Ba đòn bẩy tạo chênh lệch giữa các engine. Quản lý bộ nhớ: PagedAttention của vLLM (arXiv:2309.06180) giữ cache KV theo trang thay vì một khối liền, nhờ đó chạy được gom request liên tục (continuous batching), tách prefill theo phần (chunked prefill) và cache phần ngữ cảnh dùng chung (prefix caching). Gộp kernel tính toán (kernel fusion): nhập nhiều bước tính nhỏ thành một kernel để dữ liệu ở lại bộ nhớ nhanh trên chip thay vì về kho sau từng bước — FlashAttention v1 đo nhanh hơn 7,6 lần so với cách triển khai PyTorch chuẩn trên A100, và CUDA Graphs cho thấy khoảng 70% thời gian của một kernel ngắn có thể là chi phí đi lại chứ không phải tính toán (NVIDIA, 2019). Lượng tử hóa: FP8, GPTQ, AWQ, GGUF cho trọng số và NVFP4 cho cache KV — TensorRT-LLM trên H100+ ghi gấp đôi hiệu năng và giảm nửa bộ nhớ so với bản 16-bit, đánh đổi bằng khả năng chuyển đổi phần cứng.

## Bối cảnh ứng dụng

Chọn engine là chọn khớp tình huống: llama.cpp cho laptop và edge, MLX cho máy Mac, ExLlama cho một tới vài card NVIDIA, vLLM là mặc định phục vụ mô hình mã nguồn mở trong production, SGLang mạnh về ngữ cảnh dài và MoE; Ollama tiện thử nghiệm nhưng bài 5ac khuyến nghị tránh cho serving production. Kíp máy thật 2026: DeepSeek V4 Flash chạy trên hai DGX Spark với image vLLM riêng build cho chip GB10 — ngữ cảnh 1M token, 6 request song song, cache KV NVFP4 — tốc độ kỳ vọng 62–83 tok/s cho một phiên chat ≤128K, tổng xấp xỉ 160–190 tok/s cho sáu phiên (con số README, tác giả ghi rõ chưa tự đo). Quy tắc vàng của cùng các bài đó: đừng xếp hạng engine bằng một con số tokens/s — benchmark đúng phải ghi model, lượng tử hóa, phiên bản engine, phần cứng, phân bố input/output, độ concurrent, TTFT, TPOT, p50/p95/p99, bộ nhớ và chi phí mỗi 1M token.

## Nguồn đã truy xuất

- [Local AI 2026: Từ chiếc RTX 3090 đến hạ tầng on-prem cho doanh nghiệp](/blog/local-ai-2026-from-rtx3090-to-enterprise/) — bảng chọn engine theo tình huống, quy tắc benchmark — truy cập 19/10/2026
- [GPU kernel fusion: vì sao cùng model mà tốc độ khác nhau](/blog/vi-gpu-kernel-fusion/) — FlashAttention 7,6 lần, CUDA Graphs 70% — truy cập 19/10/2026
- [Deploy DeepSeek V4 Flash trên 2× DGX Spark — recipe](/blog/deploy-deepseek-v4-flash-2x-dgx-spark/) — cấu hình vLLM trên GB10, tốc độ kỳ vọng — truy cập 19/10/2026
- <https://arxiv.org/abs/2309.06180> — paper PagedAttention, nền của vLLM (v1) — xác minh qua arXiv API ngày 19/10/2026

## Liên quan

- [Local LLM deployment (triển khai LLM cục bộ)](/wiki/local-llm-deployment/)
- [Benchmark suite](/wiki/benchmark-suite/)
