InternLM/lmdeploy
LMDeploy is a toolkit for compressing, deploying, and serving LLMs.
What it solves
LMDeploy 是一個旨在簡化並加速 LLM 和 VLM 壓縮、部署與服務化過程的工具包。它透過提供高效能引擎與量化技術來增加吞吐量並減少記憶體使用量,解決了 LLM 推理中高計算成本與延遲的挑戰。
How it works
該專案提供兩種不同的推理引擎:
- TurboMind: 重點在於極致的性能優化,利用了持續性批處理 (continuous batching)、分塊 KV cache、張量並行 (tensor parallelism) 以及高效能 CUDA kernels。
- PyTorch Engine: 一個基於 Python 的引擎,旨在降低開發者的門檻,並允許對新功能進行快速實驗。
它還實施了有效的量化 (weight-only 與 KV cache 量化) 以縮小模型大小並加速推理,並包含一個請求分發服務,用於在多台機器與多個 GPU 部署多模型服務。
Who it’s for
此工具包適用於需要在生產環境中部署 LLM 或 VLM,且對高請求吞吐量與低延遲至關重要的開發者與 AI 工程師,以及希望快速實驗新模型的研究人員。
Highlights
- High Throughput: 在某些場景下,其請求吞吐量比 vLLM 高出達 1.8x。
- Broad Model Support: 支援廣泛的 LLM (例如 Llama 3.1, Qwen, DeepSeek, Mistral) 與 VLM (例如 InternVL, Qwen-VL, LLaVA)。
- Advanced Quantization: 支援 4-bit 推理與 AWQ,性能比 FP16 快上達 2.4x。
- Flexible Deployment: 透過代理伺服器 (proxy server) 支援多模型、多機器、多卡推理服務。
- Hardware Compatibility: 相容於 NVIDIA GPUs 與 Huawei Ascend 平台。