lmdeploy: 一個用於壓縮與服務 LLMs 和 VLMs 的高吞吐量工具包,具備雙推理引擎

lmdeploy: 一個用於壓縮與服務 LLMs 和 VLMs 的高吞吐量工具包,具備雙推理引擎

它解決了什麼問題

LMDeploy 是一個旨在簡化並優化壓縮、部署與服務大型語言模型 (LLMs) 和視覺語言模型 (VLMs) 過程的工具包。它透過提供高吞吐量服務與高效的量化技術,解決了 LLM 推理中高計算成本與延遲的挑戰。

運作原理

該專案提供兩種不同的推理引擎:針對極致性能進行優化的 TurboMind,以及使用 Python 開發、基於 PyTorch 的引擎,旨在降低開發者的門檻並實現快速實驗。它利用了諸如持續批處理 (continuous batching)、分塊 KV cache、張量並行 (tensor parallelism) 以及高性能 CUDA kernels 等技術來提高請求吞吐量。

目標對象

它適用於需要在生產環境中部署 LLMs 和 VLMs 的開發者與 AI 工程師,以及想要嘗試新模型架構與功能的研究人員。

重點特色

  • 高吞吐量:提供比 vLLM 高出達 1.8 倍的請求吞吐量。
  • 廣泛的模型支持:支持大量 LLMs (例如 Llama, Qwen, DeepSeek, Mistral, Phi) 與 VLMs (例如 InternVL, LLaVA, Qwen-VL)。
  • 高效量化:支持僅權重 (weight-only) 與 KV cache 量化 (包括 AWQ),其 4-bit 推理性能比 FP16 快上達 2.4 倍。
  • 分佈式服務器:便於在多台機器與多張顯卡上輕鬆部署多模型服務。
  • 硬體兼容性:支持 NVIDIA GPUs (包括 RTX 50 series) 與 Huawei Ascend 平台。

Sources